Extensions: Option to delete voicemail when deleting extensions.
This commit is contained in:
parent
63d0582864
commit
8a6ba1fda2
|
|
@ -6120,26 +6120,4 @@ $text['label-contact']['ru-ru'] = "Контакт";
|
|||
$text['label-contact']['sv-se'] = "Kontakt";
|
||||
$text['label-contact']['uk-ua'] = "Контакт";
|
||||
|
||||
$text['message-delete_selection']['en-us'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['ar-eg'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['de-at'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['de-ch'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['de-de'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['el-gr'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['es-cl'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['es-mx'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['fr-ca'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['fr-fr'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['he-il'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['it-it'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['nl-nl'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['pl-pl'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['pt-br'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['pt-pt'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['ro-ro'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['ru-ru'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['sv-se'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['uk-ua'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['tr-tr'] = "What do you wish to delete?";
|
||||
|
||||
?>
|
||||
|
|
@ -1605,6 +1605,50 @@ $text['label-destination']['ru-ru'] = "Направления";
|
|||
$text['label-destination']['sv-se'] = "Destinationer";
|
||||
$text['label-destination']['uk-ua'] = "Номери";
|
||||
|
||||
$text['label-extension_and_voicemail']['en-us'] = "Extension & Voicemail";
|
||||
$text['label-extension_and_voicemail']['ar-eg'] = "";
|
||||
$text['label-extension_and_voicemail']['de-at'] = "Durchwahl, Mailbox"; //copied from de-de
|
||||
$text['label-extension_and_voicemail']['de-ch'] = "Durchwahl, Mailbox"; //copied from de-de
|
||||
$text['label-extension_and_voicemail']['de-de'] = "Durchwahl, Mailbox";
|
||||
$text['label-extension_and_voicemail']['el-gr'] = "Εσωτερικό Φωνοκιβώτιο";
|
||||
$text['label-extension_and_voicemail']['es-cl'] = "Extensión, Correo de Voz";
|
||||
$text['label-extension_and_voicemail']['es-mx'] = "Extensión, Correo de Voz"; //copied from es-cl
|
||||
$text['label-extension_and_voicemail']['fr-ca'] = "Extension, Messagerie vocale"; //copied from fr-fr
|
||||
$text['label-extension_and_voicemail']['fr-fr'] = "Extension, Messagerie vocale";
|
||||
$text['label-extension_and_voicemail']['he-il'] = "";
|
||||
$text['label-extension_and_voicemail']['it-it'] = "";
|
||||
$text['label-extension_and_voicemail']['nl-nl'] = "";
|
||||
$text['label-extension_and_voicemail']['pl-pl'] = "Numer wewnętrzny, Poczta głosowa";
|
||||
$text['label-extension_and_voicemail']['pt-br'] = "Ramal, Correio de voz";
|
||||
$text['label-extension_and_voicemail']['pt-pt'] = "Extensão, Correio de Voz";
|
||||
$text['label-extension_and_voicemail']['ro-ro'] = "";
|
||||
$text['label-extension_and_voicemail']['ru-ru'] = "Внутренний номер Голосовая почта";
|
||||
$text['label-extension_and_voicemail']['sv-se'] = "Anknytning Röstbrevlåda";
|
||||
$text['label-extension_and_voicemail']['uk-ua'] = "Розширення (Extention), Голосова пошта";
|
||||
$text['label-extension_and_voicemail']['tr-tr'] = "";
|
||||
|
||||
$text['label-extension_only']['en-us'] = "Extension Only";
|
||||
$text['label-extension_only']['ar-eg'] = "";
|
||||
$text['label-extension_only']['de-at'] = "Durchwahl"; //copied from de-de
|
||||
$text['label-extension_only']['de-ch'] = "Durchwahl"; //copied from de-de
|
||||
$text['label-extension_only']['de-de'] = "Durchwahl";
|
||||
$text['label-extension_only']['el-gr'] = "Εσωτερικό";
|
||||
$text['label-extension_only']['es-cl'] = "Extensión";
|
||||
$text['label-extension_only']['es-mx'] = "Extensión"; //copied from es-cl
|
||||
$text['label-extension_only']['fr-ca'] = "Extension"; //copied from fr-fr
|
||||
$text['label-extension_only']['fr-fr'] = "Extension";
|
||||
$text['label-extension_only']['he-il'] = "";
|
||||
$text['label-extension_only']['it-it'] = "";
|
||||
$text['label-extension_only']['nl-nl'] = "";
|
||||
$text['label-extension_only']['pl-pl'] = "Numer wewnętrzny";
|
||||
$text['label-extension_only']['pt-br'] = "Ramal";
|
||||
$text['label-extension_only']['pt-pt'] = "Extensão";
|
||||
$text['label-extension_only']['ro-ro'] = "";
|
||||
$text['label-extension_only']['ru-ru'] = "Внутренний номер";
|
||||
$text['label-extension_only']['sv-se'] = "Anknytning";
|
||||
$text['label-extension_only']['uk-ua'] = "Розширення (Extention)";
|
||||
$text['label-extension_only']['tr-tr'] = "";
|
||||
|
||||
$text['header-extensions']['en-us'] = "Extensions";
|
||||
$text['header-extensions']['ar-eg'] = "الأرقام الداخلية";
|
||||
$text['header-extensions']['de-at'] = "Nebenstellen"; //copied from de-de
|
||||
|
|
|
|||
|
|
@ -59,9 +59,13 @@
|
|||
$obj->toggle($extensions);
|
||||
}
|
||||
break;
|
||||
case 'delete':
|
||||
case 'delete_extension':
|
||||
case 'delete_extension_voicemail':
|
||||
if (permission_exists('extension_delete')) {
|
||||
$obj = new extension;
|
||||
if ($action == 'delete_extension_voicemail' && permission_exists('voicemail_delete')) {
|
||||
$obj->delete_voicemail = true;
|
||||
}
|
||||
$obj->delete($extensions);
|
||||
}
|
||||
break;
|
||||
|
|
@ -180,7 +184,22 @@
|
|||
unset($margin_left);
|
||||
}
|
||||
if (permission_exists('extension_delete') && $extensions) {
|
||||
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'style'=>$margin_left,'onclick'=>"if (confirm('".$text['confirm-delete']."')) { list_action_set('delete'); list_form_submit('form_list'); } else { this.blur(); return false; }"]);
|
||||
if (permission_exists('voicemail_delete')) {
|
||||
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'style'=>$margin_left,'link'=>'#modal-delete-options']);
|
||||
echo modal::create([
|
||||
'id'=>'modal-delete-options',
|
||||
'title'=>$text['modal_title-confirmation'],
|
||||
'message'=>$text['message-delete_selection'],
|
||||
'actions'=>
|
||||
button::create(['type'=>'button','label'=>$text['button-cancel'],'icon'=>'times','collapse'=>'hide-xs','onclick'=>'modal_close();']).
|
||||
button::create(['type'=>'button','label'=>$text['label-extension_and_voicemail'],'icon'=>'voicemail','style'=>'float: right; margin-left: 15px;','collapse'=>'never','onclick'=>"modal_close(); list_action_set('delete_extension_voicemail'); list_form_submit('form_list');"]).
|
||||
button::create(['type'=>'button','label'=>$text['label-extension_only'],'icon'=>'phone-alt','collapse'=>'never','style'=>'float: right;','onclick'=>"modal_close(); list_action_set('delete_extension'); list_form_submit('form_list');"])
|
||||
]);
|
||||
}
|
||||
else {
|
||||
echo button::create(['type'=>'button','label'=>$text['button-delete'],'icon'=>$_SESSION['theme']['button_icon_delete'],'style'=>$margin_left,'link'=>"#modal-delete"]);
|
||||
echo modal::create(['id'=>'modal-delete','type'=>'delete','actions'=>button::create(['type'=>'button','label'=>$text['button-continue'],'icon'=>'check','style'=>'float: right; margin-left: 15px;','collapse'=>'never','onclick'=>"modal_close(); list_action_set('delete_extension'); list_form_submit('form_list');"])]);
|
||||
}
|
||||
unset($margin_left);
|
||||
}
|
||||
echo "<form id='form_search' class='inline' method='get'>\n";
|
||||
|
|
|
|||
|
|
@ -72,6 +72,7 @@ if (!class_exists('extension')) {
|
|||
public $dial_string;
|
||||
public $enabled;
|
||||
public $description;
|
||||
public $delete_voicemail;
|
||||
|
||||
/**
|
||||
* declare private variables
|
||||
|
|
@ -577,7 +578,7 @@ if (!class_exists('extension')) {
|
|||
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
|
||||
$parameters['extension_uuid'] = $record['uuid'];
|
||||
$database = new database;
|
||||
$row = $database->execute($sql, $parameters, 'row');
|
||||
$row = $database->select($sql, $parameters, 'row');
|
||||
if (is_array($row) && @sizeof($row) != 0) {
|
||||
|
||||
//for use below and to clear cache (bottom)
|
||||
|
|
@ -597,13 +598,19 @@ if (!class_exists('extension')) {
|
|||
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/ring_groups/app_config.php")) {
|
||||
$array['ring_group_destinations'][$x]['destination_number'] = $extensions[$x]['extension'];
|
||||
$array['ring_group_destinations'][$x]['domain_uuid'] = $_SESSION['domain_uuid'];
|
||||
if ($extensions[$x]['number_alias'] != '') {
|
||||
if (is_numeric($extensions[$x]['number_alias'])) {
|
||||
$array['ring_group_destinations'][$y]['destination_number'] = $extensions[$x]['number_alias'];
|
||||
$array['ring_group_destinations'][$y]['domain_uuid'] = $_SESSION['domain_uuid'];
|
||||
}
|
||||
$y++;
|
||||
}
|
||||
|
||||
//create array of voicemail ids
|
||||
if ($this->delete_voicemail && permission_exists('voicemail_delete')) {
|
||||
if (is_numeric($extensions[$x]['extension'])) { $voicemail_ids[] = $extensions[$x]['extension']; }
|
||||
if (is_numeric($extensions[$x]['number_alias'])) { $voicemail_ids[] = $extensions[$x]['number_alias']; }
|
||||
}
|
||||
|
||||
}
|
||||
unset($sql, $parameters, $row);
|
||||
|
||||
|
|
@ -613,6 +620,34 @@ if (!class_exists('extension')) {
|
|||
//delete the checked rows
|
||||
if (is_array($array) && @sizeof($array) != 0) {
|
||||
|
||||
//delete extension voicemail boxes
|
||||
if (
|
||||
$this->delete_voicemail
|
||||
&& permission_exists('voicemail_delete')
|
||||
&& is_array($voicemail_ids)
|
||||
&& @sizeof($voicemail_ids)
|
||||
) {
|
||||
//retrieve voicemail uuids
|
||||
$sql = "select voicemail_uuid as uuid from v_voicemails ";
|
||||
$sql .= "where domain_uuid = :domain_uuid ";
|
||||
$sql .= "and voicemail_id in (".implode(',', $voicemail_ids).") ";
|
||||
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
|
||||
$database = new database;
|
||||
$rows = $database->select($sql, $parameters, 'all');
|
||||
if (is_array($rows) && @sizeof($rows) != 0) {
|
||||
foreach ($rows as $r => $row) {
|
||||
$voicemails[$r]['checked'] = 'true';
|
||||
$voicemails[$r]['uuid'] = $row['uuid'];
|
||||
}
|
||||
}
|
||||
|
||||
//delete voicemail boxes
|
||||
if (is_array($voicemails) && @sizeof($voicemails) != 0) {
|
||||
$obj = new voicemail;
|
||||
$obj->voicemail_delete($voicemails);
|
||||
}
|
||||
}
|
||||
|
||||
//grant temporary permissions
|
||||
$p = new permissions;
|
||||
$p->add('extension_user_delete', 'temp');
|
||||
|
|
|
|||
|
|
@ -152,6 +152,28 @@ $text['message-delete_failed']['sv-se'] = "Borttagning Misslyckades";
|
|||
$text['message-delete_failed']['uk-ua'] = "";
|
||||
$text['message-delete_failed']['tr-tr'] = "Silme İşlemi Başarısız Oldu";
|
||||
|
||||
$text['message-delete_selection']['en-us'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['ar-eg'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['de-at'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['de-ch'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['de-de'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['el-gr'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['es-cl'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['es-mx'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['fr-ca'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['fr-fr'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['he-il'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['it-it'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['nl-nl'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['pl-pl'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['pt-br'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['pt-pt'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['ro-ro'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['ru-ru'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['sv-se'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['uk-ua'] = "What do you wish to delete?";
|
||||
$text['message-delete_selection']['tr-tr'] = "What do you wish to delete?";
|
||||
|
||||
$text['message-add']['en-us'] = "Add Completed";
|
||||
$text['message-add']['ar-eg'] = "تمت الأضافة";
|
||||
$text['message-add']['de-at'] = "Erfolgreich hinzugefügt"; //copied from de-de
|
||||
|
|
|
|||
|
|
@ -2605,9 +2605,7 @@ $default_login = ($_REQUEST['login'] == 'default') ? true : false;
|
|||
|
||||
@media(min-width: 700px) {
|
||||
.modal-window > div {
|
||||
width: 40%;
|
||||
min-width: 400px;
|
||||
max-width: 500px;
|
||||
width: 500px;
|
||||
margin: 10% auto;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue