Changed script_id to 20 characters max, other small script changes

git-svn-id: svn://192.168.202.10@2617 3d104415-ff17-0410-8863-d5cf3c621b8a
This commit is contained in:
mattf
2016-11-13 16:01:30 +00:00
parent 88895e8bfe
commit 465a1fba3a
6 changed files with 864 additions and 253 deletions
@@ -739,7 +739,7 @@ campaign_vdad_exten VARCHAR(20) default '8368',
campaign_rec_exten VARCHAR(20) default '8309',
campaign_recording ENUM('NEVER','ONDEMAND','ALLCALLS','ALLFORCE') default 'ONDEMAND',
campaign_rec_filename VARCHAR(50) default 'FULLDATE_CUSTPHONE',
campaign_script VARCHAR(10),
campaign_script VARCHAR(20),
get_call_launch ENUM('NONE','SCRIPT','WEBFORM','WEBFORMTWO','WEBFORMTHREE','FORM') default 'NONE',
am_message_exten VARCHAR(100) default 'vm-goodbye',
amd_send_to_vmx ENUM('Y','N') default 'N',
@@ -792,7 +792,7 @@ qc_shift_id VARCHAR(20) default '24HRMIDNIGHT',
qc_get_record_launch ENUM('NONE','SCRIPT','WEBFORM','QCSCRIPT','QCWEBFORM') default 'NONE',
qc_show_recording ENUM('Y','N') default 'Y',
qc_web_form_address VARCHAR(255),
qc_script VARCHAR(10),
qc_script VARCHAR(20),
survey_first_audio_file VARCHAR(50) default 'US_pol_survey_hello',
survey_dtmf_digits VARCHAR(16) default '1238',
survey_ni_digit VARCHAR(1) default '8',
@@ -978,7 +978,7 @@ list_description VARCHAR(255),
list_changedate DATETIME,
list_lastcalldate DATETIME,
reset_time VARCHAR(100) default '',
agent_script_override VARCHAR(10) default '',
agent_script_override VARCHAR(20) default '',
campaign_cid_override VARCHAR(20) default '',
am_message_exten_override VARCHAR(100) default '',
drop_inbound_group_override VARCHAR(20) default '',
@@ -1077,7 +1077,7 @@ web_form_address TEXT,
voicemail_ext VARCHAR(10),
next_agent_call VARCHAR(30) default 'longest_wait_time',
fronter_display ENUM('Y','N') default 'Y',
ingroup_script VARCHAR(10),
ingroup_script VARCHAR(20),
get_call_launch ENUM('NONE','SCRIPT','WEBFORM','WEBFORMTWO','WEBFORMTHREE','FORM','EMAIL') default 'NONE',
xferconf_a_dtmf VARCHAR(50),
xferconf_a_number VARCHAR(50),
@@ -1109,7 +1109,7 @@ qc_shift_id VARCHAR(20) default '24HRMIDNIGHT',
qc_get_record_launch ENUM('NONE','SCRIPT','WEBFORM','QCSCRIPT','QCWEBFORM') default 'NONE',
qc_show_recording ENUM('Y','N') default 'Y',
qc_web_form_address VARCHAR(255),
qc_script VARCHAR(10),
qc_script VARCHAR(20),
play_place_in_line ENUM('Y','N') default 'N',
play_estimate_hold_time ENUM('Y','N') default 'N',
hold_time_option VARCHAR(30) default 'NONE',
@@ -1302,7 +1302,7 @@ index (event_time)
) ENGINE=MyISAM;
CREATE TABLE vicidial_scripts (
script_id VARCHAR(10) PRIMARY KEY NOT NULL,
script_id VARCHAR(20) PRIMARY KEY NOT NULL,
script_name VARCHAR(50),
script_comments VARCHAR(255),
script_text TEXT,
@@ -3178,7 +3178,9 @@ avatar_api_pass VARCHAR(20) default '',
active ENUM('Y','N') default 'Y',
audio_functions VARCHAR(100) default 'PLAY-STOP-RESTART',
audio_display VARCHAR(100) default 'FILE-NAME',
user_group VARCHAR(20) default '---ALL---'
user_group VARCHAR(20) default '---ALL---',
soundboard_layout VARCHAR(40) default 'default',
columns_limit SMALLINT(5) default '5'
) ENGINE=MyISAM;
CREATE TABLE vicidial_avatar_audio (
@@ -3190,6 +3192,8 @@ h_ord SMALLINT(5) default '1',
level SMALLINT(5) default '1',
parent_audio_filename VARCHAR(255) default '',
parent_rank VARCHAR(2) default '',
button_type VARCHAR(40) default 'button',
font_size VARCHAR(3) default '2',
index (avatar_id)
) ENGINE=MyISAM;
@@ -3811,4 +3815,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='1476',db_schema_update_date=NOW(),reload_timestamp=NOW();
UPDATE system_settings SET db_schema_version='1477',db_schema_update_date=NOW(),reload_timestamp=NOW();
+18
View File
@@ -745,3 +745,21 @@ ALTER TABLE system_settings ADD agent_script VARCHAR(50) default 'vicidial.php';
INSERT INTO vicidial_screen_colors VALUES ('default_grey_agent','default grey agent','Y','FFFFFF','cccccc','E6E6E6','E6E6E6','E6E6E6','E6E6E6','E6E6E6','E6E6E6','E6E6E6','E6E6E6','---ALL---','DEFAULTAGENT.png');
UPDATE system_settings SET db_schema_version='1476',db_schema_update_date=NOW() where db_schema_version < 1476;
ALTER TABLE vicidial_avatars ADD soundboard_layout VARCHAR(40) default 'default';
ALTER TABLE vicidial_avatars ADD columns_limit SMALLINT(5) default '5';
ALTER TABLE vicidial_avatar_audio ADD button_type VARCHAR(40) default 'button';
ALTER TABLE vicidial_avatar_audio ADD font_size VARCHAR(3) default '2';
ALTER TABLE vicidial_scripts MODIFY script_id VARCHAR(20) NOT NULL;
ALTER TABLE vicidial_campaigns MODIFY campaign_script VARCHAR(20);
ALTER TABLE vicidial_campaigns MODIFY qc_script VARCHAR(20);
ALTER TABLE vicidial_lists MODIFY agent_script_override VARCHAR(20) default '';
ALTER TABLE vicidial_inbound_groups MODIFY ingroup_script VARCHAR(20);
ALTER TABLE vicidial_inbound_groups MODIFY qc_script VARCHAR(20);
UPDATE system_settings SET db_schema_version='1477',db_schema_update_date=NOW() where db_schema_version < 1477;
+527 -166
View File
@@ -11,10 +11,11 @@
# 141216-2135 - Added language settings lookups and user/pass variable standardization
# 160428-1848 - Fix for user_authorization
# 161103-1656 - Added Agent Debug Logging
# 161111-1647 - Added HIDENUMBERS display option, Font size, button type and layout options
#
$version = '2.12-5';
$build = '161103-1656';
$version = '2.12-6';
$build = '161111-1647';
require_once("dbconnect_mysqli.php");
require_once("functions.php");
@@ -109,12 +110,15 @@ if ($qm_conf_ct > 0)
if ($non_latin < 1)
{
$user=preg_replace("/[^-_0-9a-zA-Z]/","",$user);
$pass=preg_replace("/[^-_0-9a-zA-Z]/","",$pass);
$soundboard_id=preg_replace("/[^-_0-9a-zA-Z]/","",$soundboard_id);
$avatar_id=preg_replace("/[^-_0-9a-zA-Z]/","",$avatar_id);
$session_name=preg_replace("/[^-_0-9a-zA-Z]/","",$session_name);
}
else
{
$user=preg_replace("/\'|\"|\\\\|;| /","",$user);
$pass=preg_replace("/\'|\"|\\\\|;| /","",$pass);
$soundboard_id=preg_replace("/\'|\"|\\\\|;| /","",$soundboard_id);
$avatar_id=preg_replace("/\'|\"|\\\\|;| /","",$avatar_id);
$session_name=preg_replace("/[^-_0-9a-zA-Z]/","",$session_name);
@@ -167,7 +171,7 @@ else
# do nothing for now
}
$stmt="SELECT avatar_id,avatar_name,avatar_notes,avatar_api_user,avatar_api_pass,active,audio_functions,user_group,audio_display from vicidial_avatars where avatar_id='$soundboard_id' and active='Y';";
$stmt="SELECT avatar_id,avatar_name,avatar_notes,avatar_api_user,avatar_api_pass,active,audio_functions,user_group,audio_display,soundboard_layout,columns_limit from vicidial_avatars where avatar_id='$soundboard_id' and active='Y';";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$soundboard_ct = mysqli_num_rows($rslt);
@@ -183,6 +187,8 @@ if ($soundboard_ct > 0)
$audio_functions = $row[6];
$user_group = $row[7];
$audio_display = $row[8];
$soundboard_layout = $row[9];
$columns_limit = $row[10];
}
else
{
@@ -508,9 +514,10 @@ echo "\n";
echo "<!-- Soundboard: $soundboard_id --><form action=$PHP_SELF method=POST name=soundboard_form id=soundboard_form>\n";
echo "<input type=hidden name=last_played id=last_played value=\"\">\n";
echo "<input type=hidden name=soundboard_id id=soundboard_id value=\"$soundboard_id\">\n";
echo "<input type=hidden name=soundboard_layout id=soundboard_layout value=\"$soundboard_layout\">\n";
##### get files listing for display
$stmt="SELECT audio_filename,audio_name,rank,level,parent_audio_filename,parent_rank,h_ord from vicidial_avatar_audio where avatar_id='$soundboard_id' and level='1' order by rank,h_ord;";
$stmt="SELECT audio_filename,audio_name,rank,level,parent_audio_filename,parent_rank,h_ord,button_type,font_size from vicidial_avatar_audio where avatar_id='$soundboard_id' and level='1' order by rank,h_ord;";
if ($DB) {echo "$stmt\n";}
$rsltx=mysql_to_mysqli($stmt, $link);
$soundboardfiles_to_print = mysqli_num_rows($rsltx);
@@ -528,6 +535,14 @@ while ($soundboardfiles_to_print > $o)
$Aparent_audio_filename[$o] = $rowx[4];
$Aparent_rank[$o] = $rowx[5];
$Ah_ord[$o] = $rowx[6];
$Abutton_type[$o] = $rowx[7];
$Afont_size[$o] = $rowx[8];
$Abold_start[$o]=''; $Abold_end[$o]='';
if (preg_match("/B/",$Afont_size[$o]))
{$Abold_start[$o]='<B>'; $Abold_end[$o]='</B>'; $Afont_size[$o] = preg_replace("/B/",'',$Afont_size[$o]);}
$Aitalic_start[$o]=''; $Aitalic_end[$o]='';
if (preg_match("/I/",$Afont_size[$o]))
{$Aitalic_start[$o]='<I>'; $Aitalic_end[$o]='</I>'; $Afont_size[$o] = preg_replace("/I/",'',$Afont_size[$o]);}
if ($o == 0)
{
$Uranks[$ranks] = $Arank[$o];
@@ -583,216 +598,562 @@ while($o < $ranks)
if ($DB > 0) {echo _QXZ("Max rank count").": $rank_max_count<br>\n";}
echo "<center><table width=99% cellspacing=1 bgcolor=white>\n";
echo "<tr bgcolor=white>";
echo "<td rowspan=2 align=center colspan=2><b>$avatar_name</b></td>";
if (preg_match("/STOP/",$audio_functions))
{echo "<td width=300 align=center id=\"stop_td\" onMouseOver=\"this.bgColor='#FF0000'\" onMouseOut=\"this.bgColor='#FF9999'\" bgColor=\"#FF9999\" onClick=\"stop_audio()\"><b>"._QXZ("stop audio")." &nbsp; &nbsp; &nbsp; &nbsp; <span id=countdown_audio></span></b></td>";}
else
{echo "<td width=300 align=center id=\"stop_td\" bgColor=\"white\"> &nbsp; <span id=countdown_audio></span></td>";}
echo "</tr><tr><td width=300 height=5 align=center id=\"stop_td\" bgColor=\"white\"><span id=stop_progress></span></td>";
echo "</tr></table>\n";
echo "<table width=99% cellspacing=3 bgcolor=white>\n";
### generate display tables
$o=0;
while ($soundboardfiles_to_print > $o)
if ($soundboard_layout == 'columns01')
{
$ro = ($o + 1);
$display_button='';
if (preg_match("/FILE/",$audio_display))
{$display_button .= " $Aaudio_filename[$o]";}
if (preg_match("/NAME/",$audio_display))
{
if (strlen($display_button) > 1)
{$display_button .= " - ";}
$display_button .= " $Aaudio_name[$o]";
}
##### BEGIN columns01 layout #####
echo "<center><table width=99% cellspacing=1 bgcolor=white>\n";
echo "<tr bgcolor=white>";
echo "<td rowspan=2 align=center colspan=2><b><font face=\"Arial,Helvetica\">$avatar_name</font></b></td>";
if (preg_match("/STOP/",$audio_functions))
{echo "<td width=300 align=center id=\"stop_td\" onMouseOver=\"this.bgColor='#FF0000'\" onMouseOut=\"this.bgColor='#FF9999'\" bgColor=\"#FF9999\" onClick=\"stop_audio()\"><b><font face=\"Arial,Helvetica\">"._QXZ("stop audio")." &nbsp; &nbsp; &nbsp; &nbsp; </font><span id=countdown_audio></span></b></td>";}
else
{echo "<td width=300 align=center id=\"stop_td\" bgColor=\"white\"> &nbsp; <span id=countdown_audio></span></td>";}
echo "</tr><tr><td width=300 height=5 align=center id=\"stop_td\" bgColor=\"white\"><span id=stop_progress></span></td>";
echo "</tr></table>\n";
echo "<table width=99% cellspacing=3 bgcolor=white>\n";
echo "<tr valign=top>\n";
$rc=0;
$rc_found=0;
$Rcolspan=1;
$tr_begin='';
$tr_end='';
while($rc < $ranks)
### generate display tables
$o=0; $columns=0; $row_count=0; $head_span_count=0;
while ($soundboardfiles_to_print > $o)
{
if ($Arank[$o] == $Uranks[$rc])
$temp_col_limit = ($columns_limit - $head_span_count);
if ( ( ($columns >= $columns_limit) and ($row_count < 1) ) or ( ($row_count > 0) and ($columns >= $temp_col_limit) ) )
{
if ($Rtally[$rc] == '0')
echo "</td></tr><tr valign=top><td colspan=$columns_limit valign=top> &nbsp; </td></tr><tr valign=top>\n";
if ($row_count > 0) {$head_span_count=0;}
$columns=0;
$row_count++;
}
$head_span='';
if ($Abutton_type[$o] == 'head2r')
{$head_span = " rowspan=3"; $head_span_count++;}
echo "<td valign=top$head_span><table cellspacing=3 bgcolor=white>\n";
$ro = ($o + 1);
$display_button='';
if (preg_match("/FILE/",$audio_display))
{$display_button .= " $Aaudio_filename[$o]";}
if (preg_match("/NAME/",$audio_display))
{
if (strlen($display_button) > 1)
{$display_button .= " - ";}
$display_button .= " $Aaudio_name[$o]";
}
$count_display="$ro. ";
if (preg_match("/HIDENUMBERS/",$audio_display))
{$count_display = '';}
$rc=0;
$rc_found=0;
$Rcolspan=1;
$tr_begin='';
$tr_end='';
while($rc < $ranks)
{
if ($Arank[$o] == $Uranks[$rc])
{
$tr_begin='<tr>';
}
if ($Rcount[$rc] == '1')
{
$Rcolspan = ($rank_max_count + 1);
$tr_end='</tr>';
}
else
{
$Rtally[$rc]++;
if ($Rtally[$rc] == 1)
{$Rcolspan=2;}
else
{$Rcolspan=1;}
if ($Rcount[$rc] == $Rtally[$rc])
if ($Rtally[$rc] == '0')
{
$Rdiff = ($rank_max_count - $Rtally[$rc]);
$Rcolspan = ($Rcolspan + $Rdiff);
$tr_begin='<tr>';
}
if ($Rcount[$rc] == '1')
{
$Rcolspan = ($rank_max_count + 1);
$tr_end='</tr>';
}
else
{
$Rtally[$rc]++;
if ($Rtally[$rc] == 1)
{$Rcolspan=2;}
else
{$Rcolspan=1;}
if ($Rcount[$rc] == $Rtally[$rc])
{
$Rdiff = ($rank_max_count - $Rtally[$rc]);
$Rcolspan = ($Rcolspan + $Rdiff);
$tr_end='</tr>';
}
}
}
$rc++;
}
$rc++;
}
$audio_length=0;
$stmt="SELECT audio_length from audio_store_details where audio_filename IN('$Aaudio_filename[$o]$wav','$Aaudio_filename[$o]$gsm') order by audio_length desc limit 1;";
if ($DB) {echo "$stmt\n";}
$rslty=mysql_to_mysqli($stmt, $link);
$al_ct = mysqli_num_rows($rslty);
if ($al_ct > 0)
{
$rowD=mysqli_fetch_row($rslty);
$audio_length = $rowD[0];
if ($audio_length < 1)
{$audio_length = '1';}
}
echo "$tr_begin<td onClick=\"click_cell('TOP---$Aaudio_filename[$o]---$Arank[$o]---$Alevel[$o]---$Ah_ord[$o]---$audio_length')\" onMouseOver=\"over_cell('TOP---$Aaudio_filename[$o]---$Arank[$o]---$Alevel[$o]---$Ah_ord[$o]---$audio_length')\" onMouseOut=\"out_cell('TOP---$Aaudio_filename[$o]---$Arank[$o]---$Alevel[$o]---$Ah_ord[$o]---$audio_length')\" id=\"TOP---$Aaudio_filename[$o]---$Arank[$o]---$Alevel[$o]---$Ah_ord[$o]---$audio_length\" align=\"left\" bgColor=\"#d6d6d6\" colspan=$Rcolspan nowrap>$ro. $display_button</td>";
echo "$tr_end\n";
if (strlen($tr_end)>4)
{
$stmt="SELECT audio_filename,audio_name,rank,level,parent_audio_filename,parent_rank,h_ord from vicidial_avatar_audio where avatar_id='$soundboard_id' and level='2' and parent_rank='$Arank[$o]' order by parent_audio_filename,rank,h_ord;";
# and parent_audio_filename='$Aaudio_filename[$o]' removed for multi-entries per line
$audio_length=0;
$stmt="SELECT audio_length from audio_store_details where audio_filename IN('$Aaudio_filename[$o]$wav','$Aaudio_filename[$o]$gsm') order by audio_length desc limit 1;";
if ($DB) {echo "$stmt\n";}
$rslty=mysql_to_mysqli($stmt, $link);
$Csoundboardfiles_to_print = mysqli_num_rows($rslty);
$Clevels = 2;
$Cranks=0;
$Crank_max_count=0;
$Co=0;
while ($Csoundboardfiles_to_print > $Co)
$al_ct = mysqli_num_rows($rslty);
if ($al_ct > 0)
{
$rowC=mysqli_fetch_row($rslty);
$Caudio_filename[$Co] = $rowC[0];
$Caudio_name[$Co] = $rowC[1];
$Crank[$Co] = $rowC[2];
$Clevel[$Co] = $rowC[3];
$Cparent_audio_filename[$Co] = $rowC[4];
$Cparent_rank[$Co] = $rowC[5];
$Ch_ord[$Co] = $rowC[6];
if ($Co == 0)
$rowD=mysqli_fetch_row($rslty);
$audio_length = $rowD[0];
if ($audio_length < 1)
{$audio_length = '1';}
}
if ( ($Abutton_type[$o] == 'header') or ($Abutton_type[$o] == 'head2r') )
{
echo "$tr_begin<td id=\"TOP---$Aaudio_filename[$o]---$Arank[$o]---$Alevel[$o]---$Ah_ord[$o]---$audio_length\" align=\"center\" bgColor=\"#000000\" colspan=$Rcolspan nowrap><font size=\"$Afont_size[$o]\" color=\"white\" face=\"Arial,Helvetica\">$Abold_start[$o]$Aitalic_start[$o] &nbsp; $count_display$Aaudio_name[$o] &nbsp; $Aitalic_end[$o]$Abold_end[$o]</font></td>";
echo "$tr_end\n";
}
else
{
if ($Abutton_type[$o] == 'space')
{
$CUranks[$Cranks] = $Crank[$Co];
$CRcount[$Cranks]=1;
$Crank_max_count=1;
$Cranks++;
echo "$tr_begin<td id=\"TOP---$Aaudio_filename[$o]---$Arank[$o]---$Alevel[$o]---$Ah_ord[$o]---$audio_length\" align=\"center\" colspan=$Rcolspan nowrap><font size=\"$Afont_size[$o]\" color=\"white\" face=\"Arial,Helvetica\">$Abold_start[$o]$Aitalic_start[$o] &nbsp; $Aitalic_end[$o]$Abold_end[$o]</font></td>";
echo "$tr_end\n";
}
else
{
echo "$tr_begin<td onClick=\"click_cell('TOP---$Aaudio_filename[$o]---$Arank[$o]---$Alevel[$o]---$Ah_ord[$o]---$audio_length')\" onMouseOver=\"over_cell('TOP---$Aaudio_filename[$o]---$Arank[$o]---$Alevel[$o]---$Ah_ord[$o]---$audio_length')\" onMouseOut=\"out_cell('TOP---$Aaudio_filename[$o]---$Arank[$o]---$Alevel[$o]---$Ah_ord[$o]---$audio_length')\" id=\"TOP---$Aaudio_filename[$o]---$Arank[$o]---$Alevel[$o]---$Ah_ord[$o]---$audio_length\" align=\"left\" bgColor=\"#d6d6d6\" colspan=$Rcolspan nowrap><font size=\"$Afont_size[$o]\" face=\"Arial,Helvetica\">$Abold_start[$o]$Aitalic_start[$o] &nbsp; $count_display$display_button &nbsp; $Aitalic_end[$o]$Abold_end[$o]</font></td>";
echo "$tr_end\n";
}
}
if (strlen($tr_end)>4)
{
$stmt="SELECT audio_filename,audio_name,rank,level,parent_audio_filename,parent_rank,h_ord,button_type,font_size from vicidial_avatar_audio where avatar_id='$soundboard_id' and level='2' and parent_rank='$Arank[$o]' order by parent_audio_filename,rank,h_ord;";
# and parent_audio_filename='$Aaudio_filename[$o]' removed for multi-entries per line
if ($DB) {echo "$stmt\n";}
$rslty=mysql_to_mysqli($stmt, $link);
$Csoundboardfiles_to_print = mysqli_num_rows($rslty);
$Clevels = 2;
$Cranks=0;
$Crank_max_count=0;
$Co=0;
while ($Csoundboardfiles_to_print > $Co)
{
$rowC=mysqli_fetch_row($rslty);
$Caudio_filename[$Co] = $rowC[0];
$Caudio_name[$Co] = $rowC[1];
$Crank[$Co] = $rowC[2];
$Clevel[$Co] = $rowC[3];
$Cparent_audio_filename[$Co] = $rowC[4];
$Cparent_rank[$Co] = $rowC[5];
$Ch_ord[$Co] = $rowC[6];
$Cbutton_type[$Co] = $rowC[7];
$Cfont_size[$Co] = $rowC[8];
$Cbold_start[$Co]=''; $Cbold_end[$Co]='';
if (preg_match("/B/",$Cfont_size[$Co]))
{$Cbold_start[$Co]='<B>'; $Cbold_end[$Co]='</B>'; $Cfont_size[$Co] = preg_replace("/B/",'',$Cfont_size[$Co]);}
$Citalic_start[$Co]=''; $Citalic_end[$Co]='';
if (preg_match("/I/",$Cfont_size[$Co]))
{$Citalic_start[$Co]='<I>'; $Citalic_end[$Co]='</I>'; $Cfont_size[$Co] = preg_replace("/B/",'',$Cfont_size[$Co]);}
if ($Co == 0)
{
$CUranks[$Cranks] = $Crank[$Co];
$CRcount[$Cranks]=1;
$Crank_max_count=1;
$Cranks++;
}
else
{
$rc=0;
$rc_found=0;
while($rc < $Cranks)
{
if ($Crank[$Co] == $CUranks[$rc])
{
$CRcount[$rc]++;
if ($Crank_max_count < $CRcount[$rc])
{$Crank_max_count = $CRcount[$rc];}
$rc_found++;
}
$rc++;
}
if ($rc_found < 1)
{
$CUranks[$Cranks] = $Crank[$Co];
$CRcount[$Cranks]=1;
$Cranks++;
}
}
$Co++;
}
### count number of entries for each unique rank
$Co=0;
while($Co < $Cranks)
{
$CRtally[$Co]=0;
if ($DB > 0) {echo "$CUranks[$Co] - $CRcount[$Co] - $Cranks - $Crank_max_count<BR>\n";}
$Co++;
}
if ($DB > 0) {echo _QXZ("Max rank count").": $Crank_max_count<br>\n";}
$Co=0;
while ($Csoundboardfiles_to_print > $Co)
{
$ro = ($Co + 1);
$display_button='';
if (preg_match("/FILE/",$audio_display))
{$display_button .= " $Caudio_filename[$Co]";}
if (preg_match("/NAME/",$audio_display))
{
if (strlen($display_button) > 1)
{$display_button .= " - ";}
$display_button .= " $Caudio_name[$Co]";
}
$count_display="$ro. ";
if (preg_match("/HIDENUMBERS/",$audio_display))
{$count_display = '';}
$rc=0;
$rc_found=0;
$CRcolspan=1;
$tr_begin='';
$tr_end='';
while($rc < $Cranks)
{
if ($Crank[$Co] == $CUranks[$rc])
{
$CRcount[$rc]++;
if ($Crank_max_count < $CRcount[$rc])
{$Crank_max_count = $CRcount[$rc];}
$rc_found++;
if ($CRtally[$rc] == '0')
{
$tr_begin='<tr><td nowrap width=10> &nbsp; </td>';
}
if ($CRcount[$rc] == '1')
{
$CRcolspan = $rank_max_count;
$tr_end='</tr>';
}
else
{
$CRtally[$rc]++;
$CRcolspan=1;
if ($CRcount[$rc] == $CRtally[$rc])
{
$CRdiff = ($rank_max_count - $CRtally[$rc]);
$CRcolspan = ($CRcolspan + $CRdiff);
$tr_end='</tr>';
}
}
}
$rc++;
}
if ($rc_found < 1)
$audio_length=0;
$stmt="SELECT audio_length from audio_store_details where audio_filename IN('$Caudio_filename[$Co]$wav','$Caudio_filename[$Co]$gsm') order by audio_length desc limit 1;";
if ($DB) {echo "$stmt\n";}
$rslty=mysql_to_mysqli($stmt, $link);
$al_ct = mysqli_num_rows($rslty);
if ($al_ct > 0)
{
$CUranks[$Cranks] = $Crank[$Co];
$CRcount[$Cranks]=1;
$Cranks++;
$rowD=mysqli_fetch_row($rslty);
$audio_length = $rowD[0];
if ($audio_length < 1)
{$audio_length = '1';}
}
}
$Co++;
}
### count number of entries for each unique rank
$Co=0;
while($Co < $Cranks)
{
$CRtally[$Co]=0;
if ($DB > 0) {echo "$CUranks[$Co] - $CRcount[$Co] - $Cranks - $Crank_max_count<BR>\n";}
$Co++;
}
if ($DB > 0) {echo _QXZ("Max rank count").": $Crank_max_count<br>\n";}
$Co=0;
while ($Csoundboardfiles_to_print > $Co)
{
$ro = ($Co + 1);
$display_button='';
if (preg_match("/FILE/",$audio_display))
{$display_button .= " $Caudio_filename[$Co]";}
if (preg_match("/NAME/",$audio_display))
{
if (strlen($display_button) > 1)
{$display_button .= " - ";}
$display_button .= " $Caudio_name[$Co]";
}
$rc=0;
$rc_found=0;
$CRcolspan=1;
$tr_begin='';
$tr_end='';
while($rc < $Cranks)
{
if ($Crank[$Co] == $CUranks[$rc])
if ( ($Cbutton_type[$Co] == 'header') or ($Cbutton_type[$Co] == 'head2r') )
{
if ($CRtally[$rc] == '0')
echo "$tr_begin<td id=\"MID---$Caudio_filename[$Co]---$Crank[$Co]---$Clevel[$Co]---$Cparent_audio_filename[$Co]---$Cparent_rank[$Co]---$Ch_ord[$Co]---$audio_length\" align=\"center\" bgColor=\"#000000\" colspan=$CRcolspan nowrap><font size=\"$Cfont_size[$Co]\" color=\"white\" face=\"Arial,Helvetica\">$Cbold_start[$Co]$Citalic_start[$Co] &nbsp; $count_display$Caudio_name[$Co] &nbsp; $Citalic_end[$Co]$Cbold_end[$Co]</font></td>";
echo "$tr_end\n";
}
else
{
if ($Cbutton_type[$Co] == 'space')
{
$tr_begin='<tr><td nowrap width=10> &nbsp; </td>';
}
if ($CRcount[$rc] == '1')
{
$CRcolspan = $rank_max_count;
$tr_end='</tr>';
echo "$tr_begin<td id=\"MID---$Caudio_filename[$Co]---$Crank[$Co]---$Clevel[$Co]---$Cparent_audio_filename[$Co]---$Cparent_rank[$Co]---$Ch_ord[$Co]---$audio_length\" align=\"center\" colspan=$CRcolspan nowrap><font size=\"$Cfont_size[$Co]\" color=\"white\" face=\"Arial,Helvetica\">$Cbold_start[$Co]$Citalic_start[$Co]$count_display &nbsp; $Citalic_end[$Co]$Cbold_end[$Co]</font></td>";
echo "$tr_end\n";
}
else
{
$CRtally[$rc]++;
$CRcolspan=1;
if ($CRcount[$rc] == $CRtally[$rc])
{
$CRdiff = ($rank_max_count - $CRtally[$rc]);
$CRcolspan = ($CRcolspan + $CRdiff);
$tr_end='</tr>';
}
echo "$tr_begin<td onClick=\"click_cell('MID---$Caudio_filename[$Co]---$Crank[$Co]---$Clevel[$Co]---$Cparent_audio_filename[$Co]---$Cparent_rank[$Co]---$Ch_ord[$Co]---$audio_length')\" onMouseOver=\"over_cell('MID---$Caudio_filename[$Co]---$Crank[$Co]---$Clevel[$Co]---$Cparent_audio_filename[$Co]---$Cparent_rank[$Co]---$Ch_ord[$Co]---$audio_length')\" onMouseOut=\"out_cell('MID---$Caudio_filename[$Co]---$Crank[$Co]---$Clevel[$Co]---$Cparent_audio_filename[$Co]---$Cparent_rank[$Co]---$Ch_ord[$Co]---$audio_length')\" id=\"MID---$Caudio_filename[$Co]---$Crank[$Co]---$Clevel[$Co]---$Cparent_audio_filename[$Co]---$Cparent_rank[$Co]---$Ch_ord[$Co]---$audio_length\" align=\"left\" bgColor=\"#e5e5e5\" colspan=$CRcolspan nowrap><font size=\"$Cfont_size[$Co]\" face=\"Arial,Helvetica\">$Cbold_start[$Co]$Citalic_start[$Co] &nbsp; $count_display$display_button &nbsp; $Citalic_end[$Co]$Cbold_end[$Co]</font></td>";
echo "$tr_end\n";
}
}
$rc++;
$Co++;
}
}
echo "</table></td>\n";
$o++;
$columns++;
}
echo "</tr>\n";
##### END columns01 layout #####
}
$audio_length=0;
$stmt="SELECT audio_length from audio_store_details where audio_filename IN('$Caudio_filename[$Co]$wav','$Caudio_filename[$Co]$gsm') order by audio_length desc limit 1;";
else
{
##### BEGIN default layout #####
echo "<center><table width=99% cellspacing=1 bgcolor=white>\n";
echo "<tr bgcolor=white>";
echo "<td rowspan=2 align=center colspan=2><b><font face=\"Arial,Helvetica\">$avatar_name</font></b></td>";
if (preg_match("/STOP/",$audio_functions))
{echo "<td width=300 align=center id=\"stop_td\" onMouseOver=\"this.bgColor='#FF0000'\" onMouseOut=\"this.bgColor='#FF9999'\" bgColor=\"#FF9999\" onClick=\"stop_audio()\"><b><font face=\"Arial,Helvetica\">"._QXZ("stop audio")." &nbsp; &nbsp; &nbsp; &nbsp; </font><span id=countdown_audio></span></b></td>";}
else
{echo "<td width=300 align=center id=\"stop_td\" bgColor=\"white\"> &nbsp; <span id=countdown_audio></span></td>";}
echo "</tr><tr><td width=300 height=5 align=center id=\"stop_td\" bgColor=\"white\"><span id=stop_progress></span></td>";
echo "</tr></table>\n";
echo "<table width=99% cellspacing=3 bgcolor=white>\n";
### generate display tables
$o=0;
while ($soundboardfiles_to_print > $o)
{
$ro = ($o + 1);
$display_button='';
if (preg_match("/FILE/",$audio_display))
{$display_button .= " $Aaudio_filename[$o]";}
if (preg_match("/NAME/",$audio_display))
{
if (strlen($display_button) > 1)
{$display_button .= " - ";}
$display_button .= " $Aaudio_name[$o]";
}
$count_display="$ro. ";
if (preg_match("/HIDENUMBERS/",$audio_display))
{$count_display = '';}
$rc=0;
$rc_found=0;
$Rcolspan=1;
$tr_begin='';
$tr_end='';
while($rc < $ranks)
{
if ($Arank[$o] == $Uranks[$rc])
{
if ($Rtally[$rc] == '0')
{
$tr_begin='<tr>';
}
if ($Rcount[$rc] == '1')
{
$Rcolspan = ($rank_max_count + 1);
$tr_end='</tr>';
}
else
{
$Rtally[$rc]++;
if ($Rtally[$rc] == 1)
{$Rcolspan=2;}
else
{$Rcolspan=1;}
if ($Rcount[$rc] == $Rtally[$rc])
{
$Rdiff = ($rank_max_count - $Rtally[$rc]);
$Rcolspan = ($Rcolspan + $Rdiff);
$tr_end='</tr>';
}
}
}
$rc++;
}
$audio_length=0;
$stmt="SELECT audio_length from audio_store_details where audio_filename IN('$Aaudio_filename[$o]$wav','$Aaudio_filename[$o]$gsm') order by audio_length desc limit 1;";
if ($DB) {echo "$stmt\n";}
$rslty=mysql_to_mysqli($stmt, $link);
$al_ct = mysqli_num_rows($rslty);
if ($al_ct > 0)
{
$rowD=mysqli_fetch_row($rslty);
$audio_length = $rowD[0];
if ($audio_length < 1)
{$audio_length = '1';}
}
if ( ($Abutton_type[$o] == 'header') or ($Abutton_type[$o] == 'head2r') )
{
echo "$tr_begin<td id=\"TOP---$Aaudio_filename[$o]---$Arank[$o]---$Alevel[$o]---$Ah_ord[$o]---$audio_length\" align=\"center\" bgColor=\"#000000\" colspan=$Rcolspan nowrap><font size=\"$Afont_size[$o]\" color=\"white\" face=\"Arial,Helvetica\">$Abold_start[$o]$Aitalic_start[$o]$count_display$Aaudio_name[$o]$Aitalic_end[$o]$Abold_end[$o]</font></td>";
echo "$tr_end\n";
}
else
{
if ($Abutton_type[$o] == 'space')
{
echo "$tr_begin<td id=\"TOP---$Aaudio_filename[$o]---$Arank[$o]---$Alevel[$o]---$Ah_ord[$o]---$audio_length\" align=\"center\" colspan=$Rcolspan nowrap><font size=\"$Afont_size[$o]\" color=\"white\" face=\"Arial,Helvetica\">$Abold_start[$o]$Aitalic_start[$o] &nbsp; $Aitalic_end[$o]$Abold_end[$o]</font></td>";
echo "$tr_end\n";
}
else
{
echo "$tr_begin<td onClick=\"click_cell('TOP---$Aaudio_filename[$o]---$Arank[$o]---$Alevel[$o]---$Ah_ord[$o]---$audio_length')\" onMouseOver=\"over_cell('TOP---$Aaudio_filename[$o]---$Arank[$o]---$Alevel[$o]---$Ah_ord[$o]---$audio_length')\" onMouseOut=\"out_cell('TOP---$Aaudio_filename[$o]---$Arank[$o]---$Alevel[$o]---$Ah_ord[$o]---$audio_length')\" id=\"TOP---$Aaudio_filename[$o]---$Arank[$o]---$Alevel[$o]---$Ah_ord[$o]---$audio_length\" align=\"left\" bgColor=\"#d6d6d6\" colspan=$Rcolspan nowrap><font size=\"$Afont_size[$o]\" face=\"Arial,Helvetica\">$Abold_start[$o]$Aitalic_start[$o]$count_display$display_button$Aitalic_end[$o]$Abold_end[$o]</font></td>";
echo "$tr_end\n";
}
}
if (strlen($tr_end)>4)
{
$stmt="SELECT audio_filename,audio_name,rank,level,parent_audio_filename,parent_rank,h_ord,button_type,font_size from vicidial_avatar_audio where avatar_id='$soundboard_id' and level='2' and parent_rank='$Arank[$o]' order by parent_audio_filename,rank,h_ord;";
# and parent_audio_filename='$Aaudio_filename[$o]' removed for multi-entries per line
if ($DB) {echo "$stmt\n";}
$rslty=mysql_to_mysqli($stmt, $link);
$al_ct = mysqli_num_rows($rslty);
if ($al_ct > 0)
$Csoundboardfiles_to_print = mysqli_num_rows($rslty);
$Clevels = 2;
$Cranks=0;
$Crank_max_count=0;
$Co=0;
while ($Csoundboardfiles_to_print > $Co)
{
$rowD=mysqli_fetch_row($rslty);
$audio_length = $rowD[0];
if ($audio_length < 1)
{$audio_length = '1';}
$rowC=mysqli_fetch_row($rslty);
$Caudio_filename[$Co] = $rowC[0];
$Caudio_name[$Co] = $rowC[1];
$Crank[$Co] = $rowC[2];
$Clevel[$Co] = $rowC[3];
$Cparent_audio_filename[$Co] = $rowC[4];
$Cparent_rank[$Co] = $rowC[5];
$Ch_ord[$Co] = $rowC[6];
$Cbutton_type[$Co] = $rowC[7];
$Cfont_size[$Co] = $rowC[8];
$Cbold_start[$Co]=''; $Cbold_end[$Co]='';
if (preg_match("/B/",$Cfont_size[$Co]))
{$Cbold_start[$Co]='<B>'; $Cbold_end[$Co]='</B>'; $Cfont_size[$Co] = preg_replace("/B/",'',$Cfont_size[$Co]);}
$Citalic_start[$Co]=''; $Citalic_end[$Co]='';
if (preg_match("/I/",$Cfont_size[$Co]))
{$Citalic_start[$Co]='<I>'; $Citalic_end[$Co]='</I>'; $Cfont_size[$Co] = preg_replace("/B/",'',$Cfont_size[$Co]);}
if ($Co == 0)
{
$CUranks[$Cranks] = $Crank[$Co];
$CRcount[$Cranks]=1;
$Crank_max_count=1;
$Cranks++;
}
else
{
$rc=0;
$rc_found=0;
while($rc < $Cranks)
{
if ($Crank[$Co] == $CUranks[$rc])
{
$CRcount[$rc]++;
if ($Crank_max_count < $CRcount[$rc])
{$Crank_max_count = $CRcount[$rc];}
$rc_found++;
}
$rc++;
}
if ($rc_found < 1)
{
$CUranks[$Cranks] = $Crank[$Co];
$CRcount[$Cranks]=1;
$Cranks++;
}
}
$Co++;
}
echo "$tr_begin<td onClick=\"click_cell('MID---$Caudio_filename[$Co]---$Crank[$Co]---$Clevel[$Co]---$Cparent_audio_filename[$Co]---$Cparent_rank[$Co]---$Ch_ord[$Co]---$audio_length')\" onMouseOver=\"over_cell('MID---$Caudio_filename[$Co]---$Crank[$Co]---$Clevel[$Co]---$Cparent_audio_filename[$Co]---$Cparent_rank[$Co]---$Ch_ord[$Co]---$audio_length')\" onMouseOut=\"out_cell('MID---$Caudio_filename[$Co]---$Crank[$Co]---$Clevel[$Co]---$Cparent_audio_filename[$Co]---$Cparent_rank[$Co]---$Ch_ord[$Co]---$audio_length')\" id=\"MID---$Caudio_filename[$Co]---$Crank[$Co]---$Clevel[$Co]---$Cparent_audio_filename[$Co]---$Cparent_rank[$Co]---$Ch_ord[$Co]---$audio_length\" align=\"left\" bgColor=\"#e5e5e5\" colspan=$CRcolspan nowrap>$ro. $display_button</td>";
echo "$tr_end\n";
### count number of entries for each unique rank
$Co=0;
while($Co < $Cranks)
{
$CRtally[$Co]=0;
if ($DB > 0) {echo "$CUranks[$Co] - $CRcount[$Co] - $Cranks - $Crank_max_count<BR>\n";}
$Co++;
}
if ($DB > 0) {echo _QXZ("Max rank count").": $Crank_max_count<br>\n";}
$Co++;
$Co=0;
while ($Csoundboardfiles_to_print > $Co)
{
$ro = ($Co + 1);
$display_button='';
if (preg_match("/FILE/",$audio_display))
{$display_button .= " $Caudio_filename[$Co]";}
if (preg_match("/NAME/",$audio_display))
{
if (strlen($display_button) > 1)
{$display_button .= " - ";}
$display_button .= " $Caudio_name[$Co]";
}
$count_display="$ro. ";
if (preg_match("/HIDENUMBERS/",$audio_display))
{$count_display = '';}
$rc=0;
$rc_found=0;
$CRcolspan=1;
$tr_begin='';
$tr_end='';
while($rc < $Cranks)
{
if ($Crank[$Co] == $CUranks[$rc])
{
if ($CRtally[$rc] == '0')
{
$tr_begin='<tr><td nowrap width=10> &nbsp; </td>';
}
if ($CRcount[$rc] == '1')
{
$CRcolspan = $rank_max_count;
$tr_end='</tr>';
}
else
{
$CRtally[$rc]++;
$CRcolspan=1;
if ($CRcount[$rc] == $CRtally[$rc])
{
$CRdiff = ($rank_max_count - $CRtally[$rc]);
$CRcolspan = ($CRcolspan + $CRdiff);
$tr_end='</tr>';
}
}
}
$rc++;
}
$audio_length=0;
$stmt="SELECT audio_length from audio_store_details where audio_filename IN('$Caudio_filename[$Co]$wav','$Caudio_filename[$Co]$gsm') order by audio_length desc limit 1;";
if ($DB) {echo "$stmt\n";}
$rslty=mysql_to_mysqli($stmt, $link);
$al_ct = mysqli_num_rows($rslty);
if ($al_ct > 0)
{
$rowD=mysqli_fetch_row($rslty);
$audio_length = $rowD[0];
if ($audio_length < 1)
{$audio_length = '1';}
}
if ( ($Cbutton_type[$Co] == 'header') or ($Cbutton_type[$Co] == 'head2r') )
{
echo "$tr_begin<td id=\"MID---$Caudio_filename[$Co]---$Crank[$Co]---$Clevel[$Co]---$Cparent_audio_filename[$Co]---$Cparent_rank[$Co]---$Ch_ord[$Co]---$audio_length\" align=\"center\" bgColor=\"#000000\" colspan=$CRcolspan nowrap><font size=\"$Cfont_size[$Co]\" color=\"white\" face=\"Arial,Helvetica\">$Cbold_start[$Co]$Citalic_start[$Co]$count_display$Caudio_name[$Co]$Citalic_end[$Co]$Cbold_end[$Co]</font></td>";
echo "$tr_end\n";
}
else
{
if ($Cbutton_type[$Co] == 'space')
{
echo "$tr_begin<td id=\"MID---$Caudio_filename[$Co]---$Crank[$Co]---$Clevel[$Co]---$Cparent_audio_filename[$Co]---$Cparent_rank[$Co]---$Ch_ord[$Co]---$audio_length\" align=\"center\" colspan=$CRcolspan nowrap><font size=\"$Cfont_size[$Co]\" color=\"white\" face=\"Arial,Helvetica\">$Cbold_start[$Co]$Citalic_start[$Co]$count_display &nbsp; $Citalic_end[$Co]$Cbold_end[$Co]</font></td>";
echo "$tr_end\n";
}
else
{
echo "$tr_begin<td onClick=\"click_cell('MID---$Caudio_filename[$Co]---$Crank[$Co]---$Clevel[$Co]---$Cparent_audio_filename[$Co]---$Cparent_rank[$Co]---$Ch_ord[$Co]---$audio_length')\" onMouseOver=\"over_cell('MID---$Caudio_filename[$Co]---$Crank[$Co]---$Clevel[$Co]---$Cparent_audio_filename[$Co]---$Cparent_rank[$Co]---$Ch_ord[$Co]---$audio_length')\" onMouseOut=\"out_cell('MID---$Caudio_filename[$Co]---$Crank[$Co]---$Clevel[$Co]---$Cparent_audio_filename[$Co]---$Cparent_rank[$Co]---$Ch_ord[$Co]---$audio_length')\" id=\"MID---$Caudio_filename[$Co]---$Crank[$Co]---$Clevel[$Co]---$Cparent_audio_filename[$Co]---$Cparent_rank[$Co]---$Ch_ord[$Co]---$audio_length\" align=\"left\" bgColor=\"#e5e5e5\" colspan=$CRcolspan nowrap><font size=\"$Cfont_size[$Co]\" face=\"Arial,Helvetica\">$Cbold_start[$Co]$Citalic_start[$Co]$count_display$display_button$Citalic_end[$Co]$Cbold_end[$Co]</font></td>";
echo "$tr_end\n";
}
}
$Co++;
}
}
$o++;
}
$o++;
##### END default layout #####
}
echo "</table><br>\n";
+37 -9
View File
@@ -3894,12 +3894,13 @@ else
# 161102-1040 - Fixed QM partition problem
# 161103-2204 - Added web_loader_phone_length and agent soundboards
# 161106-2058 - Added agent_script
# 161113-0900 - Changed script_id to 20 characters max, other small script changes
#
# make sure you have added a user to the vicidial_users MySQL table with at least user_level 9 to access this page the first time
$admin_version = '2.12-574a';
$build = '161106-2058';
$admin_version = '2.12-575a';
$build = '161113-0900';
$STARTtime = date("U");
$SQLdate = date("Y-m-d H:i:s");
@@ -7256,7 +7257,7 @@ if ($ADD==1111111)
}
else
{
echo "<tr bgcolor=#$SSstd_row4_background><td align=right>"._QXZ("Script ID").": </td><td align=left><input type=text name=script_id size=12 maxlength=10> ("._QXZ("no spaces or punctuation").")$NWB#scripts-script_id$NWE</td></tr>\n";
echo "<tr bgcolor=#$SSstd_row4_background><td align=right>"._QXZ("Script ID").": </td><td align=left><input type=text name=script_id size=22 maxlength=20> ("._QXZ("no spaces or punctuation").")$NWB#scripts-script_id$NWE</td></tr>\n";
}
echo "<tr bgcolor=#$SSstd_row4_background><td align=right>"._QXZ("Script Name").": </td><td align=left><input type=text name=script_name size=40 maxlength=50> ("._QXZ("title of the script").")$NWB#scripts-script_name$NWE</td></tr>\n";
echo "<tr bgcolor=#$SSstd_row4_background><td align=right>"._QXZ("Script Comments").": </td><td align=left><input type=text name=script_comments size=50 maxlength=255> $NWB#scripts-script_comments$NWE</td></tr>\n";
@@ -29656,7 +29657,7 @@ if ($ADD==3111111)
echo "</TABLE><BR><BR>\n";
echo "<B> "._QXZ("CAMPAIGNS USING THIS SCRIPT").":</B><BR>\n";
echo "<FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><B> "._QXZ("CAMPAIGNS USING THIS SCRIPT").":</B><BR>\n";
echo "<TABLE>\n";
$stmt="SELECT campaign_id,campaign_name from vicidial_campaigns where campaign_script='$script_id' $LOGallowed_campaignsSQL;";
@@ -29666,12 +29667,12 @@ if ($ADD==3111111)
while ($camps_to_print > $o)
{
$row=mysqli_fetch_row($rslt);
echo "<TR><TD><a href=\"$PHP_SELF?ADD=31&campaign_id=$row[0]\">$row[0] </a></TD><TD> $row[1]<BR></TD></TR>\n";
echo "<TR><TD><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><a href=\"$PHP_SELF?ADD=31&campaign_id=$row[0]\">$row[0] </a></TD><TD><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2> $row[1]<BR></TD></TR>\n";
$o++;
}
echo "</TABLE><BR><BR>\n";
echo "<B> "._QXZ("IN-GROUPS USING THIS SCRIPT").":</B><BR>\n";
echo "<FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><B> "._QXZ("IN-GROUPS USING THIS SCRIPT").":</B><BR>\n";
echo "<TABLE>\n";
$stmt="SELECT group_id,group_name from vicidial_inbound_groups where ingroup_script='$script_id' $LOGadmin_viewable_groupsSQL;";
@@ -29681,12 +29682,12 @@ if ($ADD==3111111)
while ($camps_to_print > $o)
{
$row=mysqli_fetch_row($rslt);
echo "<TR><TD><a href=\"$PHP_SELF?ADD=3111&group_id=$row[0]\">$row[0] </a></TD><TD> $row[1]<BR></TD></TR>\n";
echo "<TR><TD><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><a href=\"$PHP_SELF?ADD=3111&group_id=$row[0]\">$row[0] </a></TD><TD><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2> $row[1]<BR></TD></TR>\n";
$o++;
}
echo "</TABLE><BR><BR>\n";
echo "<B> "._QXZ("LIST OVERRIDES USING THIS SCRIPT").":</B><BR>\n";
echo "<FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><B> "._QXZ("LIST OVERRIDES USING THIS SCRIPT").":</B><BR>\n";
echo "<TABLE>\n";
$stmt="SELECT list_id,list_name from vicidial_lists where agent_script_override='$script_id' $LOGallowed_campaignsSQL;";
@@ -29696,10 +29697,37 @@ if ($ADD==3111111)
while ($camps_to_print > $o)
{
$row=mysqli_fetch_row($rslt);
echo "<TR><TD><a href=\"$PHP_SELF?ADD=311&list_id=$row[0]\">$row[0] </a></TD><TD> $row[1]<BR></TD></TR>\n";
echo "<TR><TD><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><a href=\"$PHP_SELF?ADD=311&list_id=$row[0]\">$row[0] </a></TD><TD> <FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2>$row[1]<BR></TD></TR>\n";
$o++;
}
if ( ($SSagent_soundboards > 0) and (preg_match("/vdc_soundboard_display/",$script_text)) )
{
$sb_check = preg_replace('~[\r\n]+~', '', $script_text);
$sb_lines = explode("vdc_soundboard_display",$sb_check);
$sb_content = explode('"',$sb_lines[1]);
$sb_id = explode('soundboard_id=',$sb_content[0]);
if ($DB) {echo "|$sb_check|\n|$sb_lines[1]|\n|$sb_content[0]|\n|$sb_id[1]|\n";}
echo "</TABLE><BR><BR>\n";
echo "<FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><B> "._QXZ("AGENT SOUNDBOARD USED WITHIN THIS SCRIPT").":</B><BR>\n";
echo "<TABLE>\n";
$stmt="SELECT avatar_id,avatar_name from vicidial_avatars where avatar_id='$sb_id[1]' $LOGadmin_viewable_groupsSQL;";
if ($DB) {echo "|$stmt|\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$sb_to_print = mysqli_num_rows($rslt);
$o=0;
while ($sb_to_print > $o)
{
$row=mysqli_fetch_row($rslt);
echo "<TR><TD><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2><a href=\"admin_soundboard.php?ADD=362111111111&soundboard_id=$row[0]\">$row[0] </a></TD><TD><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2> $row[1]<BR></TD></TR>\n";
$o++;
}
}
echo "</TABLE><TABLE><TR><TD><BR><BR><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2>\n";
if ($LOGdelete_scripts > 0)
{
echo "<br><br><a href=\"$PHP_SELF?ADD=5111111&script_id=$script_id\">"._QXZ("DELETE THIS SCRIPT")."</a>\n";
+269 -69
View File
@@ -16,10 +16,11 @@
# 160404-0937 - design changes
# 160429-1122 - Added admin_row_click option
# 161103-1605 - Updated code for new admin links
# 161111-1646 - Added HIDENUMBERS display option, Font size, button type and layout options
#
$admin_version = '2.12-10';
$build = '161103-1605';
$admin_version = '2.12-11';
$build = '161111-1646';
require("dbconnect_mysqli.php");
require("functions.php");
@@ -71,6 +72,10 @@ if (isset($_GET["source_avatar_id"])) {$source_avatar_id=$_GET["source_avatar_
elseif (isset($_POST["source_avatar_id"])) {$source_avatar_id=$_POST["source_avatar_id"];}
if (isset($_GET["copy_option"])) {$copy_option=$_GET["copy_option"];}
elseif (isset($_POST["copy_option"])) {$copy_option=$_POST["copy_option"];}
if (isset($_GET["soundboard_layout"])) {$soundboard_layout=$_GET["soundboard_layout"];}
elseif (isset($_POST["soundboard_layout"])) {$soundboard_layout=$_POST["soundboard_layout"];}
if (isset($_GET["columns_limit"])) {$columns_limit=$_GET["columns_limit"];}
elseif (isset($_POST["columns_limit"])) {$columns_limit=$_POST["columns_limit"];}
if (isset($_GET["ConFiRm"])) {$ConFiRm=$_GET["ConFiRm"];}
elseif (isset($_POST["ConFiRm"])) {$ConFiRm=$_POST["ConFiRm"];}
if (isset($_GET["SUBMIT"])) {$SUBMIT=$_GET["SUBMIT"];}
@@ -119,6 +124,7 @@ if ($non_latin < 1)
$rank = preg_replace('/[^0-9]/','',$rank);
$level = preg_replace('/[^0-9]/','',$level);
$parent_rank = preg_replace('/[^0-9]/','',$parent_rank);
$columns_limit = preg_replace('/[^0-9]/','',$columns_limit);
$active = preg_replace('/[^NY]/','',$active);
@@ -134,6 +140,7 @@ if ($non_latin < 1)
$audio_display = preg_replace('/[^-_0-9a-zA-Z]/', '',$audio_display);
$stage = preg_replace('/[^-_0-9a-zA-Z]/', '',$stage);
$user_group = preg_replace('/[^-_0-9a-zA-Z]/', '',$user_group);
$soundboard_layout = preg_replace('/[^-_0-9a-zA-Z]/', '',$soundboard_layout);
$avatar_name = preg_replace('/[^- \.\,\_0-9a-zA-Z]/','',$avatar_name);
$avatar_notes = preg_replace('/[^- \.\,\_0-9a-zA-Z]/','',$avatar_notes);
@@ -268,7 +275,7 @@ if ($action == "HELP")
</head>
<body bgcolor=white>
<center>
<TABLE WIDTH=98% BGCOLOR="#E6E6E6" cellpadding=2 cellspacing=4><TR><TD ALIGN=LEFT><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2>
<TABLE WIDTH=98% BGCOLOR="#E6E6E6" cellpadding=2 cellspacing=4><TR><TD ALIGN=LEFT><FONT FACE="ARIAL,HELVETICA" COLOR=BLACK SIZE=2>
<BR>
@@ -307,9 +314,14 @@ if ($action == "HELP")
<B><?php echo _QXZ("Audio Functions"); ?> -</B> <?php echo _QXZ("The list of audio functions that you want the soundboard to allow the agents to perform, separated by dashes. Currently non-functional. Default is PLAY-STOP-RESTART."); ?>
<BR>
<A NAME="soundboard-audio_functions">
<A NAME="soundboard-audio_display">
<BR>
<B><?php echo _QXZ("Audio Display"); ?> -</B> <?php echo _QXZ("What you want to show up to the agents on the buttons to play the audio, separated by dashes. FILE will display the filename of the audio file. NAME will display the Soundboard Name. You can choose either of these or both together. Default is FILE-NAME."); ?>
<B><?php echo _QXZ("Audio Display"); ?> -</B> <?php echo _QXZ("What you want to show up to the agents on the buttons to play the audio, separated by dashes. FILE will display the filename of the audio file. NAME will display the Soundboard Name. HIDENUMBERS will not show the number of each button on the agent screen. You can choose any of these or all together. Default is FILE-NAME."); ?>
<BR>
<A NAME="soundboard-soundboard_layout">
<BR>
<B><?php echo _QXZ("Layout"); ?> -</B> <?php echo _QXZ("The layout of the agent soundboard. The -default- layout is designed to build from the top down, filling the agent script frame. The -columns- layout is designed to use separated columns of buttons. Default is default. If you are using a -columns- layout, you can also set the maximum number of columns per row section with the Columns Limit setting"); ?>
<BR>
<A NAME="soundboard-user_group">
@@ -336,6 +348,16 @@ if ($action == "HELP")
<BR>
<B><?php echo _QXZ("Horz"); ?> -</B> <?php echo _QXZ("The horizontal order in which the audio file will be displayed to the agent."); ?>
<BR>
<A NAME="soundboard-type">
<BR>
<B><?php echo _QXZ("Type"); ?> -</B> <?php echo _QXZ("Either a clickable button that will play a sound, a header that will not be clickable and will only show the NAME of the entry or a space that will leave a blank spacer with no text. The header will also have white text on a black background. The -head2r- option is a header that will extend into the second row of columns below it."); ?>
<BR>
<A NAME="soundboard-font">
<BR>
<B><?php echo _QXZ("Font"); ?> -</B> <?php echo _QXZ("The font the button will be displayed with, the bigger the number, the bigger the font. A -B- in the option will bold the text. An -I- in the option will italicize the text."); ?>
<BR>
<A NAME="soundboard-level">
<BR>
@@ -346,6 +368,17 @@ if ($action == "HELP")
<BR>
<B><?php echo _QXZ("Add"); ?> -</B> <?php echo _QXZ("Put a new audio file on the primary level 1 or underneath a level 1 in the secondary level 2 position."); ?>
<BR>
<A NAME="soundboard-script_example">
<BR>
<B><?php echo _QXZ("Script Example"); ?> -</B>
<BR>
<DIV style="height:120px;width:550px;background:white;overflow:scroll;font-size:12px;font-family:sans-serif;" id=iframe_example>
&#60;iframe src="./vdc_soundboard_display.php?user=--A--user--B--&#38;pass=--A--pass--B--&#38;bcrypt=OFF&#38;soundboard_id=<?php echo $soundboard_id ?>" style="background-color:transparent;" scrolling="auto" frameborder="0" allowtransparency="true" width="100%" height="500"&#62;
&#60;/iframe&#62;
</DIV>
<BR>
</TD></TR></TABLE>
</BODY>
</HTML>
@@ -407,7 +440,7 @@ if ( (!preg_match("/soundboard/i",$SSactive_modules)) and ($SSagent_soundboards
}
$NWB = " &nbsp; <a href=\"javascript:openNewWindow('$PHP_SELF?action=HELP";
$NWB = " &nbsp; <a href=\"javascript:openNewWindow('$PHP_SELF?soundboard_id=$soundboard_id&action=HELP";
$NWE = "')\"><IMG SRC=\"help.gif\" WIDTH=20 HEIGHT=20 BORDER=0 ALT=\"HELP\" ALIGN=TOP></A>";
@@ -446,7 +479,15 @@ while ($UUgroups_to_print > $o)
$o++;
}
$LOGallowed_campaignsSQL='';
$whereLOGallowed_campaignsSQL='';
if ( (!preg_match('/\-ALL/i', $LOGallowed_campaigns)) )
{
$rawLOGallowed_campaignsSQL = preg_replace("/ -/",'',$LOGallowed_campaigns);
$rawLOGallowed_campaignsSQL = preg_replace("/ /","','",$rawLOGallowed_campaignsSQL);
$LOGallowed_campaignsSQL = "and campaign_id IN('$rawLOGallowed_campaignsSQL')";
$whereLOGallowed_campaignsSQL = "where campaign_id IN('$rawLOGallowed_campaignsSQL')";
}
######################
@@ -628,12 +669,12 @@ if ($ADD==262211111111)
{
echo "<br>"._QXZ("SOUNDBOARD ENTRY COPIED")."\n";
$stmt="INSERT INTO vicidial_avatars (avatar_id,avatar_name,avatar_notes,user_group,avatar_api_user,avatar_api_pass,audio_display,audio_functions,active) SELECT '$soundboard_id','$avatar_name',avatar_notes,user_group,avatar_api_user,avatar_api_pass,audio_display,audio_functions,active from vicidial_avatars where avatar_id='$source_avatar_id';";
$stmt="INSERT INTO vicidial_avatars (avatar_id,avatar_name,avatar_notes,user_group,avatar_api_user,avatar_api_pass,audio_display,audio_functions,active,soundboard_layout,columns_limit) SELECT '$soundboard_id','$avatar_name',avatar_notes,user_group,avatar_api_user,avatar_api_pass,audio_display,audio_functions,active,soundboard_layout,columns_limit from vicidial_avatars where avatar_id='$source_avatar_id';";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$affected_rows = mysqli_affected_rows($link);
$stmtA="INSERT INTO vicidial_avatar_audio (avatar_id,audio_filename,audio_name,rank,h_ord,level,parent_audio_filename,parent_rank) SELECT '$soundboard_id',audio_filename,audio_name,rank,h_ord,level,parent_audio_filename,parent_rank from vicidial_avatar_audio where avatar_id='$source_avatar_id';";
$stmtA="INSERT INTO vicidial_avatar_audio (avatar_id,audio_filename,audio_name,rank,h_ord,level,parent_audio_filename,parent_rank,button_type,font_size) SELECT '$soundboard_id',audio_filename,audio_name,rank,h_ord,level,parent_audio_filename,parent_rank,button_type,font_size from vicidial_avatar_audio where avatar_id='$source_avatar_id';";
if ($DB) {echo "$stmtA\n";}
$rslt=mysql_to_mysqli($stmtA, $link);
$affected_rowsA = mysqli_affected_rows($link);
@@ -669,7 +710,7 @@ if ($ADD==462111111111)
{echo "<br>"._QXZ("SOUNDBOARD ENTRY NOT MODIFIED - Please go back and look at the data you entered")."\n";}
else
{
$stmt="DELETE FROM vicidial_avatar_audio where avatar_id='$soundboard_id' and audio_filename='$audio_filename' and rank='$rank';";
$stmt="DELETE FROM vicidial_avatar_audio where avatar_id='$soundboard_id' and audio_filename='$audio_filename' and rank='$rank' and parent_audio_filename='$parent_filename';";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
@@ -690,12 +731,12 @@ if ($ADD==462111111111)
{echo "<br>"._QXZ("SOUNDBOARD ENTRY NOT MODIFIED - Please go back and look at the data you entered")."\n";}
else
{
$stmt="UPDATE vicidial_avatars set avatar_name='$avatar_name',avatar_notes='$avatar_notes',avatar_api_user='$avatar_api_user',avatar_api_pass='$avatar_api_pass',active='$active',audio_functions='$audio_functions',audio_display='$audio_display',user_group='$user_group' where avatar_id='$soundboard_id';";
$stmt="UPDATE vicidial_avatars set avatar_name='$avatar_name',avatar_notes='$avatar_notes',avatar_api_user='$avatar_api_user',avatar_api_pass='$avatar_api_pass',active='$active',audio_functions='$audio_functions',audio_display='$audio_display',user_group='$user_group',soundboard_layout='$soundboard_layout',columns_limit='$columns_limit' where avatar_id='$soundboard_id';";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$stmtLIST = $stmt;
$stmt="SELECT audio_filename,rank,audio_name,level from vicidial_avatar_audio where avatar_id='$soundboard_id' order by rank;";
$stmt="SELECT audio_filename,rank,audio_name,level,parent_audio_filename from vicidial_avatar_audio where avatar_id='$soundboard_id' order by rank;";
if ($DB) {echo "$stmt\n";}
$rsltx=mysql_to_mysqli($stmt, $link);
$soundboardfiles_to_print = mysqli_num_rows($rsltx);
@@ -708,6 +749,7 @@ if ($ADD==462111111111)
$avatarranks[$o] = $rowx[1];
$avatarnames[$o] = $rowx[2];
$avatarlevel[$o] = $rowx[3];
$avatarparent[$o] = $rowx[4];
$o++;
}
@@ -715,23 +757,48 @@ if ($ADD==462111111111)
while ($soundboardfiles_to_print > $o)
{
$new_rank=0;
$Ffilename = $avatarfiles[$o];
$NAMEfilename = '--NAME--' . $avatarfiles[$o];
$LEVELfilename = '--LEVEL--' . $avatarfiles[$o];
$OLDRANKfilename = '--OLDRANK--' . $avatarfiles[$o];
$HORDfilename = '--HORD--' . $avatarfiles[$o];
if (isset($_GET[$Ffilename])) {$new_rank=$_GET[$Ffilename];}
elseif (isset($_POST[$Ffilename])) {$new_rank=$_POST[$Ffilename];}
if (isset($_GET[$NAMEfilename])) {$new_name=$_GET[$NAMEfilename];}
elseif (isset($_POST[$NAMEfilename])) {$new_name=$_POST[$NAMEfilename];}
if (isset($_GET[$LEVELfilename])) {$new_level=$_GET[$LEVELfilename];}
elseif (isset($_POST[$LEVELfilename])) {$new_level=$_POST[$LEVELfilename];}
if (isset($_GET[$OLDRANKfilename])) {$old_rank=$_GET[$OLDRANKfilename];}
elseif (isset($_POST[$OLDRANKfilename])) {$old_rank=$_POST[$OLDRANKfilename];}
if (isset($_GET[$HORDfilename])) {$new_h_ord=$_GET[$HORDfilename];}
elseif (isset($_POST[$HORDfilename])) {$new_h_ord=$_POST[$HORDfilename];}
$new_name='';
$new_level='';
$old_rank='';
$new_h_ord='';
$new_button_type='';
$new_font_size='';
$Ffilename = $avatarfiles[$o] . '--' . $avatarlevel[$o] . '--' . $avatarranks[$o] . '--' . $avatarparent[$o];
$NAMEfilename = '--NAME--' . $avatarfiles[$o] . '--' . $avatarlevel[$o] . '--' . $avatarranks[$o] . '--' . $avatarparent[$o];
$LEVELfilename = '--LEVEL--' . $avatarfiles[$o] . '--' . $avatarlevel[$o] . '--' . $avatarranks[$o] . '--' . $avatarparent[$o];
$OLDRANKfilename = '--OLDRANK--' . $avatarfiles[$o] . '--' . $avatarlevel[$o] . '--' . $avatarranks[$o] . '--' . $avatarparent[$o];
$HORDfilename = '--HORD--' . $avatarfiles[$o] . '--' . $avatarlevel[$o] . '--' . $avatarranks[$o] . '--' . $avatarparent[$o];
$TYPEfilename = '--TYPE--' . $avatarfiles[$o] . '--' . $avatarlevel[$o] . '--' . $avatarranks[$o] . '--' . $avatarparent[$o];
$FONTfilename = '--FONT--' . $avatarfiles[$o] . '--' . $avatarlevel[$o] . '--' . $avatarranks[$o] . '--' . $avatarparent[$o];
if (isset($_GET["$Ffilename"])) {$new_rank=$_GET["$Ffilename"];}
elseif (isset($_POST["$Ffilename"])) {$new_rank=$_POST["$Ffilename"];}
if (isset($_GET["$NAMEfilename"])) {$new_name=$_GET["$NAMEfilename"];}
elseif (isset($_POST["$NAMEfilename"])) {$new_name=$_POST["$NAMEfilename"];}
if (isset($_GET["$LEVELfilename"])) {$new_level=$_GET["$LEVELfilename"];}
elseif (isset($_POST["$LEVELfilename"])) {$new_level=$_POST["$LEVELfilename"];}
if (isset($_GET["$OLDRANKfilename"])) {$old_rank=$_GET["$OLDRANKfilename"];}
elseif (isset($_POST["$OLDRANKfilename"])) {$old_rank=$_POST["$OLDRANKfilename"];}
if (isset($_GET["$HORDfilename"])) {$new_h_ord=$_GET["$HORDfilename"];}
elseif (isset($_POST["$HORDfilename"])) {$new_h_ord=$_POST["$HORDfilename"];}
if (isset($_GET["$TYPEfilename"])) {$new_button_type=$_GET["$TYPEfilename"];}
elseif (isset($_POST["$TYPEfilename"])) {$new_button_type=$_POST["$TYPEfilename"];}
if (isset($_GET["$FONTfilename"])) {$new_font_size=$_GET["$FONTfilename"];}
elseif (isset($_POST["$FONTfilename"])) {$new_font_size=$_POST["$FONTfilename"];}
if ($DB)
{
echo "update variable debug: ($avatarfiles[$o])\n";
echo "RANK: $Ffilename($new_rank)\n";
echo "NAME: $NAMEfilename($new_name)\n";
echo "LEVEL: $LEVELfilename($new_level)\n";
echo "OLDRANK: $OLDRANKfilename($old_rank)\n";
echo "HORD: $HORDfilename($new_h_ord)\n";
echo "TYPE: $TYPEfilename($new_button_type)\n";
echo "FONT: $FONTfilename($new_font_size)\n";
$stmt="UPDATE vicidial_avatar_audio set rank='$new_rank',audio_name='$new_name',h_ord='$new_h_ord' where avatar_id='$soundboard_id' and audio_filename='$avatarfiles[$o]' and rank='$old_rank' and level='$new_level';";
}
$stmt="UPDATE vicidial_avatar_audio set rank='$new_rank',audio_name='$new_name',h_ord='$new_h_ord',button_type='$new_button_type',font_size='$new_font_size' where avatar_id='$soundboard_id' and audio_filename='$avatarfiles[$o]' and rank='$old_rank' and level='$new_level' and parent_audio_filename='$avatarparent[$o]';";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$stmtLIST .= "|$stmt";
@@ -748,43 +815,48 @@ if ($ADD==462111111111)
if (strlen($audio_filename) > 0)
{
if (preg_match("/--PARENT----NEW-------X/i",$parent_filename[0]))
if (preg_match("/^\./",$audio_filename))
{echo "<br>"._QXZ("ERROR, Soundbords cannot use files that begin with a period").": $audio_filename";}
else
{
$stmt="SELECT count(*) from vicidial_avatar_audio where avatar_id='$soundboard_id' and level='1' and audio_filename='$audio_filename' and parent_audio_filename='';";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$row=mysqli_fetch_row($rslt);
$duplicate_first = $row[0];
if (preg_match("/--PARENT----NEW-------X/i",$parent_filename[0]))
{
$stmt="SELECT count(*) from vicidial_avatar_audio where avatar_id='$soundboard_id' and level='1' and audio_filename='$audio_filename' and parent_audio_filename='';";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$row=mysqli_fetch_row($rslt);
$duplicate_first = $row[0];
if ($duplicate_first > 0)
{echo "<br>"._QXZ("ERROR, Level One Audio File Duplicate, not added").": $audio_filename";}
if ($duplicate_first > 0)
{echo "<br>"._QXZ("ERROR, Level One Audio File Duplicate, not added").": $audio_filename";}
else
{
$stmt="SELECT count(*) from vicidial_avatar_audio where avatar_id='$soundboard_id' and level='1';";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$row=mysqli_fetch_row($rslt);
$new_rank = ($row[0] + 1);
$stmt="INSERT INTO vicidial_avatar_audio set audio_filename='$audio_filename',rank='$new_rank',avatar_id='$soundboard_id';";
}
}
else
{
$stmt="SELECT count(*) from vicidial_avatar_audio where avatar_id='$soundboard_id' and level='1';";
$parent_filename[0] = preg_replace("/--PARENT--/i",'',$parent_filename[0]);
$parent_array = explode('-----',$parent_filename[0]);
$stmt="SELECT count(*) from vicidial_avatar_audio where avatar_id='$soundboard_id' and parent_audio_filename='$parent_array[0]' and parent_rank='$parent_array[1]';";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$row=mysqli_fetch_row($rslt);
$new_rank = ($row[0] + 1);
$stmt="INSERT INTO vicidial_avatar_audio set audio_filename='$audio_filename',rank='$new_rank',avatar_id='$soundboard_id';";
$stmt="INSERT INTO vicidial_avatar_audio set audio_filename='$audio_filename',rank='$new_rank',parent_audio_filename='$parent_array[0]',parent_rank='$parent_array[1]',level='2',avatar_id='$soundboard_id';";
}
}
else
{
$parent_filename[0] = preg_replace("/--PARENT--/i",'',$parent_filename[0]);
$parent_array = explode('-----',$parent_filename[0]);
$stmt="SELECT count(*) from vicidial_avatar_audio where avatar_id='$soundboard_id' and parent_audio_filename='$parent_array[0]' and parent_rank='$parent_array[1]';";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$row=mysqli_fetch_row($rslt);
$new_rank = ($row[0] + 1);
$stmt="INSERT INTO vicidial_avatar_audio set audio_filename='$audio_filename',rank='$new_rank',parent_audio_filename='$parent_array[0]',parent_rank='$parent_array[1]',level='2',avatar_id='$soundboard_id';";
$stmtLIST .= "|$stmt";
}
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$stmtLIST .= "|$stmt";
}
echo "<br>"._QXZ("SOUNDBOARD ENTRY MODIFIED").": $soundboard_id\n";
@@ -886,7 +958,7 @@ if ($ADD==362111111111)
echo "<TABLE WIDTH=850><TR><TD>\n";
echo "<FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2>";
$stmt="SELECT avatar_id,avatar_name,avatar_notes,avatar_api_user,avatar_api_pass,active,audio_functions,user_group,audio_display from vicidial_avatars where avatar_id='$soundboard_id' $LOGadmin_viewable_groupsSQL;";
$stmt="SELECT avatar_id,avatar_name,avatar_notes,avatar_api_user,avatar_api_pass,active,audio_functions,user_group,audio_display,soundboard_layout,columns_limit from vicidial_avatars where avatar_id='$soundboard_id' $LOGadmin_viewable_groupsSQL;";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$row=mysqli_fetch_row($rslt);
@@ -899,6 +971,8 @@ if ($ADD==362111111111)
$audio_functions = $row[6];
$user_group = $row[7];
$audio_display = $row[8];
$soundboard_layout = $row[9];
$columns_limit = $row[10];
echo "<br>"._QXZ("MODIFY A SOUNDBOARDS RECORD").": $soundboard_id<form action=$PHP_SELF method=POST>\n";
echo "<input type=hidden name=ADD value=462111111111>\n";
@@ -914,6 +988,7 @@ if ($ADD==362111111111)
echo "<tr bgcolor=#". $SSstd_row2_background ."><td align=right>"._QXZ("Active").": </td><td align=left><select size=1 name=active><option value='N'>"._QXZ("N")."</option><option value='Y'>"._QXZ("Y")."</option><option value='$active' SELECTED>"._QXZ("$active")."</option></select>$NWB#soundboard-active$NWE</td></tr>\n";
echo "<tr bgcolor=#". $SSstd_row2_background ."><td align=right>"._QXZ("Audio Functions").": </td><td align=left><input type=text name=audio_functions size=70 maxlength=100 value=\"$audio_functions\">$NWB#soundboard-audio_functions$NWE</td></tr>\n";
echo "<tr bgcolor=#". $SSstd_row2_background ."><td align=right>"._QXZ("Audio Display").": </td><td align=left><input type=text name=audio_display size=70 maxlength=100 value=\"$audio_display\">$NWB#soundboard-audio_display$NWE</td></tr>\n";
echo "<tr bgcolor=#". $SSstd_row2_background ."><td align=right>"._QXZ("Layout").": </td><td align=left><select size=1 name=soundboard_layout><option value='default'>"._QXZ("default")."</option><option value='columns01'>"._QXZ("columns01")."</option><option value='$soundboard_layout' SELECTED>$soundboard_layout</option></select>$NWB#soundboard-soundboard_layout$NWE &nbsp; "._QXZ("Columns Limit").": <input type=text name=columns_limit size=3 maxlength=2 value=\"$columns_limit\"></td></tr>\n";
echo "<tr bgcolor=#". $SSstd_row2_background ."><td align=right>"._QXZ("Admin User Group").": </td><td align=left><select size=1 name=user_group>\n";
echo "$UUgroups_list";
echo "<option SELECTED value=\"$user_group\">$user_group</option>\n";
@@ -922,10 +997,10 @@ if ($ADD==362111111111)
echo "<tr bgcolor=#". $SSstd_row2_background ."><td align=center colspan=2>"._QXZ("Audio Files").": </td></tr>\n";
echo "<tr bgcolor=#". $SSstd_row2_background ."><td align=left colspan=2>\n";
echo "<table>\n";
echo "<tr><td nowrap align=center><B>"._QXZ("FILENAME")."</B></td><td nowrap align=center>"._QXZ("RANK")."</td><td nowrap align=center>"._QXZ("HORZ")."</td><td nowrap align=center>"._QXZ("level")."</td><td nowrap align=center>"._QXZ("add")."</td><td nowrap align=center>"._QXZ("name")."</td><td nowrap align=center><B> &nbsp; </B></td>";
echo "<tr><td nowrap align=center><B>"._QXZ("FILENAME")."</B></td><td nowrap align=center>"._QXZ("RANK")."</td><td nowrap align=center>"._QXZ("HORZ")."</td><td nowrap align=center>"._QXZ("type")."</td><td nowrap align=center>"._QXZ("FONT")."</td><td nowrap align=center>"._QXZ("level")."</td><td nowrap align=center>"._QXZ("add")."</td><td nowrap align=center>"._QXZ("name")."</td><td nowrap align=center><B> &nbsp; </B></td>";
##### get files listing for rank/delete options
$stmt="SELECT audio_filename,audio_name,rank,level,parent_audio_filename,parent_rank,h_ord from vicidial_avatar_audio where avatar_id='$soundboard_id' and level='1' order by rank,h_ord;";
$stmt="SELECT audio_filename,audio_name,rank,level,parent_audio_filename,parent_rank,h_ord,button_type,font_size from vicidial_avatar_audio where avatar_id='$soundboard_id' and level='1' order by rank,h_ord;";
if ($DB) {echo "$stmt\n";}
$rsltx=mysql_to_mysqli($stmt, $link);
$soundboardfiles_to_print = mysqli_num_rows($rsltx);
@@ -937,7 +1012,7 @@ if ($ADD==362111111111)
$ro = ($o + 1);
$rowx=mysqli_fetch_row($rsltx);
echo "<tr bgcolor=#". $SSstd_row1_background ."><td nowrap><B>$ro. $rowx[0]</B> &nbsp; </td>";
echo "<td nowrap><select size=1 name=$rowx[0]>";
echo "<td nowrap><select size=1 name=\"$rowx[0]--$rowx[3]--$rowx[2]--\">";
echo "<option SELECTED>$rowx[2]</option>\n";
$k=1;
while ($ranks > $k)
@@ -946,7 +1021,7 @@ if ($ADD==362111111111)
$k++;
}
echo "</select></td>\n";
echo "<td nowrap><select size=1 name=\"--HORD--$rowx[0]\">";
echo "<td nowrap><select size=1 name=\"--HORD--$rowx[0]--$rowx[3]--$rowx[2]--\">";
echo "<option SELECTED>$rowx[6]</option>\n";
$k=1;
while ($ranks > $k)
@@ -955,15 +1030,49 @@ if ($ADD==362111111111)
$k++;
}
echo "</select></td>\n";
echo "<td nowrap><select size=1 name=\"--TYPE--$rowx[0]--$rowx[3]--$rowx[2]--\">";
echo "<option SELECTED>$rowx[7]</option>\n";
echo "<option>button</option>\n";
echo "<option>header</option>\n";
echo "<option>head2r</option>\n";
echo "<option>space</option>\n";
echo "</select></td>\n";
echo "<td nowrap><select size=1 name=\"--FONT--$rowx[0]--$rowx[3]--$rowx[2]--\">";
echo "<option SELECTED>$rowx[8]</option>\n";
echo "<option>1</option>\n";
echo "<option>2</option>\n";
echo "<option>3</option>\n";
echo "<option>4</option>\n";
echo "<option>5</option>\n";
echo "<option>6</option>\n";
echo "<option>1B</option>\n";
echo "<option>2B</option>\n";
echo "<option>3B</option>\n";
echo "<option>4B</option>\n";
echo "<option>5B</option>\n";
echo "<option>6B</option>\n";
echo "<option>1I</option>\n";
echo "<option>2I</option>\n";
echo "<option>3I</option>\n";
echo "<option>4I</option>\n";
echo "<option>5I</option>\n";
echo "<option>6I</option>\n";
echo "<option>1BI</option>\n";
echo "<option>2BI</option>\n";
echo "<option>3BI</option>\n";
echo "<option>4BI</option>\n";
echo "<option>5BI</option>\n";
echo "<option>6BI</option>\n";
echo "</select></td>\n";
echo "<td nowrap><font size=2> $rowx[3] </td>";
echo "<td nowrap><input type=hidden name=\"--LEVEL--$rowx[0]\" id=\"--LEVEL--$rowx[0]\" value=\"$rowx[3]\">";
echo "<input type=hidden name=\"--OLDRANK--$rowx[0]\" id=\"--OLDRANK--$rowx[0]\" value=\"$rowx[2]\">";
echo "<td nowrap><input type=hidden name=\"--LEVEL--$rowx[0]--$rowx[3]--$rowx[2]--\" id=\"--LEVEL--$rowx[0]--$rowx[3]--$rowx[2]--\" value=\"$rowx[3]\">";
echo "<input type=hidden name=\"--OLDRANK--$rowx[0]--$rowx[3]--$rowx[2]--\" id=\"--OLDRANK--$rowx[0]--$rowx[3]--$rowx[2]--\" value=\"$rowx[2]\">";
echo " <input type=RADIO name=parent_filename[] id=parent_filename[] value=\"--PARENT--$rowx[0]-----$rowx[2]\"> </td>";
echo "<td nowrap> "._QXZ("Name").": <input type=text name=\"--NAME--$rowx[0]\" size=20 maxlength=100 value=\"$rowx[1]\"></td>";
echo "<td nowrap> "._QXZ("Name").": <input type=text name=\"--NAME--$rowx[0]--$rowx[3]--$rowx[2]--\" size=20 maxlength=100 value=\"$rowx[1]\"></td>";
echo "<td nowrap> - <a href=\"$PHP_SELF?ADD=462111111111&soundboard_id=$soundboard_id&stage=FILEDELETE&audio_filename=$rowx[0]&rank=$rowx[2]\">"._QXZ("DELETE")."</a></td></tr>\n";
echo "<td nowrap> - <a href=\"$PHP_SELF?ADD=462111111111&soundboard_id=$soundboard_id&stage=FILEDELETE&audio_filename=$rowx[0]&rank=$rowx[2]&level=$rowx[3]\">"._QXZ("DELETE")."</a></td></tr>\n";
$stmt="SELECT audio_filename,audio_name,rank,level,parent_audio_filename,parent_rank,h_ord from vicidial_avatar_audio where avatar_id='$soundboard_id' and level='2' and parent_audio_filename='$rowx[0]' and parent_rank='$rowx[2]' order by rank,h_ord;";
$stmt="SELECT audio_filename,audio_name,rank,level,parent_audio_filename,parent_rank,h_ord,button_type,font_size from vicidial_avatar_audio where avatar_id='$soundboard_id' and level='2' and parent_audio_filename='$rowx[0]' and parent_rank='$rowx[2]' order by rank,h_ord;";
if ($DB) {echo "$stmt\n";}
$rslty=mysql_to_mysqli($stmt, $link);
$Csoundboardfiles_to_print = mysqli_num_rows($rslty);
@@ -975,7 +1084,7 @@ if ($ADD==362111111111)
$ro = ($Co + 1);
$rowC=mysqli_fetch_row($rslty);
echo "<tr><td nowrap> &nbsp; &nbsp; $ro. $rowC[0] &nbsp; </td>";
echo "<td nowrap><font size=2> &nbsp; &nbsp; </font><select size=1 name=$rowC[0]>\n";
echo "<td nowrap><font size=2> &nbsp; &nbsp; </font><select size=1 name=\"$rowC[0]--$rowC[3]--$rowC[2]--$rowx[0]\">\n";
echo "<option SELECTED>$rowC[2]</option>\n";
$k=1;
while ($Cranks > $k)
@@ -984,7 +1093,7 @@ if ($ADD==362111111111)
$k++;
}
echo "</select></td>\n";
echo "<td nowrap><font size=2> &nbsp; &nbsp; </font><select size=1 name=\"--HORD--$rowC[0]\">\n";
echo "<td nowrap><font size=2> &nbsp; &nbsp; </font><select size=1 name=\"--HORD--$rowC[0]--$rowC[3]--$rowC[2]--$rowx[0]\">\n";
echo "<option SELECTED>$rowC[6]</option>\n";
$k=1;
while ($Cranks > $k)
@@ -993,13 +1102,46 @@ if ($ADD==362111111111)
$k++;
}
echo "</select></td>\n";
echo "<td nowrap><select size=1 name=\"--TYPE--$rowC[0]--$rowC[3]--$rowC[2]--$rowx[0]\">";
echo "<option SELECTED>$rowC[7]</option>\n";
echo "<option>button</option>\n";
echo "<option>header</option>\n";
echo "<option>space</option>\n";
echo "</select></td>\n";
echo "<td nowrap><select size=1 name=\"--FONT--$rowC[0]--$rowC[3]--$rowC[2]--$rowx[0]\">";
echo "<option SELECTED>$rowC[8]</option>\n";
echo "<option>1</option>\n";
echo "<option>2</option>\n";
echo "<option>3</option>\n";
echo "<option>4</option>\n";
echo "<option>5</option>\n";
echo "<option>6</option>\n";
echo "<option>1B</option>\n";
echo "<option>2B</option>\n";
echo "<option>3B</option>\n";
echo "<option>4B</option>\n";
echo "<option>5B</option>\n";
echo "<option>6B</option>\n";
echo "<option>1I</option>\n";
echo "<option>2I</option>\n";
echo "<option>3I</option>\n";
echo "<option>4I</option>\n";
echo "<option>5I</option>\n";
echo "<option>6I</option>\n";
echo "<option>1BI</option>\n";
echo "<option>2BI</option>\n";
echo "<option>3BI</option>\n";
echo "<option>4BI</option>\n";
echo "<option>5BI</option>\n";
echo "<option>6BI</option>\n";
echo "</select></td>\n";
echo "<td nowrap><font size=2> &nbsp; $rowC[3] </td>";
echo "<td nowrap><input type=hidden name=\"--LEVEL--$rowC[0]\" id=\"--LEVEL--$rowC[0]\" value=\"$rowC[3]\">";
echo "<input type=hidden name=\"--OLDRANK--$rowC[0]\" id=\"--OLDRANK--$rowC[0]\" value=\"$rowC[2]\">";
echo "<td nowrap><input type=hidden name=\"--LEVEL--$rowC[0]--$rowC[3]--$rowC[2]--$rowx[0]\" id=\"--LEVEL--$rowC[0]--$rowC[3]--$rowC[2]--$rowx[0]\" value=\"$rowC[3]\">";
echo "<input type=hidden name=\"--OLDRANK--$rowC[0]--$rowC[3]--$rowC[2]--$rowx[0]\" id=\"--OLDRANK--$rowC[0]--$rowC[3]--$rowC[2]--$rowx[0]\" value=\"$rowC[2]\">";
echo " &nbsp; </td>";
echo "<td nowrap> &nbsp; "._QXZ("Name").": <input type=text name=\"--NAME--$rowC[0]\" size=20 maxlength=100 value=\"$rowC[1]\"></td>\n";
echo "<td nowrap> &nbsp; "._QXZ("Name").": <input type=text name=\"--NAME--$rowC[0]--$rowC[3]--$rowC[2]--$rowx[0]\" size=20 maxlength=100 value=\"$rowC[1]\"></td>\n";
echo "<td nowrap> &nbsp; - <a href=\"$PHP_SELF?ADD=462111111111&soundboard_id=$soundboard_id&stage=FILEDELETE&audio_filename=$rowC[0]&rank=$rowC[2]\">"._QXZ("DELETE")."</a></td></tr>\n";
echo "<td nowrap> &nbsp; - <a href=\"$PHP_SELF?ADD=462111111111&soundboard_id=$soundboard_id&stage=FILEDELETE&audio_filename=$rowC[0]&rank=$rowC[2]&level=$rowC[3]&parent_filename=$rowx[0]\">"._QXZ("DELETE")."</a></td></tr>\n";
$Co++;
}
$o++;
@@ -1024,6 +1166,62 @@ if ($ADD==362111111111)
echo "<iframe src=\"/agc/vdc_soundboard_display.php?user=$PHP_AUTH_USER&pass=$PHP_AUTH_PW&bcrypt=OFF&soundboard_id=$soundboard_id&DB=$DB\" style=\"background-color:transparent;\" scrolling=\"auto\" frameborder=\"0\" allowtransparency=\"true\" width=\"100%\" height=\"500\">\n</iframe>\n";
echo "<BR><BR><B>"._QXZ("SCRIPTS USING THIS SOUNDBOARD").":</B><BR>\n";
echo "<TABLE>\n";
$scripts_SQL='';
$stmt="SELECT script_id,script_name from vicidial_scripts where script_text LIKE \"%$soundboard_id%\" and script_text LIKE \"%vdc_soundboard_display%\" $LOGadmin_viewable_groupsSQL;";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$scripts_to_print = mysqli_num_rows($rslt);
$o=0;
while ($scripts_to_print > $o)
{
$row=mysqli_fetch_row($rslt);
echo "<TR><TD><a href=\"admin.php?ADD=3111111&script_id=$row[0]\">$row[0] </a></TD><TD> $row[1]<BR></TD></TR>\n";
$scripts_SQL .= "'$row[0]',";
$o++;
}
$scripts_SQL = preg_replace("/,$/",'',$scripts_SQL);
echo "</TABLE><BR><BR>\n";
echo "<B>"._QXZ("CAMPAIGNS USING SCRIPTS THAT USE THIS SOUNDBOARD").":</B><BR>\n";
echo "<TABLE>\n";
$stmt="SELECT campaign_id,campaign_name from vicidial_campaigns where campaign_script IN($scripts_SQL) $LOGallowed_campaignsSQL;";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$camps_to_print = mysqli_num_rows($rslt);
$o=0;
while ($camps_to_print > $o)
{
$row=mysqli_fetch_row($rslt);
echo "<TR><TD><a href=\"admin.php?ADD=31&campaign_id=$row[0]\">$row[0] </a></TD><TD> $row[1]<BR></TD></TR>\n";
$o++;
}
echo "</TABLE><BR><BR>\n";
echo "<B>"._QXZ("INGROUPS USING SCRIPTS THAT USE THIS SOUNDBOARD").":</B><BR>\n";
echo "<TABLE>\n";
$stmt="SELECT group_id,group_name from vicidial_inbound_groups where ingroup_script IN($scripts_SQL) $LOGadmin_viewable_groupsSQL;";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$igs_to_print = mysqli_num_rows($rslt);
$o=0;
while ($igs_to_print > $o)
{
$row=mysqli_fetch_row($rslt);
echo "<TR><TD><a href=\"admin.php?ADD=3111&group_id=$row[0]\">$row[0] </a></TD><TD> $row[1]<BR></TD></TR>\n";
$o++;
}
echo "</TABLE><BR><BR>\n";
if ($modify_audiostore > 0)
{
echo "<br><br><a href=\"$PHP_SELF?ADD=562111111111&soundboard_id=$soundboard_id&DB=$DB&avatar_name=$avatar_name\">"._QXZ("DELETE SOUNDBOARD ENTRY")."</a>\n";
@@ -1050,7 +1248,7 @@ if ($ADD==162000000000)
echo "<TABLE><TR><TD>\n";
echo "<img src=\"images/icon_audiosoundboards.png\" width=42 height=42 align=left> <FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2>";
$stmt="SELECT avatar_id,avatar_name,active,avatar_api_user,user_group from vicidial_avatars where active IN('N','Y') $LOGadmin_viewable_groupsSQL order by avatar_id";
$stmt="SELECT avatar_id,avatar_name,active,avatar_api_user,user_group,soundboard_layout from vicidial_avatars where active IN('N','Y') $LOGadmin_viewable_groupsSQL order by avatar_id";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
$soundboard_to_print = mysqli_num_rows($rslt);
@@ -1061,6 +1259,7 @@ if ($ADD==162000000000)
echo "<td><font size=1 color=white align=left><B>"._QXZ("Soundboard ID")."</B></td>";
echo "<td><font size=1 color=white><B>"._QXZ("Soundboard Name")."</B></td>";
echo "<td><font size=1 color=white><B>"._QXZ("Active")."</B></td>";
echo "<td><font size=1 color=white><B>"._QXZ("Layout")."</B></td>";
echo "<td><font size=1 color=white><B>"._QXZ("API User")."</B></td>";
echo "<td><font size=1 color=white><B>"._QXZ("ADMIN GROUP")."</B></td>";
echo "<td align=center><font size=1 color=white><B>"._QXZ("MODIFY")."</B></td></tr>\n";
@@ -1080,6 +1279,7 @@ if ($ADD==162000000000)
echo "<tr $bgcolor"; if ($SSadmin_row_click > 0) {echo " onclick=\"window.document.location='$PHP_SELF?ADD=362111111111&soundboard_id=$row[0]&DB=$DB'\"";} echo "><td><a href=\"$PHP_SELF?ADD=362111111111&soundboard_id=$row[0]&DB=$DB\"><font size=1 color=black>$row[0]</a></td>";
echo "<td><font size=1>$row[1]</td>";
echo "<td><font size=1>$row[2]</td>";
echo "<td><font size=1>$row[5]</td>";
echo "<td><font size=1>$row[3]</td>";
echo "<td><font size=1>$row[4]</td>";
echo "<td align=center><font size=1><a href=\"$PHP_SELF?ADD=362111111111&soundboard_id=$row[0]&DB=$DB\">"._QXZ("MODIFY")."</a></td></tr>\n";
+1 -1
View File
@@ -3527,7 +3527,7 @@ if ($SSqc_features_active > 0)
<B><FONT SIZE=3>SCRIPTS TABLE</FONT></B><BR><BR>
<A NAME="scripts-script_id">
<BR>
<B><?php echo _QXZ("Script ID"); ?> -</B><?php echo _QXZ("This is the short name of a Script. This needs to be a unique identifier. Try not to use any spaces or punctuation for this field. max 10 characters, minimum of 2 characters."); ?>
<B><?php echo _QXZ("Script ID"); ?> -</B><?php echo _QXZ("This is the short name of a Script. This needs to be a unique identifier. Try not to use any spaces or punctuation for this field. max 20 characters, minimum of 2 characters."); ?>
<BR>
<A NAME="scripts-script_name">