source: trunk/instant_messenger/inc/im_acl.inc.php @ 63

Revision 63, 4.1 KB checked in by niltonneto, 17 years ago (diff)

* empty log message *

  • Property svn:eol-style set to native
  • Property svn:executable set to *
Line 
1<?php
2   for ( $i = 0; $i < sizeof($GLOBALS['phpgw_info']['user']['acl']); $i++ )
3   {
4      if ( $GLOBALS['phpgw_info']['user']['acl'][$i]['appname'] == 'instant_messenger')
5      {
6                        require_once("im_sessions.inc.php");
7         
8         $webserver_url = $GLOBALS['phpgw_info']['server']['webserver_url'];
9         $webserver_url = ( !empty($webserver_url) ) ? $webserver_url : '/';
10
11         if ( strrpos($webserver_url, '/') === false || strrpos($webserver_url, '/') != (strlen($webserver_url)-1) )
12            $webserver_url .= '/';
13
14         $webserver_url = $webserver_url . 'instant_messenger/';
15
16         require_once("IMConfigure.php");
17
18         $_transport = TRANSPORT_NON_SECURITY;
19         $_port = PORT_NON_SECURITY;
20
21                        $SERVER = "127.0.0.1";
22
23                        $fp  = "";
24                        @$fp = stream_socket_client($_transport . "://" . $SERVER . ":" . $_port, $errno, $errstr, 10);
25
26         if ( $fp )
27         {
28            fwrite($fp, "GET /" . CONNECT . ";" . session_id() . " HTTP/1.1\r\nHost: " . $SERVER . ":" . $_port . "\r\nAccept: */*\r\n\r\n");
29
30            $js = array(
31                        $webserver_url . 'js/XMLTools.js',
32                        $webserver_url . 'js/json.js',
33                        $webserver_url . 'js/im_functions.js',
34                        $webserver_url . 'js/im_fcommon.js',
35                        $webserver_url . 'js/im_var_globals.js',
36                        $webserver_url . 'js/im_images.js',
37                        $webserver_url . 'js/im_templates.js',
38                        $webserver_url . 'js/im_win.js',
39                        $webserver_url . 'js/im_menu_action.js',
40                        $webserver_url . 'js/im_conf_font.js',
41                        $webserver_url . 'js/im_preferences.js',
42                        $webserver_url . 'js/im_init.js',
43                                                                $webserver_url . 'js/im_subscription.js',                       
44                       );
45
46            require_once('load_lang.php');
47
48         /*
49           Os método PORTA (PROGRAMAÇÂO ORIENTADA A RECURSO TÉCNICO ALTERNATIVO) mais exatamente
50           métodos POG (PROGRAMAÇÂO ORIENTADO A GAMBIARRA) usados a seguir é devido a integração
51           dos diverso módulos do expresso com o mensageiro instantâneo e para manter a aplicação
52           crossbrowser!
53         
54           [NUTS] Rodrigo Souza - 29/01/2007
55          */
56
57         print '
58               <link rel="stylesheet" href="' . $webserver_url . 'templates/default/css.css" />
59               <link rel="stylesheet" href="' . $webserver_url . 'templates/default/messenger.css" />
60               <script>
61                  var im_send_file="' . $_SESSION['phpgw_info']['instant_messenger']['send_file_jabber'] . '";
62                  var im_path="' . $webserver_url . '";
63                  var ini_wzdd = false;
64                  if ( !window.dd )
65                  {
66                     ini_wzdd = true;
67                     document.write(\'\<script src="' . $webserver_url . 'js/wz_dragdrop.js"\>\<\/script\>\');
68                     var im_path="' . $webserver_url . '";
69                  }
70               </script>';
71         /*
72           isso se faz necessário para que não seja carregado duas vezes o arquivo wz_dragdrop
73           e que a função SET_DHTML seja executada uma única vez, caso contrário causa um erro
74           que finaliza a execução de todos as chamadas javascript em execução e as futuras
75           chamadas também não serão executadas
76          */
77
78         print '
79               <script>
80                  if ( ini_wzdd )
81                     SET_DHTML("backFantom"+NO_DRAG);
82               </script>';
83
84         foreach ( $js as $key => $val )
85            print '<script src="' . $val . '?' . filemtime($_SERVER['DOCUMENT_ROOT'] . '/' . $val) . '"></script>';
86
87         /*
88           instrução break utilizada decorrente ao fato que o usuário pode ter multiplas permissão de
89           acesso ao modulo de mensagem instantanea ou seja pode possuir permissão tanto nos diversos
90           grupos que faz parte assim como permissão individual de acesso (permissão de acesso dada
91           especificamente ao usuaário)
92          */
93         
94         }
95         
96         break;
97      }
98   }
99?>
Note: See TracBrowser for help on using the repository browser.