Projet

Général

Profil

Paste
Statistiques
| Branche: | Révision:

ryxeo-glpi-git / inc / mailgate.function.php @ b67d8923

Historique | Voir | Annoter | Télécharger (2,24 ko)

1
<?php
2
/*
3
 * @version $Id: mailgate.function.php 7763 2009-01-06 18:44:50Z moyo $
4
 -------------------------------------------------------------------------
5
 GLPI - Gestionnaire Libre de Parc Informatique
6
 Copyright (C) 2003-2009 by the INDEPNET Development Team.
7

8
 http://indepnet.net/   http://glpi-project.org
9
 -------------------------------------------------------------------------
10

11
 LICENSE
12

13
 This file is part of GLPI.
14

15
 GLPI is free software; you can redistribute it and/or modify
16
 it under the terms of the GNU General Public License as published by
17
 the Free Software Foundation; either version 2 of the License, or
18
 (at your option) any later version.
19

20
 GLPI is distributed in the hope that it will be useful,
21
 but WITHOUT ANY WARRANTY; without even the implied warranty of
22
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
23
 GNU General Public License for more details.
24

25
 You should have received a copy of the GNU General Public License
26
 along with GLPI; if not, write to the Free Software
27
 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
28
 --------------------------------------------------------------------------
29
 */
30

    
31
// ----------------------------------------------------------------------
32
// Original Author of file:
33
// Purpose of file:
34
// ----------------------------------------------------------------------
35

    
36
if (!defined('GLPI_ROOT')){
37
        die("Sorry. You can't access directly to this file");
38
}
39

    
40
/**
41
 * Cron action on mailgate : retrieve mail and create tickets
42
 * @return -1 : done but not finish 1 : done with success
43
 **/
44
function cron_mailgate(){
45
        global $DB,$CFG_GLPI;
46
        
47
        $already_retrieve=0;
48
        $query="SELECT * FROM glpi_mailgate";
49
        if ($result=$DB->query($query)){
50
                if ($DB->numrows($result)>0){
51
                        $mc=new MailCollect();
52
                        while ($data=$DB->fetch_assoc($result)){
53
                                
54
                                logInFile("cron","Collect mails from ".$data["host"]." for  ".getDropdownName("glpi_entities",$data["FK_entities"])."\n");
55
                                $message=$mc->collect($data["host"],$data["login"],$data["password"],$data["FK_entities"]); 
56
                                 logInFile("cron","$message\n");
57

    
58
                                $already_retrieve+=$mc->fetch_emails;
59
                                // Finish mailgate process but mark it to be redone
60
                                if ($already_retrieve >= MAX_MAILS_RETRIEVED){
61
                                        return -1;
62
                                }
63
                        }
64
                }
65
        }
66
        return 1;
67
}
68
?>
Redmine Appliance - Powered by TurnKey Linux