source: branches/2.2/jabberit_messenger/jmessenger/inc/jabberit_acl.inc.php @ 3680

Revision 3680, 4.8 KB checked in by alexandrecorreia, 13 years ago (diff)

Ticket #1091 - Bloqueio das salas de bate-papo por OU dentro do modulo IM

  • Property svn:executable set to *
Line 
1<?php
2  /***************************************************************************\
3  *  Expresso - Expresso Messenger                                            *
4  *     - Alexandre Correia / Rodrigo Souza                                                               *
5  * ------------------------------------------------------------------------- *
6  *  This program is free software; you can redistribute it and/or modify it  *
7  *  under the terms of the GNU General Public License as published by the    *
8  *  Free Software Foundation; either version 2 of the License, or (at your   *
9  *  option) any later version.                                               *
10  \***************************************************************************/
11
12$size_of_acl = sizeof($GLOBALS['phpgw_info']['user']['acl']);
13
14for( $i = 0; $i < $size_of_acl && $GLOBALS['phpgw_info']['user']['acl'] != "jabberit_messenger"; $i++ )
15{
16        $apps = unserialize($GLOBALS['phpgw_info']['server']['apps_jabberit']);
17        $flag = false;
18
19        if( is_array($apps) )
20        {
21                foreach($apps as $tmp)
22                {
23                        $app_enabled = substr($tmp,0,strpos($tmp,";"));
24                        if( $GLOBALS['phpgw_info']['flags']['currentapp'] == $app_enabled )
25                                $flag = true;
26                }       
27        }
28       
29        if ( $GLOBALS['phpgw_info']['user']['acl'][$i]['appname'] == 'jabberit_messenger' && ( $flag || $GLOBALS['phpgw_info']['flags']['currentapp'] == 'jabberit_messenger' ))
30        {
31
32                $ldapManager = CreateObject('contactcenter.bo_ldap_manager');
33                $_SESSION['phpgw_info']['jabberit_messenger']['ldapManager'] = $ldapManager->srcs[1];
34               
35                $webserver_url = $GLOBALS['phpgw_info']['server']['webserver_url'];
36                $webserver_url = ( !empty($webserver_url) ) ? $webserver_url : '/';
37
38                if(strrpos($webserver_url,'/') === false || strrpos($webserver_url,'/') != (strlen($webserver_url)-1))
39                        $webserver_url .= '/';
40
41                $help_expresso  = $webserver_url .'help';
42                $webserver_url  = $webserver_url . 'jabberit_messenger/jmessenger/';
43               
44                require_once PHPGW_SERVER_ROOT . '/jabberit_messenger/jmessenger/inc/jabberit_sessions.inc.php';
45               
46                $_SESSION['phpgw_info']['jabberit_messenger']['webserver_url'] = $webserver_url;
47               
48                // Temas Expresso
49                $theme = "window_" . $GLOBALS['phpgw_info']['user']['preferences']['common']['theme'] . ".css";
50               
51                if( !file_exists('../jabberit_messenger/jmessenger/templates/default/css/'.$theme) )
52                        $theme = "window_default.css";
53
54               
55                //Bloqueio das Salas de Bate-Papo por Organização
56                $account_dn = $GLOBALS['phpgw_info']['user']['account_dn'];
57                $ou                     = explode("dc=", $account_dn);
58                $ou                     = explode("ou=",$ou[0]);
59                $ou                     = array_pop($ou);
60                $ou                     = strtoupper(substr($ou,0,strlen($ou)-1));
61               
62                $OUS_BLOQ               = array();
63                $Im_ChatRoom    = "false";
64               
65                foreach( $OUS_BLOQ as $lock )
66                {
67                        if ( strtoupper($lock) === strtoupper($ou) )
68                        {
69                                $Im_ChatRoom = "true";
70                        }               
71                }
72                       
73                // User
74                $fullName       = $_SESSION['phpgw_info']['jabberit_messenger']['fullname'];
75
76                $js  = "var path_jabberit       = '".$webserver_url."';";
77                $js .= "var theme_jabberit      = '".$theme."';";
78                $js .= "var help_expresso       = '".$help_expresso."';";
79                $js .= "var im_chatroom         = '".$Im_ChatRoom."';";
80
81                // Preferences User
82                require_once PHPGW_SERVER_ROOT . '/jabberit_messenger/jmessenger/inc/class.DataBaseIM.inc.php';
83               
84                $_DbIM                  = new DataBaseIM();
85                $preferences    = $_DbIM->getPreferences();
86
87                echo "<script type='text/javascript'>".$js."</script>";
88                echo "<script type='text/javascript' src='".$webserver_url . "js/strophe.mini.js'></script>";
89                echo "<script type='text/javascript' src='".$webserver_url . "js/SnifferBrowser.mini.js'></script>";
90                echo "<script type='text/javascript' src='".$webserver_url . "js/jscode/loadIM.mini.js'></script>";
91        echo "<script type='text/javascript' src='".$webserver_url . "js/connector.mini.js'></script>";
92                echo "<script type='text/javascript' src='".$webserver_url . "js/xtools.mini.js'></script>";
93                echo "<script type='text/javascript' src='".$webserver_url . "js/lang/i18n_pt_Br.mini.js'></script>";
94                echo "<script type='text/javascript' src='".$webserver_url . "js/dragdrop.mini.js'></script>";
95                echo "<script type='text/javascript' src='".$webserver_url . "js/makeW.mini.js'></script>";
96                echo "<script type='text/javascript' src='".$webserver_url . "js/show_hidden.mini.js'></script>";
97                echo "<script type='text/javascript' src='".$webserver_url . "js/trophyim_constants.js'></script>";
98                echo "<script type='text/javascript' src='".$webserver_url . "js/trophyim.mini.js'></script>";
99                echo "<script type='text/javascript' src='".$webserver_url . "js/AddUser.mini.js'></script>";                                           
100                echo "<script type='text/javascript' src='".$webserver_url . "js/json2.js'></script>";
101                echo "<script type='text/javascript' src='".$webserver_url . "js/SelectEditable.mini.js'></script>";
102                echo "<script type='text/javascript'> var loadscript = new LoadIM('".$fullName."','".$preferences."'); </script>";
103               
104                break;
105        }
106       
107}
108
109?>
Note: See TracBrowser for help on using the repository browser.