diff --git a/agc_2-X/trunk/extras/MySQL_AST_CREATE_tables.sql b/agc_2-X/trunk/extras/MySQL_AST_CREATE_tables.sql index e24a2622..9debf113 100644 --- a/agc_2-X/trunk/extras/MySQL_AST_CREATE_tables.sql +++ b/agc_2-X/trunk/extras/MySQL_AST_CREATE_tables.sql @@ -617,7 +617,8 @@ modify_email_accounts ENUM('0','1') default '0', failed_login_count TINYINT(3) UNSIGNED default '0', last_login_date DATETIME default '2001-01-01 00:00:01', last_ip VARCHAR(15) default '', -pass_hash VARCHAR(100) default '' +pass_hash VARCHAR(100) default '', +alter_admin_interface_options ENUM('0','1') default '1' ) ENGINE=MyISAM; CREATE UNIQUE INDEX user ON vicidial_users (user); @@ -3254,4 +3255,4 @@ UPDATE vicidial_configuration set value='1766' where name='qc_database_version'; UPDATE system_settings set vdc_agent_api_active='1'; -UPDATE system_settings SET db_schema_version='1369',db_schema_update_date=NOW(),reload_timestamp=NOW(); +UPDATE system_settings SET db_schema_version='1370',db_schema_update_date=NOW(),reload_timestamp=NOW(); diff --git a/agc_2-X/trunk/extras/upgrade_2.8.sql b/agc_2-X/trunk/extras/upgrade_2.8.sql index a724e5c6..55307453 100644 --- a/agc_2-X/trunk/extras/upgrade_2.8.sql +++ b/agc_2-X/trunk/extras/upgrade_2.8.sql @@ -208,3 +208,7 @@ UPDATE system_settings SET db_schema_version='1368',db_schema_update_date=NOW() ALTER TABLE system_settings ADD reload_timestamp DATETIME; UPDATE system_settings SET db_schema_version='1369',db_schema_update_date=NOW(),reload_timestamp=NOW() where db_schema_version < 1369; + +ALTER TABLE vicidial_users ADD alter_admin_interface_options ENUM('0','1') default '1'; + +UPDATE system_settings SET db_schema_version='1370',db_schema_update_date=NOW() where db_schema_version < 1370; diff --git a/agc_2-X/trunk/translations/raw_translation_files/TO_BE_TRANSLATED_2.8.txt b/agc_2-X/trunk/translations/raw_translation_files/TO_BE_TRANSLATED_2.8.txt index 1031bd72..c8442236 100644 --- a/agc_2-X/trunk/translations/raw_translation_files/TO_BE_TRANSLATED_2.8.txt +++ b/agc_2-X/trunk/translations/raw_translation_files/TO_BE_TRANSLATED_2.8.txt @@ -267,7 +267,7 @@ This is the dial plan prefix used to send calls directly to a user's voicemail f Voicemail Instructions|| This setting allows you to define if the voicemail instructions will play after the voicemail greeting when a call rings on the agent extension and times out to voicemail. Default is Y|| optional, possibly slow|| - +Not set as allowed in any campaigns|| ########################## CHANGES TO EXISTING PHRASES IN ADMIN TRANSLATION diff --git a/agc_2-X/trunk/www/vicidial/admin.php b/agc_2-X/trunk/www/vicidial/admin.php index d19bb905..7960b14e 100644 --- a/agc_2-X/trunk/www/vicidial/admin.php +++ b/agc_2-X/trunk/www/vicidial/admin.php @@ -1824,6 +1824,8 @@ if (isset($_GET["voicemail_dump_exten_no_inst"])) {$voicemail_dump_exten_no_in elseif (isset($_POST["voicemail_dump_exten_no_inst"])) {$voicemail_dump_exten_no_inst=$_POST["voicemail_dump_exten_no_inst"];} if (isset($_GET["voicemail_instructions"])) {$voicemail_instructions=$_GET["voicemail_instructions"];} elseif (isset($_POST["voicemail_instructions"])) {$voicemail_instructions=$_POST["voicemail_instructions"];} +if (isset($_GET["alter_admin_interface_options"])) {$alter_admin_interface_options=$_GET["alter_admin_interface_options"];} + elseif (isset($_POST["alter_admin_interface_options"])) {$alter_admin_interface_options=$_POST["alter_admin_interface_options"];} if (isset($script_id)) {$script_id= strtoupper($script_id);} @@ -2151,6 +2153,7 @@ if ($non_latin < 1) $dead_max = preg_replace('/[^0-9]/','',$dead_max); $dispo_max = preg_replace('/[^0-9]/','',$dispo_max); $pause_max = preg_replace('/[^0-9]/','',$pause_max); + $alter_admin_interface_options = preg_replace('/[^0-9]/','',$alter_admin_interface_options); $drop_call_seconds = preg_replace('/[^-0-9]/','',$drop_call_seconds); @@ -3278,12 +3281,13 @@ else # 140305-0846 - Bug fix for list modify admin logging issue # 140313-0727 - Added links to Called Counts List IDs Report # 140313-1014 - Added warning to in-groups if they are not set as allowed in any campaigns +# 140314-1134 - Added more strict enforcement of level 9 report and user permissions and definable max stats days # # make sure you have added a user to the vicidial_users MySQL table with at least user_level 8 to access this page the first time -$admin_version = '2.8-430a'; -$build = '140313-1014'; +$admin_version = '2.8-431a'; +$build = '140314-1134'; $STARTtime = date("U"); $SQLdate = date("Y-m-d H:i:s"); @@ -3438,7 +3442,7 @@ else ############################################## require_once('qc/QC_admin_include02.php'); -$stmt="SELECT user_id,user,pass,full_name,user_level,user_group,phone_login,phone_pass,delete_users,delete_user_groups,delete_lists,delete_campaigns,delete_ingroups,delete_remote_agents,load_leads,campaign_detail,ast_admin_access,ast_delete_phones,delete_scripts,modify_leads,hotkeys_active,change_agent_campaign,agent_choose_ingroups,closer_campaigns,scheduled_callbacks,agentonly_callbacks,agentcall_manual,vicidial_recording,vicidial_transfers,delete_filters,alter_agent_interface_options,closer_default_blended,delete_call_times,modify_call_times,modify_users,modify_campaigns,modify_lists,modify_scripts,modify_filters,modify_ingroups,modify_usergroups,modify_remoteagents,modify_servers,view_reports,vicidial_recording_override,alter_custdata_override,qc_enabled,qc_user_level,qc_pass,qc_finish,qc_commit,add_timeclock_log,modify_timeclock_log,delete_timeclock_log,alter_custphone_override,vdc_agent_api_access,modify_inbound_dids,delete_inbound_dids,active,alert_enabled,download_lists,agent_shift_enforcement_override,manager_shift_enforcement_override,shift_override_flag,export_reports,delete_from_dnc,email,user_code,territory,allow_alerts,callcard_admin,force_change_password,modify_shifts,modify_phones,modify_carriers,modify_labels,modify_statuses,modify_voicemail,modify_audiostore,modify_moh,modify_tts,modify_contacts,modify_same_user_level from vicidial_users where user='$PHP_AUTH_USER';"; +$stmt="SELECT user_id,user,pass,full_name,user_level,user_group,phone_login,phone_pass,delete_users,delete_user_groups,delete_lists,delete_campaigns,delete_ingroups,delete_remote_agents,load_leads,campaign_detail,ast_admin_access,ast_delete_phones,delete_scripts,modify_leads,hotkeys_active,change_agent_campaign,agent_choose_ingroups,closer_campaigns,scheduled_callbacks,agentonly_callbacks,agentcall_manual,vicidial_recording,vicidial_transfers,delete_filters,alter_agent_interface_options,closer_default_blended,delete_call_times,modify_call_times,modify_users,modify_campaigns,modify_lists,modify_scripts,modify_filters,modify_ingroups,modify_usergroups,modify_remoteagents,modify_servers,view_reports,vicidial_recording_override,alter_custdata_override,qc_enabled,qc_user_level,qc_pass,qc_finish,qc_commit,add_timeclock_log,modify_timeclock_log,delete_timeclock_log,alter_custphone_override,vdc_agent_api_access,modify_inbound_dids,delete_inbound_dids,active,alert_enabled,download_lists,agent_shift_enforcement_override,manager_shift_enforcement_override,shift_override_flag,export_reports,delete_from_dnc,email,user_code,territory,allow_alerts,callcard_admin,force_change_password,modify_shifts,modify_phones,modify_carriers,modify_labels,modify_statuses,modify_voicemail,modify_audiostore,modify_moh,modify_tts,modify_contacts,modify_same_user_level,alter_admin_interface_options from vicidial_users where user='$PHP_AUTH_USER';"; $rslt=mysql_to_mysqli($stmt, $link); $row=mysqli_fetch_row($rslt); $LOGfull_name =$row[3]; @@ -3487,6 +3491,7 @@ $LOGmodify_moh =$row[79]; $LOGmodify_tts =$row[80]; $LOGmodify_contacts =$row[81]; $LOGmodify_same_user_level =$row[82]; +$LOGalter_admin_interface =$row[83]; $stmt="SELECT allowed_campaigns,allowed_reports,admin_viewable_groups,admin_viewable_call_times from vicidial_user_groups where user_group='$LOGuser_group';"; $rslt=mysql_to_mysqli($stmt, $link); @@ -5535,7 +5540,7 @@ if ($ADD==121) echo "
\n";
echo "";
@@ -31107,7 +31130,7 @@ if ($ADD==720000000000000)
if ($ADD==730000000000000)
{
- if ($LOGuser_level >= 9)
+ if ( ($LOGuser_level >= 9) and ( (preg_match("/Administration Change Log/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) ) )
{
echo "
| |||||||||||||