source: trunk/admin/inc/class.uivoip.inc.php @ 2698

Revision 2698, 5.7 KB checked in by rodsouza, 14 years ago (diff)

Ticket #1058 - Removendo reload nos formulários do admin na ação cancelar.

  • Property svn:executable set to *
Line 
1<?php
2
3 /**************************************************************************\
4  * Expresso Livre - Voip - administration                                   *
5  *                                                                                                                                      *
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
13class uivoip
14{
15        var $public_functions = array(
16                'add'      => True,
17                'edit_conf' => True,
18        );
19
20        var $bo;
21
22        final function __construct()
23        {
24                if(!isset($_SESSION['admin']['ldap_host']))
25                {
26                        $_SESSION['admin']['server']['ldap_host'] = $GLOBALS['phpgw_info']['server']['ldap_host'];
27                        $_SESSION['admin']['server']['ldap_root_dn'] = $GLOBALS['phpgw_info']['server']['ldap_root_dn'];
28                        $_SESSION['admin']['server']['ldap_host_pw'] = $GLOBALS['phpgw_info']['server']['ldap_root_pw'];
29                        $_SESSION['admin']['server']['ldap_context'] = $GLOBALS['phpgw_info']['server']['ldap_context'];
30                }
31                $this->bo = CreateObject('admin.bovoip');
32        }
33
34        final function edit_conf()
35        {
36                if($GLOBALS['phpgw']->acl->check('applications_access',1,'admin'))
37                {
38                        $GLOBALS['phpgw']->redirect_link('/index.php');
39                }               
40
41                $GLOBALS['phpgw_info']['flags']['app_header'] = lang('Admin') .' - ' . lang('Configuration Service VoIP');
42
43                if(!@is_object($GLOBALS['phpgw']->js))
44                {
45                        $GLOBALS['phpgw']->js = CreateObject('phpgwapi.javascript');
46                }
47
48                $webserver_url = $GLOBALS['phpgw_info']['server']['webserver_url'];
49                $webserver_url = ( !empty($webserver_url) ) ? $webserver_url : '/';
50
51                if(strrpos($webserver_url,'/') === false || strrpos($webserver_url,'/') != (strlen($webserver_url)-1))
52                        $webserver_url .= '/';
53
54                $js = array('connector','xtools','functions');
55               
56                foreach( $js as $tmp )
57                        $GLOBALS['phpgw']->js->validate_file('voip',$tmp,'admin');
58               
59                //$GLOBALS['phpgw']->common->phpgw_header();
60                //echo parse_navbar();
61                echo '<script type="text/javascript">var path_adm="'.$webserver_url .'"</script>';
62                echo $GLOBALS['phpgw']->js->get_script_links();
63
64                $ous = "<option value='-1'>-- ".lang('Select Organization')." --</option>";     
65                if( ($LdapOus = $this->bo->getOuLdap()) )
66                {
67                        foreach($LdapOus as $tmp )
68                                $ous .= "<option value='".$tmp."'>".$tmp."</option>";
69                }
70               
71                $groups_voip = $GLOBALS['phpgw_info']['server']['voip_groups'];
72
73                if( $groups_voip )
74                {
75                        $gvoip = explode(',', $groups_voip);
76                        natcasesort($gvoip);
77                       
78                        foreach( $gvoip as $tmp ){
79                                $option = explode(";",$tmp);
80                                $gvoip .= "<option value='".$tmp."'>".$option[0]."</option>";
81                        }
82                }
83
84                $GLOBALS['phpgw']->template->set_file(array('voip' => 'voip.tpl'));
85                $GLOBALS['phpgw']->template->set_block('voip','voip_page','voip_page');
86                $GLOBALS['phpgw']->template->set_var(array(
87                                                                                'action_url' => $GLOBALS['phpgw']->link('/index.php','menuaction=admin.uivoip.add'),
88                                                                                'lang_Email_Voip' => "Caixa Voip (Email) para habilitar o alerta telefônico",//lang('Email Voip'),
89                                                                                'lang_VoIP_settings' => lang('Configuration Service VoIP'),
90                                                                                'lang_Enter_your_VoIP_server_address' => lang('Enter your VoIP server address'),       
91                                                                                'lang_Enter_your_VoIP_server_url' => lang('Enter your VoIP server url'),       
92                                                                                'lang_Enter_your_VoIP_server_port' => lang('Enter your VoIP server port'),
93                                                                                'lang_save' => lang('Save'),
94                                                                                'lang_cancel' => lang('Cancel'),
95                                                                                'cancel_button' => $GLOBALS[ 'phpgw' ] -> link( '/admin/index.php' ),
96                                                                                'value_voip_email_redirect' => ($GLOBALS['phpgw_info']['server']['voip_email_redirect']) ? $GLOBALS['phpgw_info']['server']['voip_email_redirect'] : '',
97                                                                                'value_voip_server' => ($GLOBALS['phpgw_info']['server']['voip_server']) ? $GLOBALS['phpgw_info']['server']['voip_server'] : '',
98                                                                                'value_voip_url' => ($GLOBALS['phpgw_info']['server']['voip_url']) ? $GLOBALS['phpgw_info']['server']['voip_url'] : '',
99                                                                                'value_voip_port' => ($GLOBALS['phpgw_info']['server']['voip_port']) ? $GLOBALS['phpgw_info']['server']['voip_port'] : '',
100                                                                                'lang_load' => lang('Wait Loading...!'),
101                                                                                'lang_grupos_ldap' => 'Grupos Ldap',
102                                                                                'lang_grupos_liberados' => 'Grupos Liberados',
103                                                                                'lang_groups_ldap' => lang('groups ldap'),
104                                                                                'lang_organizations' => lang('Organizations'),
105                                                                                'groups_voip' => $gvoip,
106                                                                                'ous_ldap' => $ous
107                                                                                ));
108       
109                $GLOBALS['phpgw']->template->pparse('out','voip_page');
110        }
111       
112        function display_row($label, $value)
113        {
114                $GLOBALS['phpgw']->template->set_var('tr_color',$this->nextmatchs->alternate_row_color());
115                $GLOBALS['phpgw']->template->set_var('label',$label);
116                $GLOBALS['phpgw']->template->set_var('value',$value);
117                $GLOBALS['phpgw']->template->parse('rows','row',True);
118        }
119
120        function add()
121        {
122               
123                if($GLOBALS['phpgw']->acl->check('applications_access',1,'admin'))
124                {
125                        $GLOBALS['phpgw']->redirect_link('/index.php');
126                }               
127               
128                if ($_POST['cancel'])
129                {
130                        $GLOBALS['phpgw']->redirect_link('/admin/index.php');
131                }
132
133                if ( $_POST['save'] )
134                {
135                        $conf['voip_server']= $_POST['voip_server'];
136                        $conf['voip_url']       = $_POST['voip_url'];
137                        $conf['voip_port']      = $_POST['voip_port'];
138                        $conf['voip_email_redirect'] = $_POST['voip_email_redirect'];
139                       
140                        if( is_array($_POST['voip_groups']) )
141                                foreach($_POST['voip_groups'] as $tmp)
142                                        $conf['voip_groups'] = (count($conf['voip_groups']) > 0 ) ? $conf['voip_groups'] . "," . $tmp : $tmp;
143                        else{
144                                $conf['voip_groups'] = '';
145                        }
146                        $this->bo->setConfDB($conf);
147                }
148
149                $GLOBALS['phpgw']->redirect_link('/admin/index.php');
150        }
151}
152?>
Note: See TracBrowser for help on using the repository browser.