[260] | 1 | <?php |
---|
| 2 | |
---|
[287] | 3 | $size_of_acl = sizeof($GLOBALS['phpgw_info']['user']['acl']); |
---|
[260] | 4 | |
---|
[287] | 5 | # percorre a ACL até o fim ou até encontrar a entrada para o módulo de mensagem instantânea |
---|
| 6 | for ( $i = 0; $i < $size_of_acl && $GLOBALS['phpgw_info']['user']['acl'][$i]['appname'] != 'instant_messenger'; $i++ ); |
---|
| 7 | |
---|
| 8 | # verifica se foi encontrada a permissão para o módulo de mensagem instantânea |
---|
| 9 | if ( $GLOBALS['phpgw_info']['user']['acl'][$i]['appname'] == 'instant_messenger' ) |
---|
[262] | 10 | { |
---|
[287] | 11 | $webserver_url_im = $GLOBALS['phpgw_info']['server']['webserver_url']; |
---|
| 12 | $webserver_url_im = ( !empty($webserver_url_im) ) ? $webserver_url_im : '/'; |
---|
| 13 | |
---|
| 14 | if ( strrpos($webserver_url_im, '/') === false || strrpos($webserver_url_im, '/') != (strlen($webserver_url_im) - 1) ) |
---|
| 15 | $webserver_url_im .= '/'; |
---|
| 16 | |
---|
| 17 | $webserver_url_im = $webserver_url_im . 'instant_messenger/'; |
---|
| 18 | |
---|
| 19 | require_once PHPGW_SERVER_ROOT . '/instant_messenger/inc/im_sessions.inc.php'; |
---|
| 20 | require_once PHPGW_SERVER_ROOT . '/instant_messenger/inc/load_lang.php'; |
---|
| 21 | |
---|
| 22 | $js = array( |
---|
| 23 | 'connector', |
---|
| 24 | 'jabber', |
---|
| 25 | 'xtools', |
---|
| 26 | 'client', |
---|
| 27 | 'images', |
---|
| 28 | 'dragdrop', |
---|
| 29 | 'build_win', |
---|
| 30 | 'templates', |
---|
| 31 | 'fcommon', |
---|
| 32 | 'menu_action', |
---|
| 33 | 'functions', |
---|
| 34 | 'images', |
---|
| 35 | 'cookies_im', |
---|
| 36 | 'load', |
---|
| 37 | ); |
---|
| 38 | |
---|
| 39 | print '<script type="text/javascript">var path_im = "'.$webserver_url_im.'";</script>'; |
---|
| 40 | |
---|
| 41 | |
---|
| 42 | require_once dirname(__FILE__) . '/Controller.class.php'; |
---|
| 43 | |
---|
| 44 | $controller = new Controller; |
---|
| 45 | $script = ''; |
---|
| 46 | foreach ( $js as $key => $val ) |
---|
| 47 | { |
---|
| 48 | $val = array('act' => 'j.' . $val); |
---|
| 49 | $script .= $controller->exec($val); |
---|
| 50 | } |
---|
| 51 | |
---|
| 52 | printf("<script type=\"text/javascript\">%s</script>", $script); |
---|
| 53 | |
---|
| 54 | print '<link rel="stylesheet" type="text/css" href="' . $webserver_url_im . 'templates/default/css/window.css">'; |
---|
| 55 | print '<link rel="stylesheet" type="text/css" href="' . $webserver_url_im . 'templates/default/css/chat.css">'; |
---|
| 56 | print '<link rel="stylesheet" type="text/css" href="' . $webserver_url_im . 'templates/default/css/common.css">'; |
---|
| 57 | |
---|
| 58 | # trecho de código javascript utilizado para |
---|
| 59 | # controle de possível erro no load do script |
---|
| 60 | # feito acima e está sendo inserido via PHP |
---|
| 61 | # pois é um complemento do procedimento acima |
---|
| 62 | $init_client = '<script type="text/javascript">'; |
---|
| 63 | $init_client .= ' function im_init(pTimes)'; |
---|
| 64 | $init_client .= ' {'; |
---|
| 65 | $init_client .= ' if ( !pTimes )'; |
---|
| 66 | $init_client .= ' pTimes = 0;'; |
---|
| 67 | $init_client .= ' if ( pTimes == 5 )'; |
---|
| 68 | $init_client .= ' return false;'; |
---|
| 69 | $init_client .= ' if ( window.client )'; |
---|
| 70 | $init_client .= ' client();'; |
---|
| 71 | $init_client .= ' else'; |
---|
| 72 | $init_client .= ' setTimeout("im_init("+(++pTimes)+")", (pTimes + 1) * 2000);'; |
---|
| 73 | $init_client .= ' }'; |
---|
| 74 | $init_client .= ' im_init();'; |
---|
| 75 | $init_client .= '</script>'; |
---|
| 76 | printf("%s", $init_client); |
---|
[262] | 77 | } |
---|
[260] | 78 | ?> |
---|