source: trunk/jabberit_messenger/inc/login.php @ 1799

Revision 1799, 6.1 KB checked in by alexandrecorreia, 14 years ago (diff)

Ticket #612 - Adequando as preferências do JMessenger para o padrao Expresso.

  • Property svn:executable set to *
Line 
1<?php
2  /***************************************************************************\
3  *  Expresso - Expresso Messenger                                            *
4  *     - Alexandre Correia / Rodrigo Souza                                                               *
5  *     - JETI - http://jeti-im.org/                                                                              *
6  * ------------------------------------------------------------------------- *
7  *  This program is free software; you can redistribute it and/or modify it  *
8  *  under the terms of the GNU General Public License as published by the    *
9  *  Free Software Foundation; either version 2 of the License, or (at your   *
10  *  option) any later version.                                               *
11  \***************************************************************************/
12
13        define('PHPGW_API_INC','../../phpgwapi/inc');
14        require_once(PHPGW_API_INC . '/class.Template.inc.php');
15
16        if(isset($_SESSION['phpgw_info']['jabberit_messenger']['name_jabberit']))
17    {
18                // Path Server
19                $path = $_SESSION['phpgw_info']['jabberit_messenger']['webserver_url'];
20                $SERVER_EXPRESSO = $_SERVER['HTTP_HOST'] . $path;
21
22                /**
23                 ******  Type Protocol http / https **********************************************************
24                 *      Esta variável é carregada no header.inc.php, onde é possível definir
25                 *      se será com http ou https. Verifique em seu arquivo header.inc.php como está configurada
26                 *      a variável $GLOBALS['phpgw_info']['server']['use_https'].
27                 *      Abaixo segue esquema :
28                 *      Expresso 0 = Sem https
29                 *      Expresso 1 = Com https apenas no login
30                 *      Expresso 2 = Completo
31                 *********************************************************************************************
32                 **/
33
34                $PROTOCOL = trim("http");
35                if( $_SESSION['phpgw_info']['jabberit_messenger']['use_https'] === 2 )
36                        $PROTOCOL = trim("https");
37
38                // Uid user
39                $uid = $_SESSION['phpgw_info']['jabberit_messenger']['user_jabber'];
40               
41                $organization = explode(",", $_SESSION['phpgw_info']['jabberit_messenger']['attributes_org_ldap_jabberit']);
42
43                $organization_user = $_SESSION['phpgw_info']['jabberit_messenger']['account_dn'];
44                $organization_user = substr($organization_user, strpos($organization_user,"ou=") + 3 , strlen($organization_user));
45                $organization_user = substr($organization_user, 0, strpos($organization_user, ","));
46               
47                // FirstName
48                $CnName = explode(" ",$_SESSION['phpgw_info']['jabberit_messenger']['fullname']);
49               
50                if(is_array($organization))
51                {
52                        foreach($organization as $attr)
53                        {
54                                $tmp = explode(";",$attr);
55                                if( strtolower(trim($tmp[0])) == strtolower(trim($organization_user)))
56                                {
57                                        switch(strtolower(trim($tmp[1])))
58                                        {
59                                                case "mail" :
60                                                                $uid = $_SESSION['phpgw_info']['jabberit_messenger']['mail'];
61                                                                $uid = substr($uid,0,strpos($uid,"@"));
62                                                                break;
63       
64                                                case "description" :
65                                                                // SERPRO
66                                                                // parte antes do arroba;
67                                                                // Informe aqui a parte da sessão correspondente;
68                                                                $uid = "description";                                                                           
69                                                                break;
70                                        }
71                                }
72                        }
73                }
74
75                //Enable/Disable VoIP Service -> Voip Server Config
76                $voip_enabled = false;
77                $voip_groups = array();
78                if( $GLOBALS['phpgw_info']['server']['voip_groups'] )
79                {
80                        $emailVoip = false;
81                        foreach(explode(",",$GLOBALS['phpgw_info']['server']['voip_groups']) as $i => $voip_group)
82                        {
83                                $a_voip = explode(";",$voip_group);                     
84                                $voip_groups[] = $a_voip[1];
85                        }
86                        foreach($GLOBALS['phpgw']->accounts->membership() as $idx => $group){                   
87                                if(array_search($group['account_name'],$voip_groups) !== FALSE)
88                                {               
89                                        $voip_enabled = true;
90                                        $emailVoip = $GLOBALS['phpgw_info']['server']['voip_email_redirect'];
91                                }
92                        }
93                }
94
95                // Load Applet ( Java )
96                $javaFiles = $path . "applet.jar,";
97                $javaPlugins = "";
98                               
99                // Enable Plugins Java;
100                $pluginsJava[] = "xhtml.jar";
101                $pluginsJava[] = "filetransfer.jar";
102               
103                if( $voip_enabled )
104                        $pluginsJava[] = "callVoip.jar";               
105               
106                for( $i = 0; $i < count($pluginsJava); $i++ )
107                {
108                        $javaFiles       .= $path . "plugins/" . $pluginsJava[$i] . ",";
109                        $javaPlugins .= substr($pluginsJava[$i], 0, strpos($pluginsJava[$i],".")).",";
110                }
111               
112                $javaPlugins = trim(substr($javaPlugins, 0, strlen($javaPlugins)-1));
113
114                // Code Base Java;
115                $codeBase = 'nu.fw.jeti.applet.Jeti.class';
116
117                // Lang Expresso
118                $lang = explode("-", $_SESSION['phpgw_info']['jabberit_messenger']['applet_lang']);
119                $country = strtoupper($lang[1]);
120                $language = $lang[0];
121               
122                // Porta/(SSL)?                 
123                $conn_SSL = "false";
124                $port_jabber = "5222";
125               
126                if( $_SESSION['phpgw_info']['jabberit_messenger']['port_1_jabberit'] === "true" )
127                {       
128                        $conn_SSL = "true";
129                        $port_jabber = "5223";
130                }
131                               
132                if( trim($_SESSION['phpgw_info']['jabberit_messenger']['port_2_jabberit']) )
133                {               
134                        $port_jabber = $_SESSION['phpgw_info']['jabberit_messenger']['port_2_jabberit'];
135                }
136               
137                // Load Template;
138                $template = new Template('templates/default');
139                $template->set_var("path", $path);
140                $template->set_var("java_files", $javaFiles);
141                $template->set_var("value_cnname", $CnName[0]);
142                $template->set_var("value_codeBase", $codeBase);
143                $template->set_var("value_company", $_SESSION['phpgw_info']['jabberit_messenger']['name_company']);
144                $template->set_var("value_country", $country);
145                $template->set_var("value_expresso", $SERVER_EXPRESSO);         
146                $template->set_var("value_host", $_SESSION['phpgw_info']['jabberit_messenger']['ip_server_jabberit']);
147                $template->set_var("value_javaPlugins", $javaPlugins);
148                $template->set_var("value_language", $language);                       
149                $template->set_var("value_password", $_SESSION['phpgw_info']['jabberit_messenger']['passwd']);
150                $template->set_var("value_port", $port_jabber);
151                $template->set_var("value_resource", $_SESSION['phpgw_info']['jabberit_messenger']['resource_jabberit']);
152                $template->set_var("value_server", $_SESSION['phpgw_info']['jabberit_messenger']['name_jabberit']);
153                $template->set_var("value_ssl", $conn_SSL);
154                $template->set_var("value_use_https", $PROTOCOL);
155                $template->set_var("value_user", $uid);
156
157                if( strpos($_SERVER['HTTP_USER_AGENT'], "MSIE") )
158                        $template->set_file(Array('jabberit_messenger' => 'jabberIM_IE.tpl'));
159                else
160                        $template->set_file(Array('jabberit_messenger' => 'jabberIM.tpl'));
161                       
162                $template->set_block('jabberit_messenger','index');
163                $template->pfp('out','index');
164
165    }
166?>
Note: See TracBrowser for help on using the repository browser.