Moved app/edit to its own repo

This commit is contained in:
markjcrane
2019-12-04 01:16:00 +00:00
parent da7f8d0189
commit 46f3abcdce
35 changed files with 0 additions and 3825 deletions

View File

@@ -1,160 +0,0 @@
<?php
//application details
$apps[$x]['name'] = "Edit";
$apps[$x]['uuid'] = "17e628ee-ccfa-49c0-29ca-9894a0384b9b";
$apps[$x]['category'] = "Switch";
$apps[$x]['subcategory'] = "";
$apps[$x]['version'] = "1.0";
$apps[$x]['license'] = "Mozilla Public License 1.1";
$apps[$x]['url'] = "http://www.fusionpbx.com";
$apps[$x]['description']['en-us'] = "Script Editor can be used to edit lua, javascript or other scripts.";
$apps[$x]['description']['ar-eg'] = "";
$apps[$x]['description']['de-at'] = "Der Skript-Editor kann verwendet werden um Lua, Javaskripte oder andere Skripte zu bearbeiten.";
$apps[$x]['description']['de-ch'] = "";
$apps[$x]['description']['de-de'] = "Der Skript-Editor kann verwendet werden um Lua, Javaskripte oder andere Skripte zu bearbeiten.";
$apps[$x]['description']['es-cl'] = "Editor de scripts. Puede ser utilizado para editar archivos lua, javascript, etc.";
$apps[$x]['description']['es-mx'] = "";
$apps[$x]['description']['fr-ca'] = "";
$apps[$x]['description']['fr-fr'] = "L'éditeur permet de modifier les scripts lua, javascript ou autres.";
$apps[$x]['description']['he-il'] = "";
$apps[$x]['description']['it-it'] = "";
$apps[$x]['description']['nl-nl'] = "Script bewerker kan worden gebruik om lua, javascript of andere scripts aan te passen.";
$apps[$x]['description']['pl-pl'] = "";
$apps[$x]['description']['pt-br'] = "";
$apps[$x]['description']['pt-pt'] = "Editor de script pode ser usado para editar lua, javascript ou outros scripts.";
$apps[$x]['description']['ro-ro'] = "";
$apps[$x]['description']['ru-ru'] = "";
$apps[$x]['description']['sv-se'] = "";
$apps[$x]['description']['uk-ua'] = "";
//permission details
$y=0;
$apps[$x]['permissions'][$y]['name'] = "edit_view";
$apps[$x]['permissions'][$y]['menu']['uuid'] = "f1905fec-0577-daef-6045-59d09b7d3f94";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "edit_save";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "provision_editor_view";
$apps[$x]['permissions'][$y]['menu']['uuid'] = "57773542-a565-1a29-605d-6535da1a0870";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "provision_editor_save";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "xml_editor_view";
$apps[$x]['permissions'][$y]['menu']['uuid'] = "16013877-606a-2a05-7d6a-c1b215839131";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "xml_editor_save";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "php_editor_view";
$apps[$x]['permissions'][$y]['menu']['uuid'] = "eae1f2d6-789b-807c-cc26-44501e848693";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "php_editor_save";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "grammar_view";
$apps[$x]['permissions'][$y]['menu']['uuid'] = "c3db739e-89f9-0fa2-44ce-0f4c2ff43b1a";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "grammar_save";
$apps[$x]['permissions'][$y]['groups'][] = "admin";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "clip_view";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "clip_add";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "clip_edit";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['permissions'][$y]['name'] = "clip_delete";
$apps[$x]['permissions'][$y]['groups'][] = "superadmin";
//default settings
$y=0;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "2e217303-53ff-4dda-b74e-7f07738d83c2";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "editor";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "font_size";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "text";
$apps[$x]['default_settings'][$y]['default_setting_value'] = "14px";
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "false";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the default text size for Editor.";
$y++;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "8701cdca-64a1-4ff4-85a1-a09b1389ce92";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "editor";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "indent_guides";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "boolean";
$apps[$x]['default_settings'][$y]['default_setting_value'] = "false";
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "false";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the default visibility of indent guides for Editor.";
$y++;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "5669f8cf-f0a0-4d9c-ad75-caf239e9f5cd";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "editor";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "invisibles";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "boolean";
$apps[$x]['default_settings'][$y]['default_setting_value'] = "false";
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "false";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the default state of invisible characters for Editor.";
$y++;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "7122cb30-d557-4001-af94-d8d21f964a63";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "editor";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "line_numbers";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "boolean";
$apps[$x]['default_settings'][$y]['default_setting_value'] = "false";
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "false";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the default visibility of line numbers for Editor.";
$y++;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "7b403afd-e4d6-4e96-8c8f-2cf5d6187191";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "editor";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "theme";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "text";
$apps[$x]['default_settings'][$y]['default_setting_value'] = "Cobalt";
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "false";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the default theme.";
//schema details
$y=0;
$apps[$x]['db'][$y]['table']['name'] = "v_clips";
$apps[$x]['db'][$y]['table']['parent'] = "";
$z=0;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "clip_uuid";
$apps[$x]['db'][$y]['fields'][$z]['type']['pgsql'] = "uuid";
$apps[$x]['db'][$y]['fields'][$z]['type']['sqlite'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['type']['mysql'] = "char(36)";
$apps[$x]['db'][$y]['fields'][$z]['key']['type'] = "primary";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "clip_name";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "clip_folder";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "clip_text_start";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "clip_text_end";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "clip_order";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "";
$z++;
$apps[$x]['db'][$y]['fields'][$z]['name'] = "clip_desc";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "";
?>

View File

@@ -1,644 +0,0 @@
<?php
#This file was last reorganized on 19th of September 2017 08:54:24 AM UTC
$text['title-manage-files']['en-us'] = "Manage Files";
$text['title-manage-files']['ar-eg'] = "";
$text['title-manage-files']['de-at'] = "Dateien verwalten"; //copied from de-de
$text['title-manage-files']['de-ch'] = "Dateien verwalten"; //copied from de-de
$text['title-manage-files']['de-de'] = "Dateien verwalten";
$text['title-manage-files']['es-cl'] = "Gestión de Archivos";
$text['title-manage-files']['es-mx'] = "Gestión de Archivos"; //copied from es-cl
$text['title-manage-files']['fr-ca'] = "Gérer les Fichiers"; //copied from fr-fr
$text['title-manage-files']['fr-fr'] = "Gérer les Fichiers";
$text['title-manage-files']['he-il'] = "";
$text['title-manage-files']['it-it'] = "Gestione Files";
$text['title-manage-files']['nl-nl'] = "Beheer bestanden";
$text['title-manage-files']['pl-pl'] = "";
$text['title-manage-files']['pt-br'] = "Gerenciar Arquivos"; //copied from pt-pt
$text['title-manage-files']['pt-pt'] = "Gerenciar Arquivos";
$text['title-manage-files']['ro-ro'] = "";
$text['title-manage-files']['ru-ru'] = "Управление файлами";
$text['title-manage-files']['sv-se'] = "Hantera Filer";
$text['title-manage-files']['uk-ua'] = "";
$text['title-manage-clips']['en-us'] = "Manage Clips";
$text['title-manage-clips']['ar-eg'] = "";
$text['title-manage-clips']['de-at'] = "Clips verwalten"; //copied from de-de
$text['title-manage-clips']['de-ch'] = "Clips verwalten"; //copied from de-de
$text['title-manage-clips']['de-de'] = "Clips verwalten";
$text['title-manage-clips']['es-cl'] = "Gestión de Clips";
$text['title-manage-clips']['es-mx'] = "Gestión de Clips"; //copied from es-cl
$text['title-manage-clips']['fr-ca'] = "Gérer les clips"; //copied from fr-fr
$text['title-manage-clips']['fr-fr'] = "Gérer les clips";
$text['title-manage-clips']['he-il'] = "";
$text['title-manage-clips']['it-it'] = "Gestione Clips";
$text['title-manage-clips']['nl-nl'] = "Beheer Clips";
$text['title-manage-clips']['pl-pl'] = "";
$text['title-manage-clips']['pt-br'] = "Gerir Clipes"; //copied from pt-pt
$text['title-manage-clips']['pt-pt'] = "Gerir Clipes";
$text['title-manage-clips']['ro-ro'] = "";
$text['title-manage-clips']['ru-ru'] = "Управление клипами";
$text['title-manage-clips']['sv-se'] = "Hantera Klipp";
$text['title-manage-clips']['uk-ua'] = "";
$text['label-folder']['en-us'] = "Folder:";
$text['label-folder']['ar-eg'] = "";
$text['label-folder']['de-at'] = "Ordner:"; //copied from de-de
$text['label-folder']['de-ch'] = "Ordner:"; //copied from de-de
$text['label-folder']['de-de'] = "Ordner:";
$text['label-folder']['es-cl'] = "Carpeta:";
$text['label-folder']['es-mx'] = "Carpeta:"; //copied from es-cl
$text['label-folder']['fr-ca'] = "Dossier:"; //copied from fr-fr
$text['label-folder']['fr-fr'] = "Dossier:";
$text['label-folder']['he-il'] = "";
$text['label-folder']['it-it'] = "Cartella:";
$text['label-folder']['nl-nl'] = "Map:";
$text['label-folder']['pl-pl'] = "";
$text['label-folder']['pt-br'] = "Ficheiro:"; //copied from pt-pt
$text['label-folder']['pt-pt'] = "Ficheiro:";
$text['label-folder']['ro-ro'] = "";
$text['label-folder']['ru-ru'] = "Папка:";
$text['label-folder']['sv-se'] = "Mapp:";
$text['label-folder']['uk-ua'] = "";
$text['label-before-selection']['en-us'] = "Before Selection:";
$text['label-before-selection']['ar-eg'] = "";
$text['label-before-selection']['de-at'] = "Vor der Auswahl:"; //copied from de-de
$text['label-before-selection']['de-ch'] = "Vor der Auswahl:"; //copied from de-de
$text['label-before-selection']['de-de'] = "Vor der Auswahl:";
$text['label-before-selection']['es-cl'] = "Antes de seleccionar:";
$text['label-before-selection']['es-mx'] = "Antes de seleccionar:"; //copied from es-cl
$text['label-before-selection']['fr-ca'] = "Avant la Selection:"; //copied from fr-fr
$text['label-before-selection']['fr-fr'] = "Avant la Selection:";
$text['label-before-selection']['he-il'] = "";
$text['label-before-selection']['it-it'] = "Precedente Selezione:";
$text['label-before-selection']['nl-nl'] = "Voor selectie:";
$text['label-before-selection']['pl-pl'] = "";
$text['label-before-selection']['pt-br'] = "Antes da Selecção:"; //copied from pt-pt
$text['label-before-selection']['pt-pt'] = "Antes da Selecção:";
$text['label-before-selection']['ro-ro'] = "";
$text['label-before-selection']['ru-ru'] = "Перед выбором:";
$text['label-before-selection']['sv-se'] = "Före Val:";
$text['label-before-selection']['uk-ua'] = "";
$text['label-after-selection']['en-us'] = "After Selection:";
$text['label-after-selection']['ar-eg'] = "";
$text['label-after-selection']['de-at'] = "Nach der Auswahl:"; //copied from de-de
$text['label-after-selection']['de-ch'] = "Nach der Auswahl:"; //copied from de-de
$text['label-after-selection']['de-de'] = "Nach der Auswahl:";
$text['label-after-selection']['es-cl'] = "Despues de seleccionar:";
$text['label-after-selection']['es-mx'] = "Despues de seleccionar:"; //copied from es-cl
$text['label-after-selection']['fr-ca'] = "Après la Selection:"; //copied from fr-fr
$text['label-after-selection']['fr-fr'] = "Après la Selection:";
$text['label-after-selection']['he-il'] = "";
$text['label-after-selection']['it-it'] = "Successiva Selezione:";
$text['label-after-selection']['nl-nl'] = "Na Selectie:";
$text['label-after-selection']['pl-pl'] = "";
$text['label-after-selection']['pt-br'] = "Depois da Selecção:"; //copied from pt-pt
$text['label-after-selection']['pt-pt'] = "Depois da Selecção:";
$text['label-after-selection']['ro-ro'] = "";
$text['label-after-selection']['ru-ru'] = "После выбора:";
$text['label-after-selection']['sv-se'] = "Efter Val:";
$text['label-after-selection']['uk-ua'] = "";
$text['label-notes']['en-us'] = "Notes:";
$text['label-notes']['ar-eg'] = "";
$text['label-notes']['de-at'] = "Notiz:"; //copied from de-de
$text['label-notes']['de-ch'] = "Notiz:"; //copied from de-de
$text['label-notes']['de-de'] = "Notiz:";
$text['label-notes']['es-cl'] = "Notas:";
$text['label-notes']['es-mx'] = "Notas:"; //copied from es-cl
$text['label-notes']['fr-ca'] = "Remarques:"; //copied from fr-fr
$text['label-notes']['fr-fr'] = "Remarques:";
$text['label-notes']['he-il'] = "";
$text['label-notes']['it-it'] = "Note:";
$text['label-notes']['nl-nl'] = "Notitie:";
$text['label-notes']['pl-pl'] = "";
$text['label-notes']['pt-br'] = "Notas:"; //copied from pt-pt
$text['label-notes']['pt-pt'] = "Notas:";
$text['label-notes']['ro-ro'] = "";
$text['label-notes']['ru-ru'] = "Заметки:";
$text['label-notes']['sv-se'] = "Noteringar:";
$text['label-notes']['uk-ua'] = "";
$text['message-give-up']['en-us'] = "Giving up :( Cannot create an XMLHTTP instance";
$text['message-give-up']['ar-eg'] = "";
$text['message-give-up']['de-at'] = "Vorgang abgebrochen :( Konnte XMLHTTP Instanz nich erzeugen"; //copied from de-de
$text['message-give-up']['de-ch'] = "Vorgang abgebrochen :( Konnte XMLHTTP Instanz nich erzeugen"; //copied from de-de
$text['message-give-up']['de-de'] = "Vorgang abgebrochen :( Konnte XMLHTTP Instanz nich erzeugen";
$text['message-give-up']['es-cl'] = "Cancelando, no se puede crear una instancia XMLHTTP";
$text['message-give-up']['es-mx'] = "Cancelando, no se puede crear una instancia XMLHTTP"; //copied from es-cl
$text['message-give-up']['fr-ca'] = "Abandonner :( Ne peut pas créer un instance XMLHTTP"; //copied from fr-fr
$text['message-give-up']['fr-fr'] = "Abandonner :( Ne peut pas créer un instance XMLHTTP";
$text['message-give-up']['he-il'] = "";
$text['message-give-up']['it-it'] = "Abbandono :( Non riesco a creare un'instanza XMLHTTP";
$text['message-give-up']['nl-nl'] = "Opgegeven :( kan geen XMLHTTP verbinding maken";
$text['message-give-up']['pl-pl'] = "";
$text['message-give-up']['pt-br'] = "Desistindo :( Não é possível criar uma instância XMLHTTP"; //copied from pt-pt
$text['message-give-up']['pt-pt'] = "Desistindo :( Não é possível criar uma instância XMLHTTP";
$text['message-give-up']['ro-ro'] = "";
$text['message-give-up']['ru-ru'] = "Операция отменена :( Невозможно создать XMLHTTP экземпляр";
$text['message-give-up']['sv-se'] = "Ger upp :( Kan inte skapa en XMLHTTP instans";
$text['message-give-up']['uk-ua'] = "";
$text['message-problem']['en-us'] = "There was a problem with the request.";
$text['message-problem']['ar-eg'] = "";
$text['message-problem']['de-at'] = "Es gab ein Problem mit der Anfrage."; //copied from de-de
$text['message-problem']['de-ch'] = "Es gab ein Problem mit der Anfrage."; //copied from de-de
$text['message-problem']['de-de'] = "Es gab ein Problem mit der Anfrage.";
$text['message-problem']['es-cl'] = "Hubo un problema con la petición.";
$text['message-problem']['es-mx'] = "Hubo un problema con la petición."; //copied from es-cl
$text['message-problem']['fr-ca'] = "Il y avait un problème avec la demande."; //copied from fr-fr
$text['message-problem']['fr-fr'] = "Il y avait un problème avec la demande.";
$text['message-problem']['he-il'] = "";
$text['message-problem']['it-it'] = "C'è stato un problema con la richiesta.";
$text['message-problem']['nl-nl'] = "Er was een prbleem emt de aanvraag";
$text['message-problem']['pl-pl'] = "";
$text['message-problem']['pt-br'] = "Ocorreu um problema com o pedido."; //copied from pt-pt
$text['message-problem']['pt-pt'] = "Ocorreu um problema com o pedido.";
$text['message-problem']['ro-ro'] = "";
$text['message-problem']['ru-ru'] = "Возникла проблема с запросом.";
$text['message-problem']['sv-se'] = "Det uppstod ett problem med begäran.";
$text['message-problem']['uk-ua'] = "";
$text['label-clip-library']['en-us'] = "Clip Library";
$text['label-clip-library']['ar-eg'] = "";
$text['label-clip-library']['de-at'] = "Clip Bibliothek"; //copied from de-de
$text['label-clip-library']['de-ch'] = "Clip Bibliothek"; //copied from de-de
$text['label-clip-library']['de-de'] = "Clip Bibliothek";
$text['label-clip-library']['es-cl'] = "Librería de Clips";
$text['label-clip-library']['es-mx'] = "Librería de Clips"; //copied from es-cl
$text['label-clip-library']['fr-ca'] = "Clip Libraries"; //copied from fr-fr
$text['label-clip-library']['fr-fr'] = "Clip Libraries";
$text['label-clip-library']['he-il'] = "";
$text['label-clip-library']['it-it'] = "Libreria Clip";
$text['label-clip-library']['nl-nl'] = "Clip bibliotheek";
$text['label-clip-library']['pl-pl'] = "";
$text['label-clip-library']['pt-br'] = "Biblioteca de Clips"; //copied from pt-pt
$text['label-clip-library']['pt-pt'] = "Biblioteca de Clips";
$text['label-clip-library']['ro-ro'] = "";
$text['label-clip-library']['ru-ru'] = "Библиотека клипов";
$text['label-clip-library']['sv-se'] = "Klipp Bibliotek";
$text['label-clip-library']['uk-ua'] = "";
$text['label-selected-clip']['en-us'] = "Selected Clip";
$text['label-selected-clip']['ar-eg'] = "";
$text['label-selected-clip']['de-at'] = "Ausgewählter Clip"; //copied from de-de
$text['label-selected-clip']['de-ch'] = "Ausgewählter Clip"; //copied from de-de
$text['label-selected-clip']['de-de'] = "Ausgewählter Clip";
$text['label-selected-clip']['es-cl'] = "Clip Seleccionado";
$text['label-selected-clip']['es-mx'] = "Clip Seleccionado"; //copied from es-cl
$text['label-selected-clip']['fr-ca'] = "Clip Sélectionné"; //copied from fr-fr
$text['label-selected-clip']['fr-fr'] = "Clip Sélectionné";
$text['label-selected-clip']['he-il'] = "";
$text['label-selected-clip']['it-it'] = "Clip Selezionate";
$text['label-selected-clip']['nl-nl'] = "Gekozen Clip";
$text['label-selected-clip']['pl-pl'] = "";
$text['label-selected-clip']['pt-br'] = "Clipe Selecionado"; //copied from pt-pt
$text['label-selected-clip']['pt-pt'] = "Clipe Selecionado";
$text['label-selected-clip']['ro-ro'] = "";
$text['label-selected-clip']['ru-ru'] = "Выбранный клип";
$text['label-selected-clip']['sv-se'] = "";
$text['label-selected-clip']['uk-ua'] = "";
$text['button-edit-clip']['en-us'] = "Edit Clip";
$text['button-edit-clip']['ar-eg'] = "";
$text['button-edit-clip']['de-at'] = "Clip bearbeiten"; //copied from de-de
$text['button-edit-clip']['de-ch'] = "Clip bearbeiten"; //copied from de-de
$text['button-edit-clip']['de-de'] = "Clip bearbeiten";
$text['button-edit-clip']['es-cl'] = "Editar Clip";
$text['button-edit-clip']['es-mx'] = "Editar Clip"; //copied from es-cl
$text['button-edit-clip']['fr-ca'] = "Editer le Clip"; //copied from fr-fr
$text['button-edit-clip']['fr-fr'] = "Editer le Clip";
$text['button-edit-clip']['he-il'] = "";
$text['button-edit-clip']['it-it'] = "Modifica Clip";
$text['button-edit-clip']['nl-nl'] = "Bewerk Clip";
$text['button-edit-clip']['pl-pl'] = "";
$text['button-edit-clip']['pt-br'] = "Editar Clip"; //copied from pt-pt
$text['button-edit-clip']['pt-pt'] = "Editar Clip";
$text['button-edit-clip']['ro-ro'] = "";
$text['button-edit-clip']['ru-ru'] = "Редактировать клип";
$text['button-edit-clip']['sv-se'] = "Ändra Klipp";
$text['button-edit-clip']['uk-ua'] = "";
$text['button-add-clip']['en-us'] = "Add Clip";
$text['button-add-clip']['ar-eg'] = "";
$text['button-add-clip']['de-at'] = "Clip hinzufügen"; //copied from de-de
$text['button-add-clip']['de-ch'] = "Clip hinzufügen"; //copied from de-de
$text['button-add-clip']['de-de'] = "Clip hinzufügen";
$text['button-add-clip']['es-cl'] = "Agregar Clip";
$text['button-add-clip']['es-mx'] = "Agregar Clip"; //copied from es-cl
$text['button-add-clip']['fr-ca'] = "Ajouter un Clip"; //copied from fr-fr
$text['button-add-clip']['fr-fr'] = "Ajouter un Clip";
$text['button-add-clip']['he-il'] = "";
$text['button-add-clip']['it-it'] = "Inserisci Clip";
$text['button-add-clip']['nl-nl'] = "Voeg Clip toe";
$text['button-add-clip']['pl-pl'] = "";
$text['button-add-clip']['pt-br'] = "Adicionar Clip"; //copied from pt-pt
$text['button-add-clip']['pt-pt'] = "Adicionar Clip";
$text['button-add-clip']['ro-ro'] = "";
$text['button-add-clip']['ru-ru'] = "Добавить клип";
$text['button-add-clip']['sv-se'] = "Lägg Till Klipp";
$text['button-add-clip']['uk-ua'] = "";
$text['message-delete-clip']['en-us'] = "Are you sure you want to delete the selected clip?";
$text['message-delete-clip']['ar-eg'] = "";
$text['message-delete-clip']['de-at'] = "Sind Sie sicher, dass Sie den ausgewählten Clip löschen möchten?"; //copied from de-de
$text['message-delete-clip']['de-ch'] = "Sind Sie sicher, dass Sie den ausgewählten Clip löschen möchten?"; //copied from de-de
$text['message-delete-clip']['de-de'] = "Sind Sie sicher, dass Sie den ausgewählten Clip löschen möchten?";
$text['message-delete-clip']['es-cl'] = "¿Realmente desea eliminar el clip seleccionado?";
$text['message-delete-clip']['es-mx'] = "¿Realmente desea eliminar el clip seleccionado?"; //copied from es-cl
$text['message-delete-clip']['fr-ca'] = "Etes-vous sûr de vouloir supprimer le CLIP sélectionné?"; //copied from fr-fr
$text['message-delete-clip']['fr-fr'] = "Etes-vous sûr de vouloir supprimer le CLIP sélectionné?";
$text['message-delete-clip']['he-il'] = "";
$text['message-delete-clip']['it-it'] = "Sei sicuro di voler cancellare le clip selezionate?";
$text['message-delete-clip']['nl-nl'] = "Weet je zeker dat je de gekozen Clip wil verwijderen?";
$text['message-delete-clip']['pl-pl'] = "";
$text['message-delete-clip']['pt-br'] = "Tem a certeza que pretende remover o clip seleccionado?"; //copied from pt-pt
$text['message-delete-clip']['pt-pt'] = "Tem a certeza que pretende remover o clip seleccionado?";
$text['message-delete-clip']['ro-ro'] = "";
$text['message-delete-clip']['ru-ru'] = "Вы действительно хотите удалить выбранный клип?";
$text['message-delete-clip']['sv-se'] = "Är du säker på att du vill radera det valda klippet?";
$text['message-delete-clip']['uk-ua'] = "";
$text['button-close']['en-us'] = "Close";
$text['button-close']['ar-eg'] = "";
$text['button-close']['de-at'] = "Schließen"; //copied from de-de
$text['button-close']['de-ch'] = "Schließen"; //copied from de-de
$text['button-close']['de-de'] = "Schließen";
$text['button-close']['es-cl'] = "Cerrar";
$text['button-close']['es-mx'] = "Cerrar"; //copied from es-cl
$text['button-close']['fr-ca'] = "Fermé"; //copied from fr-fr
$text['button-close']['fr-fr'] = "Fermé";
$text['button-close']['he-il'] = "";
$text['button-close']['it-it'] = "Chiudi";
$text['button-close']['nl-nl'] = "Sluiten";
$text['button-close']['pl-pl'] = "";
$text['button-close']['pt-br'] = "Fechar"; //copied from pt-pt
$text['button-close']['pt-pt'] = "Fechar";
$text['button-close']['ro-ro'] = "";
$text['button-close']['ru-ru'] = "Закрыть";
$text['button-close']['sv-se'] = "Stäng";
$text['button-close']['uk-ua'] = "";
$text['label-path']['en-us'] = "Path:";
$text['label-path']['ar-eg'] = "";
$text['label-path']['de-at'] = "Pfad:"; //copied from de-de
$text['label-path']['de-ch'] = "Pfad:"; //copied from de-de
$text['label-path']['de-de'] = "Pfad:";
$text['label-path']['es-cl'] = "Ruta:";
$text['label-path']['es-mx'] = "Ruta:"; //copied from es-cl
$text['label-path']['fr-ca'] = "Chemin:"; //copied from fr-fr
$text['label-path']['fr-fr'] = "Chemin:";
$text['label-path']['he-il'] = "";
$text['label-path']['it-it'] = "Percorso:";
$text['label-path']['nl-nl'] = "Pad:";
$text['label-path']['pl-pl'] = "";
$text['label-path']['pt-br'] = "Caminho:"; //copied from pt-pt
$text['label-path']['pt-pt'] = "Caminho:";
$text['label-path']['ro-ro'] = "";
$text['label-path']['ru-ru'] = "Путь:";
$text['label-path']['sv-se'] = "Sökväg:";
$text['label-path']['uk-ua'] = "";
$text['label-file-name']['en-us'] = "File Name:";
$text['label-file-name']['ar-eg'] = "";
$text['label-file-name']['de-at'] = "Dateiname:"; //copied from de-de
$text['label-file-name']['de-ch'] = "Dateiname:"; //copied from de-de
$text['label-file-name']['de-de'] = "Dateiname:";
$text['label-file-name']['es-cl'] = "Nombre de Archivo:";
$text['label-file-name']['es-mx'] = "Nombre de Archivo:"; //copied from es-cl
$text['label-file-name']['fr-ca'] = "Nom du Fichier:"; //copied from fr-fr
$text['label-file-name']['fr-fr'] = "Nom du Fichier:";
$text['label-file-name']['he-il'] = "";
$text['label-file-name']['it-it'] = "Nome File:";
$text['label-file-name']['nl-nl'] = "Bestandsnaam:";
$text['label-file-name']['pl-pl'] = "";
$text['label-file-name']['pt-br'] = "Nome do ficheiro:"; //copied from pt-pt
$text['label-file-name']['pt-pt'] = "Nome do ficheiro:";
$text['label-file-name']['ro-ro'] = "";
$text['label-file-name']['ru-ru'] = "Имя Файла:";
$text['label-file-name']['sv-se'] = "Filnamn:";
$text['label-file-name']['uk-ua'] = "";
$text['button-new-file']['en-us'] = "New File";
$text['button-new-file']['ar-eg'] = "";
$text['button-new-file']['de-at'] = "Neue Datei"; //copied from de-de
$text['button-new-file']['de-ch'] = "Neue Datei"; //copied from de-de
$text['button-new-file']['de-de'] = "Neue Datei";
$text['button-new-file']['es-cl'] = "Nuevo Archivo";
$text['button-new-file']['es-mx'] = "Nuevo Archivo"; //copied from es-cl
$text['button-new-file']['fr-ca'] = "Nouveau Fichier"; //copied from fr-fr
$text['button-new-file']['fr-fr'] = "Nouveau Fichier";
$text['button-new-file']['he-il'] = "";
$text['button-new-file']['it-it'] = "Nuovo File";
$text['button-new-file']['nl-nl'] = "Nieuw bestand";
$text['button-new-file']['pl-pl'] = "";
$text['button-new-file']['pt-br'] = "Novo Ficheiro"; //copied from pt-pt
$text['button-new-file']['pt-pt'] = "Novo Ficheiro";
$text['button-new-file']['ro-ro'] = "";
$text['button-new-file']['ru-ru'] = "Новый Файл";
$text['button-new-file']['sv-se'] = "Ny Fil";
$text['button-new-file']['uk-ua'] = "";
$text['label-file-name-orig']['en-us'] = "Original File Name:";
$text['label-file-name-orig']['ar-eg'] = "";
$text['label-file-name-orig']['de-at'] = "Ursprünglicher Dateiname:"; //copied from de-de
$text['label-file-name-orig']['de-ch'] = "Ursprünglicher Dateiname:"; //copied from de-de
$text['label-file-name-orig']['de-de'] = "Ursprünglicher Dateiname:";
$text['label-file-name-orig']['es-cl'] = "Nombre de Archivo Original:";
$text['label-file-name-orig']['es-mx'] = "Nombre de Archivo Original:"; //copied from es-cl
$text['label-file-name-orig']['fr-ca'] = "Nom du Fichier Original:"; //copied from fr-fr
$text['label-file-name-orig']['fr-fr'] = "Nom du Fichier Original:";
$text['label-file-name-orig']['he-il'] = "";
$text['label-file-name-orig']['it-it'] = "Nome Originale File:";
$text['label-file-name-orig']['nl-nl'] = "Originele bestandsnaam:";
$text['label-file-name-orig']['pl-pl'] = "";
$text['label-file-name-orig']['pt-br'] = "Nome do Ficheiro Original:"; //copied from pt-pt
$text['label-file-name-orig']['pt-pt'] = "Nome do Ficheiro Original:";
$text['label-file-name-orig']['ro-ro'] = "";
$text['label-file-name-orig']['ru-ru'] = "Оригинальное Имя Файла:";
$text['label-file-name-orig']['sv-se'] = "Original Filnamn:";
$text['label-file-name-orig']['uk-ua'] = "";
$text['label-rename-file-to']['en-us'] = "Rename File To:";
$text['label-rename-file-to']['ar-eg'] = "";
$text['label-rename-file-to']['de-at'] = "Datei umbenennen in:"; //copied from de-de
$text['label-rename-file-to']['de-ch'] = "Datei umbenennen in:"; //copied from de-de
$text['label-rename-file-to']['de-de'] = "Datei umbenennen in:";
$text['label-rename-file-to']['es-cl'] = "Renombrar a:";
$text['label-rename-file-to']['es-mx'] = "Renombrar a:"; //copied from es-cl
$text['label-rename-file-to']['fr-ca'] = "Renommer le Fichier en:"; //copied from fr-fr
$text['label-rename-file-to']['fr-fr'] = "Renommer le Fichier en:";
$text['label-rename-file-to']['he-il'] = "";
$text['label-rename-file-to']['it-it'] = "Rinomina File In:";
$text['label-rename-file-to']['nl-nl'] = "Hernoem bestand naar:";
$text['label-rename-file-to']['pl-pl'] = "";
$text['label-rename-file-to']['pt-br'] = "Renomear Ficheiro Para:"; //copied from pt-pt
$text['label-rename-file-to']['pt-pt'] = "Renomear Ficheiro Para:";
$text['label-rename-file-to']['ro-ro'] = "";
$text['label-rename-file-to']['ru-ru'] = "Переименовать Файл:";
$text['label-rename-file-to']['sv-se'] = "Ändra Filnamn Till:";
$text['label-rename-file-to']['uk-ua'] = "";
$text['label-files']['en-us'] = "Files";
$text['label-files']['ar-eg'] = "";
$text['label-files']['de-at'] = "Dateien"; //copied from de-de
$text['label-files']['de-ch'] = "Dateien"; //copied from de-de
$text['label-files']['de-de'] = "Dateien";
$text['label-files']['es-cl'] = "Archivos";
$text['label-files']['es-mx'] = "Archivos"; //copied from es-cl
$text['label-files']['fr-ca'] = "Fichiers"; //copied from fr-fr
$text['label-files']['fr-fr'] = "Fichiers";
$text['label-files']['he-il'] = "";
$text['label-files']['it-it'] = "Files";
$text['label-files']['nl-nl'] = "Bestanden";
$text['label-files']['pl-pl'] = "";
$text['label-files']['pt-br'] = "Ficheiros"; //copied from pt-pt
$text['label-files']['pt-pt'] = "Ficheiros";
$text['label-files']['ro-ro'] = "";
$text['label-files']['ru-ru'] = "Файлы";
$text['label-files']['sv-se'] = "Filer";
$text['label-files']['uk-ua'] = "";
$text['button-add-file']['en-us'] = "Add File";
$text['button-add-file']['ar-eg'] = "";
$text['button-add-file']['de-at'] = "Datei hinzufügen"; //copied from de-de
$text['button-add-file']['de-ch'] = "Datei hinzufügen"; //copied from de-de
$text['button-add-file']['de-de'] = "Datei hinzufügen";
$text['button-add-file']['es-cl'] = "";
$text['button-add-file']['es-mx'] = "";
$text['button-add-file']['fr-ca'] = "Ajouter Fichier"; //copied from fr-fr
$text['button-add-file']['fr-fr'] = "Ajouter Fichier";
$text['button-add-file']['he-il'] = "";
$text['button-add-file']['it-it'] = "Inserisci File";
$text['button-add-file']['nl-nl'] = "Bestand toevoegen";
$text['button-add-file']['pl-pl'] = "";
$text['button-add-file']['pt-br'] = "Adicionar Ficheiro"; //copied from pt-pt
$text['button-add-file']['pt-pt'] = "Adicionar Ficheiro";
$text['button-add-file']['ro-ro'] = "";
$text['button-add-file']['ru-ru'] = "Добавить Файл";
$text['button-add-file']['sv-se'] = "Lägg Till Fil";
$text['button-add-file']['uk-ua'] = "";
$text['button-add-dir']['en-us'] = "Add Dir";
$text['button-add-dir']['ar-eg'] = "";
$text['button-add-dir']['de-at'] = "Verzeichnis erstellen"; //copied from de-de
$text['button-add-dir']['de-ch'] = "Verzeichnis erstellen"; //copied from de-de
$text['button-add-dir']['de-de'] = "Verzeichnis erstellen";
$text['button-add-dir']['es-cl'] = "Agregar Carpeta";
$text['button-add-dir']['es-mx'] = "Agregar Carpeta"; //copied from es-cl
$text['button-add-dir']['fr-ca'] = "Ajouter un Répertoire"; //copied from fr-fr
$text['button-add-dir']['fr-fr'] = "Ajouter un Répertoire";
$text['button-add-dir']['he-il'] = "";
$text['button-add-dir']['it-it'] = "Inserisci Dir";
$text['button-add-dir']['nl-nl'] = "Zoeklijst toevoegen";
$text['button-add-dir']['pl-pl'] = "";
$text['button-add-dir']['pt-br'] = "Adicionar Directoria"; //copied from pt-pt
$text['button-add-dir']['pt-pt'] = "Adicionar Directoria";
$text['button-add-dir']['ro-ro'] = "";
$text['button-add-dir']['ru-ru'] = "Добавить Каталог";
$text['button-add-dir']['sv-se'] = "Lägg Till Katalog";
$text['button-add-dir']['uk-ua'] = "";
$text['button-rename-file']['en-us'] = "Rename File";
$text['button-rename-file']['ar-eg'] = "";
$text['button-rename-file']['de-at'] = "Datei umbenennen"; //copied from de-de
$text['button-rename-file']['de-ch'] = "Datei umbenennen"; //copied from de-de
$text['button-rename-file']['de-de'] = "Datei umbenennen";
$text['button-rename-file']['es-cl'] = "Renombrar Archivo";
$text['button-rename-file']['es-mx'] = "Renombrar Archivo"; //copied from es-cl
$text['button-rename-file']['fr-ca'] = "Renommer le Fichier"; //copied from fr-fr
$text['button-rename-file']['fr-fr'] = "Renommer le Fichier";
$text['button-rename-file']['he-il'] = "";
$text['button-rename-file']['it-it'] = "Rinomina File";
$text['button-rename-file']['nl-nl'] = "Hernoem bestand";
$text['button-rename-file']['pl-pl'] = "";
$text['button-rename-file']['pt-br'] = "Renomear Ficheiro"; //copied from pt-pt
$text['button-rename-file']['pt-pt'] = "Renomear Ficheiro";
$text['button-rename-file']['ro-ro'] = "";
$text['button-rename-file']['ru-ru'] = "Переименовать Файл";
$text['button-rename-file']['sv-se'] = "Namnändra Fil";
$text['button-rename-file']['uk-ua'] = "";
$text['message-delete-file']['en-us'] = "Are you sure you want to delete the selected file?";
$text['message-delete-file']['ar-eg'] = "";
$text['message-delete-file']['de-at'] = "Sind Sie sicher, dass Sie die markierte Datei löschen möchten?"; //copied from de-de
$text['message-delete-file']['de-ch'] = "Sind Sie sicher, dass Sie die markierte Datei löschen möchten?"; //copied from de-de
$text['message-delete-file']['de-de'] = "Sind Sie sicher, dass Sie die markierte Datei löschen möchten?";
$text['message-delete-file']['es-cl'] = "¿Realmente desea eliminar el archivo seleccionado?";
$text['message-delete-file']['es-mx'] = "¿Realmente desea eliminar el archivo seleccionado?"; //copied from es-cl
$text['message-delete-file']['fr-ca'] = "Etes-vous sûr de vouloir supprimer le fichier sélectionné?"; //copied from fr-fr
$text['message-delete-file']['fr-fr'] = "Etes-vous sûr de vouloir supprimer le fichier sélectionné?";
$text['message-delete-file']['he-il'] = "";
$text['message-delete-file']['it-it'] = "Sei sicuro di voler cancellare il file selezionato?";
$text['message-delete-file']['nl-nl'] = "Weet je zeker dat je het gekozen bestand wil verwijderen?";
$text['message-delete-file']['pl-pl'] = "";
$text['message-delete-file']['pt-br'] = "Tem a certeza que pretende remover o ficheiro seleccionado?"; //copied from pt-pt
$text['message-delete-file']['pt-pt'] = "Tem a certeza que pretende remover o ficheiro seleccionado?";
$text['message-delete-file']['ro-ro'] = "";
$text['message-delete-file']['ru-ru'] = "Вы уверены, что хотите удалить выбранный файл?";
$text['message-delete-file']['sv-se'] = "Är du säker på att du vill radera den valda filen?";
$text['message-delete-file']['uk-ua'] = "";
$text['button-del-file']['en-us'] = "Delete File";
$text['button-del-file']['ar-eg'] = "";
$text['button-del-file']['de-at'] = "Datei löschen"; //copied from de-de
$text['button-del-file']['de-ch'] = "Datei löschen"; //copied from de-de
$text['button-del-file']['de-de'] = "Datei löschen";
$text['button-del-file']['es-cl'] = "Eliminar Archivo";
$text['button-del-file']['es-mx'] = "Eliminar Archivo"; //copied from es-cl
$text['button-del-file']['fr-ca'] = "Supprimer le Fichier"; //copied from fr-fr
$text['button-del-file']['fr-fr'] = "Supprimer le Fichier";
$text['button-del-file']['he-il'] = "";
$text['button-del-file']['it-it'] = "Cancella File";
$text['button-del-file']['nl-nl'] = "Verwijder bestand";
$text['button-del-file']['pl-pl'] = "";
$text['button-del-file']['pt-br'] = "Remover Ficheiro"; //copied from pt-pt
$text['button-del-file']['pt-pt'] = "Remover Ficheiro";
$text['button-del-file']['ro-ro'] = "";
$text['button-del-file']['ru-ru'] = "Удалить Файл";
$text['button-del-file']['sv-se'] = "Ta Bort Fil";
$text['button-del-file']['uk-ua'] = "";
$text['message-delete-folder']['en-us'] = "Are you sure you want to delete the selected folder?";
$text['message-delete-folder']['ar-eg'] = "";
$text['message-delete-folder']['de-at'] = "SSind Sie sicher, dass Sie den markierten Ordner löschen möchten?"; //copied from de-de
$text['message-delete-folder']['de-ch'] = "SSind Sie sicher, dass Sie den markierten Ordner löschen möchten?"; //copied from de-de
$text['message-delete-folder']['de-de'] = "SSind Sie sicher, dass Sie den markierten Ordner löschen möchten?";
$text['message-delete-folder']['es-cl'] = "¿Realmente desea eliminar la carpeta seleccionada?";
$text['message-delete-folder']['es-mx'] = "¿Realmente desea eliminar la carpeta seleccionada?"; //copied from es-cl
$text['message-delete-folder']['fr-ca'] = "Etes-vous sûr de vouloir supprimer le répertoire sélectionné?"; //copied from fr-fr
$text['message-delete-folder']['fr-fr'] = "Etes-vous sûr de vouloir supprimer le répertoire sélectionné?";
$text['message-delete-folder']['he-il'] = "";
$text['message-delete-folder']['it-it'] = "Sei sicuro di voler cancellare la cartella selezionata?";
$text['message-delete-folder']['nl-nl'] = "Weet je zeker dat je de gekozen map wil verwijderen?";
$text['message-delete-folder']['pl-pl'] = "";
$text['message-delete-folder']['pt-br'] = "Tem a certeza que pretende remover a pasta seleccionada?"; //copied from pt-pt
$text['message-delete-folder']['pt-pt'] = "Tem a certeza que pretende remover a pasta seleccionada?";
$text['message-delete-folder']['ro-ro'] = "";
$text['message-delete-folder']['ru-ru'] = "Вы действительно хотите удалить выбранный Каталог?";
$text['message-delete-folder']['sv-se'] = "Är du säker på att du vill radera den valda mappen?";
$text['message-delete-folder']['uk-ua'] = "";
$text['button-del-dir']['en-us'] = "Delete Dir";
$text['button-del-dir']['ar-eg'] = "";
$text['button-del-dir']['de-at'] = "Verzeichnis löschen"; //copied from de-de
$text['button-del-dir']['de-ch'] = "Verzeichnis löschen"; //copied from de-de
$text['button-del-dir']['de-de'] = "Verzeichnis löschen";
$text['button-del-dir']['es-cl'] = "Eliminar Carpeta";
$text['button-del-dir']['es-mx'] = "Eliminar Carpeta"; //copied from es-cl
$text['button-del-dir']['fr-ca'] = "Supprimer le Répertoire"; //copied from fr-fr
$text['button-del-dir']['fr-fr'] = "Supprimer le Répertoire";
$text['button-del-dir']['he-il'] = "";
$text['button-del-dir']['it-it'] = "Cancella Dir";
$text['button-del-dir']['nl-nl'] = "Verwijder zoeklijst";
$text['button-del-dir']['pl-pl'] = "";
$text['button-del-dir']['pt-br'] = "Remover Directoria"; //copied from pt-pt
$text['button-del-dir']['pt-pt'] = "Remover Directoria";
$text['button-del-dir']['ro-ro'] = "";
$text['button-del-dir']['ru-ru'] = "Удалить Каталог";
$text['button-del-dir']['sv-se'] = "Ta Bort Mapp";
$text['button-del-dir']['uk-ua'] = "";
$text['message-error']['en-us'] = "Error!!";
$text['message-error']['ar-eg'] = "";
$text['message-error']['de-at'] = "Fehler!!"; //copied from de-de
$text['message-error']['de-ch'] = "Fehler!!"; //copied from de-de
$text['message-error']['de-de'] = "Fehler!!";
$text['message-error']['es-cl'] = "Error";
$text['message-error']['es-mx'] = "Error"; //copied from es-cl
$text['message-error']['fr-ca'] = "Erreur!!"; //copied from fr-fr
$text['message-error']['fr-fr'] = "Erreur!!";
$text['message-error']['he-il'] = "";
$text['message-error']['it-it'] = "Errore!!";
$text['message-error']['nl-nl'] = "Fout!!";
$text['message-error']['pl-pl'] = "";
$text['message-error']['pt-br'] = "Erro!!"; //copied from pt-pt
$text['message-error']['pt-pt'] = "Erro!!";
$text['message-error']['ro-ro'] = "";
$text['message-error']['ru-ru'] = "Ошибка!!";
$text['message-error']['sv-se'] = "Fel!!";
$text['message-error']['uk-ua'] = "";
$text['label-folder-name']['en-us'] = "Folder Name:";
$text['label-folder-name']['ar-eg'] = "";
$text['label-folder-name']['de-at'] = "Verzeichnis Name:"; //copied from de-de
$text['label-folder-name']['de-ch'] = "Verzeichnis Name:"; //copied from de-de
$text['label-folder-name']['de-de'] = "Verzeichnis Name:";
$text['label-folder-name']['es-cl'] = "Nombre de Carpeta:";
$text['label-folder-name']['es-mx'] = "Nombre de Carpeta:"; //copied from es-cl
$text['label-folder-name']['fr-ca'] = "Nom du Répertoire:"; //copied from fr-fr
$text['label-folder-name']['fr-fr'] = "Nom du Répertoire:";
$text['label-folder-name']['he-il'] = "";
$text['label-folder-name']['it-it'] = "Nome Cartella:";
$text['label-folder-name']['nl-nl'] = "Map naam:";
$text['label-folder-name']['pl-pl'] = "";
$text['label-folder-name']['pt-br'] = "Nome da Pasta:"; //copied from pt-pt
$text['label-folder-name']['pt-pt'] = "Nome da Pasta:";
$text['label-folder-name']['ro-ro'] = "";
$text['label-folder-name']['ru-ru'] = "Имя Каталога";
$text['label-folder-name']['sv-se'] = "Katalog Namn:";
$text['label-folder-name']['uk-ua'] = "";
$text['button-new-folder']['en-us'] = "New Folder";
$text['button-new-folder']['ar-eg'] = "";
$text['button-new-folder']['de-at'] = "Neues Verzeichnis"; //copied from de-de
$text['button-new-folder']['de-ch'] = "Neues Verzeichnis"; //copied from de-de
$text['button-new-folder']['de-de'] = "Neues Verzeichnis";
$text['button-new-folder']['es-cl'] = "Nueva Carpeta";
$text['button-new-folder']['es-mx'] = "Nueva Carpeta"; //copied from es-cl
$text['button-new-folder']['fr-ca'] = "Nouveau Répertoire"; //copied from fr-fr
$text['button-new-folder']['fr-fr'] = "Nouveau Répertoire";
$text['button-new-folder']['he-il'] = "";
$text['button-new-folder']['it-it'] = "Nuova Cartella";
$text['button-new-folder']['nl-nl'] = "Nieuwe map";
$text['button-new-folder']['pl-pl'] = "";
$text['button-new-folder']['pt-br'] = "Novo Ficheiro"; //copied from pt-pt
$text['button-new-folder']['pt-pt'] = "Novo Ficheiro";
$text['button-new-folder']['ro-ro'] = "";
$text['button-new-folder']['ru-ru'] = "Новый Каталогr";
$text['button-new-folder']['sv-se'] = "Ny Mapp";
$text['button-new-folder']['uk-ua'] = "";
$text['button-delete-this']['en-us'] = "Are you sure want to delete this?";
$text['button-delete-this']['ar-eg'] = "";
$text['button-delete-this']['de-at'] = "Sind Sie sicher, dass Sie dieses löschen möchten?"; //copied from de-de
$text['button-delete-this']['de-ch'] = "Sind Sie sicher, dass Sie dieses löschen möchten?"; //copied from de-de
$text['button-delete-this']['de-de'] = "Sind Sie sicher, dass Sie dieses löschen möchten?";
$text['button-delete-this']['es-cl'] = "¿Realmente desea eliminar esto?";
$text['button-delete-this']['es-mx'] = "¿Realmente desea eliminar esto?"; //copied from es-cl
$text['button-delete-this']['fr-ca'] = "Voulez-vous vraiment supprimer cela?"; //copied from fr-fr
$text['button-delete-this']['fr-fr'] = "Voulez-vous vraiment supprimer cela?";
$text['button-delete-this']['he-il'] = "";
$text['button-delete-this']['it-it'] = "Sei sicuro di volerlo cancellare?";
$text['button-delete-this']['nl-nl'] = "Weet je zeker dat je dat wil doen?";
$text['button-delete-this']['pl-pl'] = "";
$text['button-delete-this']['pt-br'] = "Tem a certeza que pretende remover isto?"; //copied from pt-pt
$text['button-delete-this']['pt-pt'] = "Tem a certeza que pretende remover isto?";
$text['button-delete-this']['ro-ro'] = "";
$text['button-delete-this']['ru-ru'] = "Вы действительно хотите удалить это?";
$text['button-delete-this']['sv-se'] = "Vill du verkligen ta bort det här?";
$text['button-delete-this']['uk-ua'] = "";
$text['label-file']['en-us'] = "File:";
$text['label-file']['ar-eg'] = "";
$text['label-file']['de-at'] = "Datei:"; //copied from de-de
$text['label-file']['de-ch'] = "Datei:"; //copied from de-de
$text['label-file']['de-de'] = "Datei:";
$text['label-file']['es-cl'] = "Archivo:";
$text['label-file']['es-mx'] = "Archivo:"; //copied from es-cl
$text['label-file']['fr-ca'] = "Fichier:"; //copied from fr-fr
$text['label-file']['fr-fr'] = "Fichier:";
$text['label-file']['he-il'] = "";
$text['label-file']['it-it'] = "File:";
$text['label-file']['nl-nl'] = "Bestand:";
$text['label-file']['pl-pl'] = "";
$text['label-file']['pt-br'] = "Ficheiro:"; //copied from pt-pt
$text['label-file']['pt-pt'] = "Ficheiro:";
$text['label-file']['ro-ro'] = "";
$text['label-file']['ru-ru'] = "Файл:";
$text['label-file']['sv-se'] = "Fil:";
$text['label-file']['uk-ua'] = "";
?>

View File

@@ -1,134 +0,0 @@
<?php
$y=0;
$apps[$x]['menu'][$y]['title']['en-us'] = "Script Editor";
$apps[$x]['menu'][$y]['title']['ar-eg'] = "";
$apps[$x]['menu'][$y]['title']['de-at'] = "Skript Editor";
$apps[$x]['menu'][$y]['title']['de-ch'] = "";
$apps[$x]['menu'][$y]['title']['de-de'] = "Skript Editor";
$apps[$x]['menu'][$y]['title']['es-cl'] = "Editor de Scripts";
$apps[$x]['menu'][$y]['title']['es-mx'] = "";
$apps[$x]['menu'][$y]['title']['fr-ca'] = "";
$apps[$x]['menu'][$y]['title']['fr-fr'] = "Editeur de script";
$apps[$x]['menu'][$y]['title']['he-il'] = "";
$apps[$x]['menu'][$y]['title']['it-it'] = "Editor Script";
$apps[$x]['menu'][$y]['title']['nl-nl'] = "Scipt bewerker";
$apps[$x]['menu'][$y]['title']['pl-pl'] = "";
$apps[$x]['menu'][$y]['title']['pt-br'] = "";
$apps[$x]['menu'][$y]['title']['pt-pt'] = "Editor de Scripts";
$apps[$x]['menu'][$y]['title']['ro-ro'] = "";
$apps[$x]['menu'][$y]['title']['ru-ru'] = "Редактор скриптов";
$apps[$x]['menu'][$y]['title']['sv-se'] = "";
$apps[$x]['menu'][$y]['title']['uk-ua'] = "";
$apps[$x]['menu'][$y]['uuid'] = "f1905fec-0577-daef-6045-59d09b7d3f94";
$apps[$x]['menu'][$y]['parent_uuid'] = "594d99c5-6128-9c88-ca35-4b33392cec0f";
$apps[$x]['menu'][$y]['category'] = "external";
$apps[$x]['menu'][$y]['icon'] = "external-link-alt";
$apps[$x]['menu'][$y]['path'] = "/app/edit/index.php?dir=scripts";
$apps[$x]['menu'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['menu'][$y]['title']['en-us'] = "XML Editor";
$apps[$x]['menu'][$y]['title']['ar-eg'] = "";
$apps[$x]['menu'][$y]['title']['de-at'] = "XML Editor";
$apps[$x]['menu'][$y]['title']['de-ch'] = "";
$apps[$x]['menu'][$y]['title']['de-de'] = "XML Editor";
$apps[$x]['menu'][$y]['title']['es-cl'] = "Editor XML";
$apps[$x]['menu'][$y]['title']['es-mx'] = "";
$apps[$x]['menu'][$y]['title']['fr-ca'] = "";
$apps[$x]['menu'][$y]['title']['fr-fr'] = "Editeur XML";
$apps[$x]['menu'][$y]['title']['he-il'] = "";
$apps[$x]['menu'][$y]['title']['it-it'] = "Editor XML";
$apps[$x]['menu'][$y]['title']['nl-nl'] = "XML bewerking";
$apps[$x]['menu'][$y]['title']['pl-pl'] = "";
$apps[$x]['menu'][$y]['title']['pt-br'] = "";
$apps[$x]['menu'][$y]['title']['pt-pt'] = "Editor XML";
$apps[$x]['menu'][$y]['title']['ro-ro'] = "";
$apps[$x]['menu'][$y]['title']['ru-ru'] = "Редактор XML";
$apps[$x]['menu'][$y]['title']['sv-se'] = "";
$apps[$x]['menu'][$y]['title']['uk-ua'] = "";
$apps[$x]['menu'][$y]['uuid'] = "16013877-606a-2a05-7d6a-c1b215839131";
$apps[$x]['menu'][$y]['parent_uuid'] = "594d99c5-6128-9c88-ca35-4b33392cec0f";
$apps[$x]['menu'][$y]['category'] = "external";
$apps[$x]['menu'][$y]['icon'] = "external-link-alt";
$apps[$x]['menu'][$y]['path'] = "/app/edit/index.php?dir=xml";
$apps[$x]['menu'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['menu'][$y]['title']['en-us'] = "Provision Editor";
$apps[$x]['menu'][$y]['title']['ar-eg'] = "";
$apps[$x]['menu'][$y]['title']['de-at'] = "Bereitstellungs Editor";
$apps[$x]['menu'][$y]['title']['de-ch'] = "";
$apps[$x]['menu'][$y]['title']['de-de'] = "Bereitstellungs Editor";
$apps[$x]['menu'][$y]['title']['es-cl'] = "Editor de Provisionamiento";
$apps[$x]['menu'][$y]['title']['es-mx'] = "";
$apps[$x]['menu'][$y]['title']['fr-ca'] = "";
$apps[$x]['menu'][$y]['title']['fr-fr'] = "Editeur de Provisioning";
$apps[$x]['menu'][$y]['title']['he-il'] = "";
$apps[$x]['menu'][$y]['title']['it-it'] = "Editor di Provisioning";
$apps[$x]['menu'][$y]['title']['nl-nl'] = "Voorzieningen bewerker";
$apps[$x]['menu'][$y]['title']['pl-pl'] = "";
$apps[$x]['menu'][$y]['title']['pt-br'] = "";
$apps[$x]['menu'][$y]['title']['pt-pt'] = "Editor de Provisionamento";
$apps[$x]['menu'][$y]['title']['ro-ro'] = "";
$apps[$x]['menu'][$y]['title']['ru-ru'] = "Редактор шаблонов автоконфигурации";
$apps[$x]['menu'][$y]['title']['sv-se'] = "";
$apps[$x]['menu'][$y]['title']['uk-ua'] = "";
$apps[$x]['menu'][$y]['uuid'] = "57773542-a565-1a29-605d-6535da1a0870";
$apps[$x]['menu'][$y]['parent_uuid'] = "594d99c5-6128-9c88-ca35-4b33392cec0f";
$apps[$x]['menu'][$y]['category'] = "external";
$apps[$x]['menu'][$y]['icon'] = "external-link-alt";
$apps[$x]['menu'][$y]['path'] = "/app/edit/index.php?dir=provision";
$apps[$x]['menu'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['menu'][$y]['title']['en-us'] = "PHP Editor";
$apps[$x]['menu'][$y]['title']['ar-eg'] = "";
$apps[$x]['menu'][$y]['title']['de-at'] = "PHP Editor";
$apps[$x]['menu'][$y]['title']['de-ch'] = "";
$apps[$x]['menu'][$y]['title']['de-de'] = "PHP Editor";
$apps[$x]['menu'][$y]['title']['es-cl'] = "Editor PHP";
$apps[$x]['menu'][$y]['title']['es-mx'] = "";
$apps[$x]['menu'][$y]['title']['fr-ca'] = "";
$apps[$x]['menu'][$y]['title']['fr-fr'] = "Editeur PHP";
$apps[$x]['menu'][$y]['title']['he-il'] = "";
$apps[$x]['menu'][$y]['title']['it-it'] = "Editor PHP";
$apps[$x]['menu'][$y]['title']['nl-nl'] = "PHP bewerker";
$apps[$x]['menu'][$y]['title']['pl-pl'] = "";
$apps[$x]['menu'][$y]['title']['pt-br'] = "";
$apps[$x]['menu'][$y]['title']['pt-pt'] = "Editor de PHP";
$apps[$x]['menu'][$y]['title']['ro-ro'] = "";
$apps[$x]['menu'][$y]['title']['ru-ru'] = "Редактор PHP";
$apps[$x]['menu'][$y]['title']['sv-se'] = "";
$apps[$x]['menu'][$y]['title']['uk-ua'] = "";
$apps[$x]['menu'][$y]['uuid'] = "eae1f2d6-789b-807c-cc26-44501e848693";
$apps[$x]['menu'][$y]['parent_uuid'] = "594d99c5-6128-9c88-ca35-4b33392cec0f";
$apps[$x]['menu'][$y]['category'] = "external";
$apps[$x]['menu'][$y]['icon'] = "external-link-alt";
$apps[$x]['menu'][$y]['path'] = "/app/edit/index.php?dir=php";
$apps[$x]['menu'][$y]['groups'][] = "superadmin";
$y++;
$apps[$x]['menu'][$y]['title']['en-us'] = "Grammar Editor";
$apps[$x]['menu'][$y]['title']['ar-eg'] = "";
$apps[$x]['menu'][$y]['title']['de-at'] = "Grammatik Editor";
$apps[$x]['menu'][$y]['title']['de-ch'] = "";
$apps[$x]['menu'][$y]['title']['de-de'] = "Grammatik Editor";
$apps[$x]['menu'][$y]['title']['es-cl'] = "Editor Gramático";
$apps[$x]['menu'][$y]['title']['es-mx'] = "Editor Gramático";
$apps[$x]['menu'][$y]['title']['fr-ca'] = "";
$apps[$x]['menu'][$y]['title']['fr-fr'] = "Editeur de Grammaire";
$apps[$x]['menu'][$y]['title']['he-il'] = "";
$apps[$x]['menu'][$y]['title']['it-it'] = "Editor Grammatica";
$apps[$x]['menu'][$y]['title']['nl-nl'] = "Grammatica bewerker";
$apps[$x]['menu'][$y]['title']['pl-pl'] = "";
$apps[$x]['menu'][$y]['title']['pt-br'] = "";
$apps[$x]['menu'][$y]['title']['pt-pt'] = "Editor Gramático";
$apps[$x]['menu'][$y]['title']['ro-ro'] = "";
$apps[$x]['menu'][$y]['title']['ru-ru'] = "Редактор грамматики";
$apps[$x]['menu'][$y]['title']['sv-se'] = "";
$apps[$x]['menu'][$y]['title']['uk-ua'] = "";
$apps[$x]['menu'][$y]['uuid'] = "c3db739e-89f9-0fa2-44ce-0f4c2ff43b1a";
$apps[$x]['menu'][$y]['parent_uuid'] = "594d99c5-6128-9c88-ca35-4b33392cec0f";
$apps[$x]['menu'][$y]['category'] = "external";
$apps[$x]['menu'][$y]['icon'] = "external-link-alt";
$apps[$x]['menu'][$y]['path'] = "/app/edit/index.php?dir=grammar";
$apps[$x]['menu'][$y]['groups'][] = "superadmin";
?>

View File

@@ -1,138 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
James Rose <james.o.rose@gmail.com>
*/
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check permissions
if (permission_exists('edit_save')) {
//access granted
}
else {
echo "access denied";
exit;
}
//add multi-lingual support
$language = new text;
$text = $language->get();
if (count($_POST)>0) {
$clip_name = $_POST["clip_name"];
$clip_folder = $_POST["clip_folder"];
$clip_text_start = $_POST["clip_text_start"];
$clip_text_end = $_POST["clip_text_end"];
$clip_desc = $_POST["clip_desc"];
$clip_order = $_POST["clip_order"];
if (strlen($clip_order) == 0) { $clip_order = 0; }
//no slashes
$clip_name = str_replace('/', '|', $clip_name);
$clip_name = str_replace('\\', '|', $clip_name);
//sql insert
$array['clips'][0]['clip_uuid'] = uuid();
$array['clips'][0]['clip_name'] = $clip_name;
$array['clips'][0]['clip_folder'] = $clip_folder;
$array['clips'][0]['clip_text_start'] = $clip_text_start;
$array['clips'][0]['clip_text_end'] = $clip_text_end;
$array['clips'][0]['clip_desc'] = $clip_desc;
$array['clips'][0]['clip_order'] = $clip_order;
$p = new permissions;
$p->add('clip_add', 'temp');
$database = new database;
$database->app_name = 'edit';
$database->app_uuid = '17e628ee-ccfa-49c0-29ca-9894a0384b9b';
$database->save($array);
unset($array);
$p->add('clip_add', 'temp');
require_once "header.php";
echo "<meta http-equiv=\"refresh\" content=\"1;url=clip_options.php\">\n";
echo $text['message-add'];
require_once "footer.php";
exit;
}
//show the content
require_once "header.php";
echo "<table width='100%' border='0' cellpadding='0' cellspacing='2'>\n";
echo "<tr>\n";
echo " <td align=\"left\">\n";
echo "<form method='post' action=''>";
echo "<table width='100%' border='0'>";
echo " <tr>";
echo " <td>Name</td>";
echo " <td><input type='text' class='txt' name='clip_name' id='clip_name'></td>";
echo " </tr>";
echo " <tr>";
echo " <td>".$text['label-folder']."</td>";
echo " <td><input type='text' class='txt' name='clip_folder'></td>";
echo " </tr>";
echo " <tr>";
echo " <td colspan='2'>".$text['label-before-selection']."<br>";
echo " <textarea name='clip_text_start' class='txt' style='resize: vertical;'></textarea>";
echo " </td>";
echo " </tr>";
echo " <tr>";
echo " <td colspan='2'>".$text['label-after-selection']."<br>";
echo " <textarea name='clip_text_end' class='txt' style='resize: vertical;'></textarea>";
echo " </td>";
echo " </tr>";
echo " <tr>";
echo " <td colspan='2'>".$text['label-notes']."<br>";
echo " <textarea name='clip_desc' class='txt' style='resize: vertical;'></textarea>";
echo " </td>";
echo " </tr>";
echo " <tr>";
echo " <td align='left'><input type='button' value='".$text['button-back']."' onclick='history.back()'></td>";
echo " <td align='right'><input type='submit' name='submit' value='".$text['button-add']."'></td>";
echo " </tr>";
echo "</table>";
echo "</form>";
echo " </td>";
echo " </tr>";
echo "</table>";
echo "<script>document.getElementById('clip_name').focus();</script>";
//include the footer
require_once "footer.php";
?>

View File

@@ -1,68 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
James Rose <james.o.rose@gmail.com>
*/
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check permissions
if (permission_exists('clip_delete')) {
//access granted
}
else {
echo "access denied";
exit;
}
//add multi-lingual support
$language = new text;
$text = $language->get();
//get the uuid from http values
$clip_uuid = $_GET["id"];
//delete the clip
if (is_uuid($clip_uuid)) {
$array['clips'][0]['clip_uuid'] = $clip_uuid;
$p = new permissions;
$p->add('clip_delete', 'temp');
$database = new database;
$database->app_name = 'edit';
$database->app_uuid = '17e628ee-ccfa-49c0-29ca-9894a0384b9b';
$database->delete($array);
unset($array);
$p->delete('clip_delete', 'temp');
}
//redirect the browser
header("Location: clip_options.php");
?>

View File

@@ -1,229 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
James Rose <james.o.rose@gmail.com>
*/
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check permissions
if (permission_exists('clip_view')) {
//access granted
}
else {
echo "access denied";
exit;
}
//include the header
require_once "header.php";
//add multi-lingual support
$language = new text;
$text = $language->get();
//check if this is a file
function isfile($filename) {
return @filesize($filename) > 0 ? true : false;
}
//count the spaces
function space($count) {
$r=''; $i=0;
while($i < $count) {
$r .= ' ';
$i++;
}
return $r;
}
//setup ajax
echo "<script type=\"text/javascript\" language=\"javascript\">\n";
echo " function makeRequest(url, strpost) {\n";
echo " var http_request = false;\n";
echo "\n";
echo " if (window.XMLHttpRequest) { // Mozilla, Safari, ...\n";
echo " http_request = new XMLHttpRequest();\n";
echo " if (http_request.overrideMimeType) {\n";
echo " http_request.overrideMimeType('text/xml');\n";
echo " // See note below about this line\n";
echo " }\n";
echo " } else if (window.ActiveXObject) { // IE\n";
echo " try {\n";
echo " http_request = new ActiveXObject(\"Msxml2.XMLHTTP\");\n";
echo " } catch (e) {\n";
echo " try {\n";
echo " http_request = new ActiveXObject(\"Microsoft.XMLHTTP\");\n";
echo " } catch (e) {}\n";
echo " }\n";
echo " }\n";
echo "\n";
echo " if (!http_request) {\n";
echo " alert('".$text['message-give-up']."');\n";
echo " return false;\n";
echo " }\n";
echo " http_request.onreadystatechange = function() { returnContent(http_request); };\n";
echo " if (http_request.overrideMimeType) {\n";
echo " http_request.overrideMimeType('text/html');\n";
echo " }\n";
echo " http_request.open('POST', url, true);\n";
echo "\n";
echo "\n";
echo " if (strpost.length == 0) {\n";
echo " //http_request.send(null);\n";
echo " http_request.send('name=value&foo=bar');\n";
echo " }\n";
echo " else {\n";
echo " http_request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');\n";
echo " http_request.send(strpost);\n";
echo " }\n";
echo "\n";
echo " }\n";
echo "\n";
echo " function returnContent(http_request) {\n";
echo "\n";
echo " if (http_request.readyState == 4) {\n";
echo " if (http_request.status == 200) {\n";
echo " parent.editAreaLoader.setValue('edit1', http_request.responseText); \n";
echo "\n";
echo " }\n";
echo " else {\n";
echo " alert('".$text['message-problem']."');\n";
echo " }\n";
echo " }\n";
echo "\n";
echo " }\n";
echo "</script>";
//setup the tree view
//echo "// ---------------------------------------------\n";
//echo "// --- http://www.codeproject.com/jscript/dhtml_treeview.asp\n";
//echo "// --- Name: Easy DHTML Treeview --\n";
//echo "// --- Author: D.D. de Kerf --\n";
//echo "// --- Version: 0.2 Date: 13-6-2001 --\n";
//echo "// ---------------------------------------------\n";
echo "<script language='JavaScript'>\n";
echo "function Toggle(node) {\n";
echo " // Unfold the branch if it isn't visible\n";
echo " if (node.nextSibling.style.display == 'none') {\n";
echo " node.nextSibling.style.display = 'block';\n";
echo " }\n";
echo " // Collapse the branch if it IS visible\n";
echo " else {\n";
echo " node.nextSibling.style.display = 'none';\n";
echo " }\n";
echo "\n";
echo "}\n";
echo "</script>";
// keyboard shortcut bindings
echo "<script language='JavaScript' type='text/javascript' src='".PROJECT_PATH."/resources/jquery/jquery-3.4.1.min.js'></script>\n";
echo "<script src='https://code.jquery.com/jquery-migrate-3.1.0.js'></script>\n";
//save file
key_press('ctrl+s', 'down', 'window', null, null, "if (parent.document.getElementById('frm_edit')) { parent.$('form#frm_edit').submit(); return false; }", true);
//open file manager/clip library pane
key_press('ctrl+q', 'down', 'window', null, null, "if (parent.document.getElementById('sidebar')) { parent.toggle_sidebar(); parent.focus_editor(); return false; }", true);
//prevent backspace (browser history back)
key_press('backspace', 'down', 'window', null, null, 'return false;', true);
//keyboard shortcut to execute command (when included on command page)
key_press('ctrl+enter', 'down', 'window', null, null, "if (!parent.document.getElementById('sidebar')) { parent.$('form#frm').submit(); return false; }", true);
//show the content
echo "</head>\n";
echo "<body style='margin: 0; padding: 5px;' onfocus='blur();'>\n";
echo "<div style='text-align: left; padding-top: 3px;'>\n";
echo "<div style='padding-bottom: 3px;'><a href='javascript:void(0);' onclick=\"window.open('clip_options.php?id=".urlencode($row['id'])."','clipwin','left=20,top=20,width=310,height=350,toolbar=0,resizable=0');\" style='text-decoration:none; cursor: pointer;' title=\"".$text['label-clip-library']."\"><img src='resources/images/icon_gear.png' border='0' align='absmiddle' style='margin: 0px 2px 4px -1px;'>".$text['label-clip-library']."</a></div>\n";
$sql = "select * from v_clips order by clip_folder asc, clip_name asc";
$database = new database;
$result = $database->select($sql, null, 'all');
unset($sql);
if (is_array($result) && @sizeof($result) != 0) {
$master_array = array();
foreach ($result as $row) {
$clip_folder = rtrim($row['clip_folder'], '/');
$clip_folder .= '/'.$row['clip_name'];
$parts = explode('/', $clip_folder);
$folders = array();
while ($bottom = array_pop($parts)) {
if (sizeof($folders) > 0) {
$folders = array($bottom => $folders);
}
else {
$clip['uuid'] = $row['clip_uuid'];
$clip['name'] = $row['clip_name'];
$clip['before'] = $row['clip_text_start'];
$clip['after'] = $row['clip_text_end'];
$folders = array($bottom => $clip);
}
}
$master_array = array_merge_recursive($master_array, $folders);
}
unset($result, $row);
function parse_array($arr) {
if (is_array($arr)) {
//folder/clip
foreach ($arr as $name => $sub_arr) {
if ($name != $sub_arr['name']) {
//folder
echo "<a onclick='Toggle(this);' style='display: block; cursor: pointer; text-decoration: none;'><img src='resources/images/icon_folder.png' border='none' align='absmiddle' style='margin: 1px 2px 3px 0px;'>".$name."</a>";
echo "<div style='display: none; padding-left: 16px;'>\n";
parse_array($sub_arr);
echo "</div>\n";
}
else {
//clip
echo "<div style='white-space: nowrap;'>\n";
echo "<a href='javascript:void(0);' onclick=\"parent.insert_clip(document.getElementById('before_".$sub_arr['uuid']."').value, document.getElementById('after_".$sub_arr['uuid']."').value);\">";
echo "<img src='resources/images/icon_file.png' border='0' align='absmiddle' style='margin: 1px 2px 3px -1px;'>";
echo escape($sub_arr['name']);
echo "</a>\n";
echo "<textarea style='display: none' id='before_".$sub_arr['uuid']."'>".$sub_arr['before']."</textarea>\n";
echo "<textarea style='display: none' id='after_".$sub_arr['uuid']."'>".$sub_arr['after']."</textarea>\n";
echo "</div>\n";
}
}
}
}
parse_array($master_array);
}
echo "</div>\n";
//inclue the footer
require_once "footer.php";
?>

View File

@@ -1,76 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
James Rose <james.o.rose@gmail.com>
*/
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check permissions
if (permission_exists('clip_edit')) {
//access granted
}
else {
echo "access denied";
exit;
}
//add multi-lingual support
$language = new text;
$text = $language->get();
//prepare the header
$title = $text['title-manage-clips'];
require_once "header.php";
//show the content
echo "<table cellpadding='0' cellspacing='0' border='0' style='height: 100%; width: 100%;'>\n";
echo "<form method='post' name='frm' action=''>";
echo "<tr><td colspan='2' style='padding-bottom: 3px;'><div id='selectedclip'>".$text['label-selected-clip']." <input type='text' name='clip_name' id='clip_name' value=''><input type='hidden' name='clip_uuid' id='clip_uuid' value=''></div></td></tr>\n";
echo "</form>";
echo "<tr>\n";
echo "<td valign='top' width='200' nowrap>";
echo " <iframe src='clip_options_list.php' style='border: solid 1px #ccc; height: calc(100% - 3px); width: calc(100% - 4px);'></iframe>";
echo "</td>\n";
echo "<td valign='top' style='height: 100%; padding: 0;'>";
echo "<table cellpadding='0' cellspacing='0' border='0' width='100%' height='100%'>";
echo " <tr><td><input type='button' class='btn' onclick=\"window.location='clip_add.php'\" value='".$text['button-add-clip']."'></td></tr>\n";
echo " <tr><td><input type='button' class='btn' onclick=\"window.location='clip_update.php?id='+document.getElementById('clip_uuid').value;\" value='".$text['button-edit-clip']."'></td></tr>\n";
echo " <tr><td><input type='button' class='btn' onclick=\"if (confirm('".$text['message-delete-clip']."')){ window.location='clip_delete.php?id='+document.getElementById('clip_uuid').value; }\" value='".$text['button-delete']."'></td></tr>\n";
echo " <tr><td height='100%'>&nbsp;</td></tr>\n";
echo " <tr><td><input type='button' class='btn' onclick='opener.location.reload(); self.close();' value='".$text['button-close']."'></td></tr>\n";
echo "</table>";
echo "</td>\n";
echo "</tr>\n";
echo "</table>";
//include footer
require_once "footer.php";
?>

View File

@@ -1,188 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
James Rose <james.o.rose@gmail.com>
*/
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check permissions
if (permission_exists('clip_edit')) {
//access granted
}
else {
echo "access denied";
exit;
}
//add multi-lingual support
$language = new text;
$text = $language->get();
//include
require_once "header.php";
//show the content
echo "<script type=\"text/javascript\" language=\"javascript\">\n";
echo " function makeRequest(url, strpost) {\n";
echo " var http_request = false;\n";
echo "\n";
echo " if (window.XMLHttpRequest) { // Mozilla, Safari, ...\n";
echo " http_request = new XMLHttpRequest();\n";
echo " if (http_request.overrideMimeType) {\n";
echo " http_request.overrideMimeType('text/xml');\n";
echo " // See note below about this line\n";
echo " }\n";
echo " } else if (window.ActiveXObject) { // IE\n";
echo " try {\n";
echo " http_request = new ActiveXObject(\"Msxml2.XMLHTTP\");\n";
echo " } catch (e) {\n";
echo " try {\n";
echo " http_request = new ActiveXObject(\"Microsoft.XMLHTTP\");\n";
echo " } catch (e) {}\n";
echo " }\n";
echo " }\n";
echo "\n";
echo " if (!http_request) {\n";
echo " alert('".$text['message-give-up']."');\n";
echo " return false;\n";
echo " }\n";
echo " http_request.onreadystatechange = function() { returnContent(http_request); };\n";
echo " http_request.overrideMimeType('text/html');\n";
echo " http_request.open('POST', url, true);\n";
echo "\n";
echo " if (strpost.length == 0) {\n";
echo " //http_request.send(null);\n";
echo " http_request.send('name=value&foo=bar');\n";
echo " }\n";
echo " else {\n";
echo " http_request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');\n";
echo " http_request.send(strpost);\n";
echo " }\n";
echo " }\n";
echo "\n";
echo " function returnContent(http_request) {\n";
echo "\n";
echo " if (http_request.readyState == 4) {\n";
echo " if (http_request.status == 200) {\n";
echo " parent.editAreaLoader.setValue('edit1', http_request.responseText); \n";
echo " }\n";
echo " else {\n";
echo " alert('".$text['message-problem']."');\n";
echo " }\n";
echo " }\n";
echo " }\n";
echo "</script>";
echo "<SCRIPT LANGUAGE=\"JavaScript\">\n";
//echo "// ---------------------------------------------\n";
//echo "// --- http://www.codeproject.com/jscript/dhtml_treeview.asp\n";
//echo "// --- Name: Easy DHTML Treeview --\n";
//echo "// --- Author: D.D. de Kerf --\n";
//echo "// --- Version: 0.2 Date: 13-6-2001 --\n";
//echo "// ---------------------------------------------\n";
echo "function Toggle(node) {\n";
echo " // Unfold the branch if it isn't visible\n";
echo " if (node.nextSibling.style.display == 'none') {\n";
echo " node.nextSibling.style.display = 'block';\n";
echo " }\n";
echo " // Collapse the branch if it IS visible\n";
echo " else {\n";
echo " node.nextSibling.style.display = 'none';\n";
echo " }\n";
echo "\n";
echo "}\n";
echo "</SCRIPT>";
echo "</head>\n";
echo "<body style='margin: 0; padding: 5px;' onfocus='blur();'>\n";
echo "<div style='text-align: left;'>\n";
$sql = "select * from v_clips order by clip_folder asc, clip_name asc";
$database = new database;
$result = $database->select($sql, null, 'all');
unset($sql);
if (is_array($result) && @sizeof($result) != 0) {
$master_array = array();
foreach ($result as $row) {
$clip_folder = rtrim($row['clip_folder'], '/');
$clip_folder .= '/'.$row['clip_name'];
$parts = explode('/', $clip_folder);
$folders = array();
while ($bottom = array_pop($parts)) {
if (sizeof($folders) > 0) {
$folders = array($bottom => $folders);
}
else {
$clip['uuid'] = $row['clip_uuid'];
$clip['name'] = $row['clip_name'];
$clip['before'] = $row['clip_text_start'];
$clip['after'] = $row['clip_text_end'];
$folders = array($bottom => $clip);
}
}
$master_array = array_merge_recursive($master_array, $folders);
}
function parse_array($arr) {
if (is_array($arr)) {
//folder/clip
foreach ($arr as $name => $sub_arr) {
if ($name != $sub_arr['name']) {
//folder
echo "<a onclick='Toggle(this);' style='display: block; cursor: pointer; text-decoration: none;'><img src='resources/images/icon_folder.png' border='none' align='absmiddle' style='margin: 1px 2px 3px 0px;'>".escape($name)."</a>";
echo "<div style='display: none; padding-left: 16px;'>\n";
parse_array($sub_arr);
echo "</div>\n";
}
else {
//clip
echo "<div style='white-space: nowrap;'>\n";
echo "<a href='javascript:void(0);' onclick=\"parent.document.getElementById('clip_uuid').value='".$sub_arr['uuid']."'; parent.document.getElementById('clip_name').value='".$sub_arr['name']."';\">";
echo "<img src='resources/images/icon_file.png' border='0' align='absmiddle' style='margin: 1px 2px 3px -1px;'>";
echo escape($sub_arr['name']);
echO "</a>\n";
echo "<textarea style='display: none' id='before_".$sub_arr['uuid']."'>".$sub_arr['before']."</textarea>\n";
echo "<textarea style='display: none' id='after_".$sub_arr['uuid']."'>".$sub_arr['after']."</textarea>\n";
echo "</div>\n";
}
}
}
}
parse_array($master_array);
}
unset($result, $row);
echo "</div>\n";
//include the footer
require_once "footer.php";
?>

View File

@@ -1,160 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2012
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
*/
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check permissions
if (permission_exists('clip_edit')) {
//access granted
}
else {
echo "access denied";
exit;
}
//add multi-lingual support
$language = new text;
$text = $language->get();
//process the HTTP POST
if (count($_POST) > 0) {
$clip_uuid = $_POST["id"];
$clip_name = $_POST["clip_name"];
$clip_folder = $_POST["clip_folder"];
$clip_text_start = $_POST["clip_text_start"];
$clip_text_end = $_POST["clip_text_end"];
$clip_desc = $_POST["clip_desc"];
$clip_order = $_POST["clip_order"];
//no slashes
$clip_name = str_replace('/', '|', $clip_name);
$clip_name = str_replace('\\', '|', $clip_name);
//sql update
$array['clips'][0]['clip_uuid'] = $clip_uuid;
$array['clips'][0]['clip_name'] = $clip_name;
$array['clips'][0]['clip_folder'] = $clip_folder;
$array['clips'][0]['clip_text_start'] = $clip_text_start;
$array['clips'][0]['clip_text_end'] = $clip_text_end;
$array['clips'][0]['clip_desc'] = $clip_desc;
$array['clips'][0]['clip_order'] = $clip_order;
$p = new permissions;
$p->add('clip_edit', 'temp');
$database = new database;
$database->app_name = 'edit';
$database->app_uuid = '17e628ee-ccfa-49c0-29ca-9894a0384b9b';
$database->save($array);
unset($array);
$p->add('clip_edit', 'temp');
//redirect the browser
require_once "header.php";
echo "<meta http-equiv=\"refresh\" content=\"1;url=clip_options.php\">\n";
echo $text['message-update'];
require_once "footer.php";
exit;
}
else {
//get the uuid from http values
$clip_uuid = $_GET["id"];
//get the clip
$sql = "select * from v_clips ";
$sql .= "where clip_uuid = :clip_uuid ";
$parameters['clip_uuid'] = $clip_uuid;
$database = new database;
$row = $database->select($sql, $parameters, 'row');
if (is_array($row) && @sizeof($row) != 0) {
$clip_name = $row["clip_name"];
$clip_folder = $row["clip_folder"];
$clip_text_start = $row["clip_text_start"];
$clip_text_end = $row["clip_text_end"];
$clip_desc = $row["clip_desc"];
$clip_order = $row["clip_order"];
}
unset($sql, $parameters, $row);
}
//show the content
require_once "header.php";
echo "<table width='100%' border='0' cellpadding='0' cellspacing='2'>\n";
echo "<tr>\n";
echo " <td align=\"left\">\n";
echo "<form method='post' action=''>";
echo "<table border='0' width='100%'>";
echo " <tr>";
echo " <td>Name</td>";
echo " <td><input type='text' class='txt' name='clip_name' value='$clip_name'></td>";
echo " </tr>";
echo " <tr>";
echo " <td>Folder</td>";
echo " <td><input type='text' class='txt' name='clip_folder' value='$clip_folder'></td>";
echo " </tr>";
echo " <tr>";
echo " <td colspan='2'>Before Selection<br>";
echo " <textarea class='txt' style='resize: vertical;' name='clip_text_start'>$clip_text_start</textarea>";
echo " </td>";
echo " </tr>";
echo " <tr>";
echo " <td colspan='2'>After Selection<br>";
echo " <textarea class='txt' style='resize: vertical;' name='clip_text_end'>$clip_text_end</textarea>";
echo " </td>";
echo " </tr>";
echo " <tr>";
echo " <td colspan='2'>Notes<br>";
echo " <textarea class='txt' style='resize: vertical;' name='clip_desc'>$clip_desc</textarea>";
echo " </td>";
echo " </tr>";
echo " <tr>";
echo " <td align='left'><input type='button' value='".$text['button-back']."' onclick='history.back()'></td>";
echo " <td align='right'>";
echo " <input type='hidden' name='id' value='$clip_uuid'>";
echo " <input type='submit' name='submit' value='Update'>";
echo " </td>";
echo " </tr>";
echo "</table>";
echo "</form>";
echo " </td>";
echo " </tr>";
echo "</table>";
//include the footer
require_once "footer.php";
?>

View File

@@ -1,112 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
James Rose <james.o.rose@gmail.com>
*/
//disable this feature
exit;
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check permissions
if (permission_exists('edit_save')) {
//access granted
}
else {
echo "access denied";
exit;
}
//add multi-lingual support
$language = new text;
$text = $language->get();
//set the variabls
$folder = $_REQUEST["folder"];
$folder = str_replace ("\\", "/", $folder);
$folder = realpath($folder);
$file = $_REQUEST["file"];
//delete the file or show the html form
if (strlen($folder) > 0 && strlen($file) > 0 && isset($_POST['token'])) {
//compare the tokens
$key_name = '/app/edit/file_delete';
$hash = hash_hmac('sha256', $key_name, $_SESSION['keys'][$key_name]);
if (!hash_equals($hash, $_POST['token'])) {
echo "access denied";
exit;
}
//delete the file
unlink($folder.'/'.$file);
//redirect the browser
header("Location: file_options.php");
}
else {
//create the token
$key_name = '/app/edit/file_delete';
$_SESSION['keys'][$key_name] = bin2hex(random_bytes(32));
$_SESSION['token'] = hash_hmac('sha256', $key_name, $_SESSION['keys'][$key_name]);
//display form
require_once "header.php";
echo "<br>";
echo "<div align='left'>";
echo " <form method='POST' action=''>";
echo " <table>";
echo " <tr>";
echo " <td>".$text['label-path']."</td>";
echo " </tr>";
echo " <tr>";
echo " <td>".escape($folder)."</td>";
echo " </tr>";
echo " </table>";
echo " <br />";
echo " <table>";
echo " <tr>";
echo " <td>".$text['label-file-name']."</td>";
echo " </tr>";
echo " <tr>";
echo " <td><input type='text' name='file' value='".escape($file)."'></td>";
echo " </tr>";
echo " <tr>";
echo " <td colspan='1' align='right'>";
echo " <input type='hidden' name='folder' value='".escape($folder)."'>";
echo " <input type='hidden' name='token' id='token' value='". $_SESSION['token']. "'>";
echo " <input type='submit' value='".$text['button-del-file']."'>";
echo " </td>";
echo " </tr>";
echo " </table>";
echo " </form>";
echo "</div>";
//include the footer
require_once "footer.php";
}
?>

View File

@@ -1,270 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
James Rose <james.o.rose@gmail.com>
*/
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check permissions
if (permission_exists('edit_view')) {
//access granted
}
else {
echo "access denied";
exit;
}
//add css and javascript
require_once "header.php";
//define function recure_dir
function recur_dir($dir) {
clearstatcache();
$htmldirlist = '';
$htmlfilelist = '';
$dirlist = opendir($dir);
$dir_array = array();
if($dirlist !== false) while (false !== ($file = readdir($dirlist))) {
if ($file != "." AND $file != ".."){
$newpath = $dir.'/'.$file;
$level = explode('/',$newpath);
if (
substr(strtolower($newpath), -4) == ".svn" ||
substr(strtolower($newpath), -4) == ".git" ||
substr(strtolower($newpath), -3) == ".db" ||
substr(strtolower($newpath), -4) == ".jpg" ||
substr(strtolower($newpath), -4) == ".gif" ||
substr(strtolower($newpath), -4) == ".png" ||
substr(strtolower($newpath), -4) == ".ico" ||
substr(strtolower($newpath), -4) == ".ttf"
) {
//ignore certain files (and folders)
}
else {
$dir_array[] = $newpath;
}
if ($x > 1000) { break; };
$x++;
}
}
asort($dir_array);
foreach ($dir_array as $newpath){
$level = explode('/',$newpath);
if (is_dir($newpath)) {
$dirname = end($level);
$htmldirlist .= "<div style='white-space: nowrap; padding-left: 16px;'>\n";
$htmldirlist .= "<a onclick='Toggle(this);' style='display: block; cursor: pointer;'><img src='resources/images/icon_folder.png' border='0' align='absmiddle' style='margin: 1px 2px 3px 0px;'>".$dirname."</a>";
$htmldirlist .= "<div style='display: none;'>".recur_dir($newpath)."</div>\n";
$htmldirlist .= "</div>\n";
}
else {
$filename = end($level);
$filesize = round(filesize($newpath)/1024, 2);
$newpath = str_replace ('//', '/', $newpath);
$newpath = str_replace ("\\", "/", $newpath);
$htmlfilelist .= "<div style='white-space: nowrap; padding-left: 16px;'>\n";
$htmlfilelist .= "<a href='javascript:void(0);' onclick=\"parent.document.getElementById('filepath').value='".$newpath."'; parent.document.getElementById('current_file').value = '".$newpath."'; makeRequest('file_read.php','file=".urlencode($newpath)."');\" title='".$newpath." &#10; ".$filesize." KB'>";
$htmlfilelist .= "<img src='resources/images/icon_file.png' border='0' align='absmiddle' style='margin: 1px 2px 3px -1px;'>".$filename."</a>\n";
$htmlfilelist .= "</div>\n";
}
}
closedir($dirlist);
return $htmldirlist ."\n". $htmlfilelist;
}
//get the directory
if (!isset($_SESSION)) { session_start(); }
switch ($_SESSION["app"]["edit"]["dir"]) {
case 'scripts':
$edit_directory = $_SESSION['switch']['scripts']['dir'];
break;
case 'php':
$edit_directory = $_SERVER["DOCUMENT_ROOT"].'/'.PROJECT_PATH;
break;
case 'grammar':
$edit_directory = $_SESSION['switch']['grammar']['dir'];
break;
case 'provision':
switch (PHP_OS) {
case "Linux":
if (file_exists('/etc/fusionpbx/resources/templates/provision')) {
$edit_directory = '/etc/fusionpbx/resources/templates/provision';
}
else {
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
}
break;
case "FreeBSD":
if (file_exists('/usr/local/etc/fusionpbx/resources/templates/provision')) {
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
}
else {
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
}
break;
case "NetBSD":
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
break;
case "OpenBSD":
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
break;
default:
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
}
break;
case 'xml':
$edit_directory = $_SESSION['switch']['conf']['dir'];
break;
}
if (!isset($edit_directory)) {
foreach ($_SESSION['editor']['path'] as $path) {
if ($_SESSION["app"]["edit"]["dir"] == $path) {
$edit_directory = $path;
break;
}
}
}
//define ajax functions
echo "<script type=\"text/javascript\" language=\"javascript\">\n";
echo " function makeRequest(url, strpost) {\n";
echo " var http_request = false;\n";
echo "\n";
echo " if (window.XMLHttpRequest) { // Mozilla, Safari, ...\n";
echo " http_request = new XMLHttpRequest();\n";
echo " if (http_request.overrideMimeType) {\n";
echo " http_request.overrideMimeType('text/xml');\n";
echo " // See note below about this line\n";
echo " }\n";
echo " } else if (window.ActiveXObject) { // IE\n";
echo " try {\n";
echo " http_request = new ActiveXObject(\"Msxml2.XMLHTTP\");\n";
echo " } catch (e) {\n";
echo " try {\n";
echo " http_request = new ActiveXObject(\"Microsoft.XMLHTTP\");\n";
echo " } catch (e) {}\n";
echo " }\n";
echo " }\n";
echo "\n";
echo " if (!http_request) {\n";
echo " alert('".$text['message-give-up']."');\n";
echo " return false;\n";
echo " }\n";
echo " http_request.onreadystatechange = function() { returnContent(http_request); };\n";
echo " if (http_request.overrideMimeType) {\n";
echo " http_request.overrideMimeType('text/html');\n";
echo " }\n";
echo " http_request.open('POST', url, true);\n";
echo "\n";
echo "\n";
echo " if (strpost.length == 0) {\n";
echo " //http_request.send(null);\n";
echo " http_request.send('name=value&foo=bar');\n";
echo " }\n";
echo " else {\n";
echo " http_request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');\n";
echo " http_request.send(strpost);\n";
echo " }\n";
echo "\n";
echo " }\n";
echo "\n";
echo " function returnContent(http_request) {\n";
echo "\n";
echo " if (http_request.readyState == 4) {\n";
echo " if (http_request.status == 200) {\n";
echo " parent.document.getElementById('editor_source').value=http_request.responseText;";
echo " parent.editor.getSession().setValue(parent.document.getElementById('editor_source').value);";
echo " parent.editor.gotoLine(1);";
echo " parent.editor.scrollToLine(1, true, true, function() {});";
echo " parent.editor.focus();";
echo "\n";
echo " }\n";
echo " else {\n";
echo " alert('".$text['message-problem']."');\n";
echo " }\n";
echo " }\n";
echo "\n";
echo " }\n";
echo "</script>";
echo "<SCRIPT LANGUAGE=\"JavaScript\">\n";
//echo "// ---------------------------------------------\n";
//echo "// --- http://www.codeproject.com/jscript/dhtml_treeview.asp\n";
//echo "// --- Name: Easy DHTML Treeview --\n";
//echo "// --- Author: D.D. de Kerf --\n";
//echo "// --- Version: 0.2 Date: 13-6-2001 --\n";
//echo "// ---------------------------------------------\n";
echo "function Toggle(node) {\n";
echo " // Unfold the branch if it isn't visible\n";
echo " if (node.nextSibling.style.display == 'none') {\n";
echo " node.nextSibling.style.display = 'block';\n";
echo " }\n";
echo " // Collapse the branch if it IS visible\n";
echo " else {\n";
echo " node.nextSibling.style.display = 'none';\n";
echo " }\n";
echo "\n";
echo "}\n";
echo "</SCRIPT>";
// keyboard shortcut bindings
echo "<script language='JavaScript' type='text/javascript' src='".PROJECT_PATH."/resources/jquery/jquery-3.4.1.min.js'></script>\n";
echo "<script src='https://code.jquery.com/jquery-migrate-3.1.0.js'></script>\n";
//save file
key_press('ctrl+s', 'down', 'window', null, null, "parent.$('form#frm_edit').submit(); return false;", true);
//open file manager/clip library pane
key_press('ctrl+q', 'down', 'window', null, null, 'parent.toggle_sidebar(); parent.focus_editor(); return false;', true);
//prevent backspace (browser history back)
key_press('backspace', 'down', 'window', null, null, 'return false;', true);
echo "</head>\n";
echo "<body style='margin: 0px; padding: 5px;'>\n";
echo "<div style='text-align: left; padding-top: 3px; padding-bottom: 3px;'><a href='javascript:void(0);' onclick=\"window.open('file_options.php','filewin','left=20,top=20,width=310,height=350,toolbar=0,resizable=0');\" style='text-decoration:none;' title='".$text['label-files']."'><img src='resources/images/icon_gear.png' border='0' align='absmiddle' style='margin: 0px 2px 4px -1px;'>".$text['label-files']."</a></div>\n";
echo "<div style='text-align: left; margin-left: -16px;'>\n";
if (file_exists($edit_directory)) {
echo recur_dir($edit_directory);
}
echo "</div>\n";
require_once "footer.php";
unset ($result_count);
unset ($result);
unset ($key);
unset ($val);
unset ($c);
?>

View File

@@ -1,119 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
James Rose <james.o.rose@gmail.com>
*/
//disable this feature
exit;
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check permissions
if (permission_exists('edit_save')) {
//access granted
}
else {
echo "access denied";
exit;
}
//add multi-lingual support
$language = new text;
$text = $language->get();
//handle the directory and file
$folder = $_REQUEST["folder"];
$folder = str_replace ("\\", "/", $folder);
if (substr($folder, -1) != "/") { $folder = $folder.'/'; }
$file = $_REQUEST["file"];
//write the file or show the html form
if (strlen($folder) > 0 && strlen($file) > 0) {
//compare the tokens
$key_name = '/app/edit/file_new';
$hash = hash_hmac('sha256', $key_name, $_SESSION['keys'][$key_name]);
if (!hash_equals($hash, $_POST['token'])) {
echo "access denied";
exit;
}
//create new file
$handle = fopen($folder.$file, 'wb') or die("Error!!");
$content = "<?php\n\n?>";
fwrite($handle, $content);
fclose($handle);
header("Location: file_options.php");
}
else {
//create a token
$key_name = '/app/edit/file_new';
$_SESSION['keys'][$key_name] = bin2hex(random_bytes(32));
$_SESSION['token'] = hash_hmac('sha256', $key_name, $_SESSION['keys'][$key_name]);
//include the header
require_once "header.php";
//show the content
echo "<br>";
echo "<div align='left'>";
echo "<form method='POST' action=''>";
echo "<table>";
echo " <tr>";
echo " <td>Path:</td>";
echo " </tr>";
echo " <tr>";
echo " <td>".$folder.$file."</td>";
echo " </tr>";
echo "</table>";
echo "<br />";
echo "<table>";
echo " <tr>";
echo " <td>".$text['label-file-name']."</td>";
echo " </tr>";
echo " <tr>";
echo " <td><input type='text' name='file' value=''></td>";
echo " </tr>";
echo " <tr>";
echo " <td colspan='1' align='right'>";
echo " <input type='hidden' name='folder' value='$folder'>";
echo " <input type='hidden' name='token' id='token' value='". $_SESSION['token']. "'>";
echo " <input type='button' value='".$text['button-back']."' onclick='history.back()'><input type='submit' value='".$text['button-new-file']."'>";
echo " </td>";
echo " </tr>";
echo "</table>";
echo "</form>";
echo "</div>";
require_once "footer.php";
}
?>

View File

@@ -1,90 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
James Rose <james.o.rose@gmail.com>
*/
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check permissions
if (permission_exists('edit_save')) {
//access granted
}
else {
echo "access denied";
exit;
}
//add multi-lingual support
$language = new text;
$text = $language->get();
//set the title and include the header
$title = $text['title-manage-files'];
require_once "header.php";
//set the variables
$file = $_GET["file"];
$file = str_replace ("\\", "/", $file);
$folder = $_GET["folder"];
$folder = str_replace ($file, "", $folder);
$urlpath = str_replace ($_SERVER["DOCUMENT_ROOT"], "", $folder);
//show the content
echo "<table cellpadding='0' cellspacing='0' border='0' style='height: 100%; width: 100%;'>\n";
echo " <tr>";
echo " <td colspan='2'>";
echo " <table border='0'>";
echo " <form method='post' name='frm' action=''>";
echo " <tr><td align='right'>".$text['label-path']."</td><td width='95%'><input type='text' name='folder' id='folder' style=\"width: 100%;\" value=''></td><tr>\n";
echo " <tr><td align='right'>".$text['label-file']."</td><td width='95%' style=\"width: 60%;\"><input type='text' name='filename' id='filename' style=\"width: 100%;\" value=''></div></td></tr>\n";
echo " </form>";
echo " </table>";
echo " </td>\n";
echo " </tr>\n";
echo " <tr>\n";
echo " <td valign='top' width='200' nowrap>";
echo " <iframe src='file_options_list.php' style='border: solid 1px #ccc; height: calc(100% - 3px); width: calc(100% - 4px);'></iframe>";
echo " </td>\n";
echo " <td valign='top' style='height: 100%; padding: 0;'>";
echo " <table cellpadding='0' cellspacing='0' border='0' width='100%' height='100%'>";
echo " <tr><td><input type='button' class='btn' onclick=\"window.location='file_new.php?folder='+document.getElementById('folder').value;\" value='".$text['button-add-file']."'></td></tr>\n";
echo " <tr><td><input type='button' class='btn' onclick=\"window.location='folder_new.php?folder='+document.getElementById('folder').value;\" value='".$text['button-add-dir']."'></td></tr>\n";
echo " <tr><td><input type='button' class='btn' onclick=\"window.location='file_rename.php?folder='+document.getElementById('folder').value+'&filename='+document.getElementById('filename').value;\" value='".$text['button-rename-file']."'></td></tr>\n";
echo " <tr><td><input type='button' class='btn' onclick=\"window.location='file_delete.php?folder='+document.getElementById('folder').value+'&file='+document.getElementById('filename').value;\" value='".$text['button-del-file']."'></td></tr>\n";
echo " <tr><td><input type='button' class='btn' onclick=\"window.location='folder_delete.php?folder='+document.getElementById('folder').value;\" value='".$text['button-del-dir']."'></td></tr>\n";
echo " <tr><td height='100%'>&nbsp;</td></tr>\n";
echo " <tr><td><input type='button' class='btn' onclick='opener.location.reload(); self.close();' value='".$text['button-close']."'></td></tr>\n";
echo " </table>";
echo " </td>\n";
echo " </tr>\n";
echo "</table>";
//include the footer
require_once "footer.php";
?>

View File

@@ -1,254 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
James Rose <james.o.rose@gmail.com>
*/
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check permissions
if (permission_exists('edit_view')) {
//access granted
}
else {
echo "access denied";
exit;
}
//add multi-lingual support
$language = new text;
$text = $language->get();
//include
require_once "header.php";
//define function recure_dir
function recur_dir($dir) {
clearstatcache();
$htmldirlist = '';
$htmlfilelist = '';
$dirlist = opendir($dir);
$dir_array = array();
if($dirlist !== false) while (false !== ($file = readdir($dirlist))) {
if ($file != "." AND $file != ".."){
$newpath = $dir.'/'.$file;
$level = explode('/',$newpath);
if (
substr(strtolower($newpath), -4) == ".svn" ||
substr(strtolower($newpath), -4) == ".git" ||
substr(strtolower($newpath), -3) == ".db" ||
substr(strtolower($newpath), -4) == ".jpg" ||
substr(strtolower($newpath), -4) == ".gif" ||
substr(strtolower($newpath), -4) == ".png" ||
substr(strtolower($newpath), -4) == ".ico" ||
substr(strtolower($newpath), -4) == ".ttf"
){
//ignore certain files (and folders)
}
else {
$dir_array[] = $newpath;
}
if ($x > 1000) { break; };
$x++;
}
}
asort($dir_array);
foreach ($dir_array as $newpath){
$level = explode('/',$newpath);
if (is_dir($newpath)) {
$dirname = end($level);
$newpath = str_replace ('//', '/', $newpath);
$htmldirlist .= "
<table border=0 cellpadding='0' cellspacing='0' width='100%'>
<tr>
<td nowrap style='padding-left: 16px;'>
<a onclick=\"Toggle(this, '".$newpath."');\" style='cursor: pointer;'><img src='resources/images/icon_folder.png' border='0' align='absmiddle' style='margin: 1px 2px 3px 0px;'>".$dirname."</a><div style='display:none'>".recur_dir($newpath)."</div>
</td>
</tr>
</table>\n";
}
else {
$filename = end($level);
$filesize = round(filesize($newpath)/1024, 2);
$newpath = str_replace ('//', '/', $newpath);
$newpath = str_replace ("\\", "/", $newpath);
$newpath = str_replace ($filename, '', $newpath);
$htmlfilelist .= "
<table border=0 cellpadding='0' cellspacing='0' width='100%'>
<tr>
<td nowrap align='bottom' style='padding-left: 16px;'>
<a href='javascript:void(0);' onclick=\"parent.document.getElementById('filename').value='".$filename."'; parent.document.getElementById('folder').value='".$newpath."';\" title='".$newpath." &#10; ".$filesize." KB'><img src='resources/images/icon_file.png' border='0' align='absmiddle' style='margin: 1px 2px 3px -1px;'>".$filename."</a>
</td>
</tr>
</table>\n";
}
}
closedir($dirlist);
return $htmldirlist ."\n". $htmlfilelist;
}
echo "<script type=\"text/javascript\" language=\"javascript\">\n";
echo " function makeRequest(url, strpost) {\n";
echo " var http_request = false;\n";
echo "\n";
echo " if (window.XMLHttpRequest) { // Mozilla, Safari, ...\n";
echo " http_request = new XMLHttpRequest();\n";
echo " if (http_request.overrideMimeType) {\n";
echo " http_request.overrideMimeType('text/xml');\n";
echo " // See note below about this line\n";
echo " }\n";
echo " } else if (window.ActiveXObject) { // IE\n";
echo " try {\n";
echo " http_request = new ActiveXObject(\"Msxml2.XMLHTTP\");\n";
echo " } catch (e) {\n";
echo " try {\n";
echo " http_request = new ActiveXObject(\"Microsoft.XMLHTTP\");\n";
echo " } catch (e) {}\n";
echo " }\n";
echo " }\n";
echo "\n";
echo " if (!http_request) {\n";
echo " alert('".$text['message-give-up']."');\n";
echo " return false;\n";
echo " }\n";
echo " http_request.onreadystatechange = function() { returnContent(http_request); };\n";
echo " http_request.overrideMimeType('text/html');\n";
echo " http_request.open('POST', url, true);\n";
echo "\n";
echo "\n";
echo " if (strpost.length == 0) {\n";
echo " //http_request.send(null);\n";
echo " http_request.send('name=value&foo=bar');\n";
echo " }\n";
echo " else {\n";
echo " http_request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');\n";
echo " http_request.send(strpost);\n";
echo " }\n";
echo "\n";
echo " }\n";
echo "\n";
echo " function returnContent(http_request) {\n";
echo "\n";
echo " if (http_request.readyState == 4) {\n";
echo " if (http_request.status == 200) {\n";
echo " parent.editAreaLoader.setValue('edit1', http_request.responseText); \n";
echo "\n";
echo " }\n";
echo " else {\n";
echo " alert('".$text['message-problem']."');\n";
echo " }\n";
echo " }\n";
echo "\n";
echo " }\n";
echo "</script>\n";
echo "<SCRIPT LANGUAGE=\"JavaScript\">\n";
//echo "// ---------------------------------------------\n";
//echo "// --- http://www.codeproject.com/jscript/dhtml_treeview.asp\n";
//echo "// --- Name: Easy DHTML Treeview --\n";
//echo "// --- Author: D.D. de Kerf --\n";
//echo "// --- Version: 0.2 Date: 13-6-2001 --\n";
//echo "// ---------------------------------------------\n";
echo "function Toggle(node, path) {\n";
echo " parent.document.getElementById('folder').value=path; \n";
echo " parent.document.getElementById('filename').value='';\n";
echo " parent.document.getElementById('folder').focus();\n";
echo " // Unfold the branch if it isn't visible\n";
echo " if (node.nextSibling.style.display == 'none') {\n";
echo " node.nextSibling.style.display = 'block';\n";
echo " }\n";
echo " // Collapse the branch if it IS visible\n";
echo " else {\n";
echo " node.nextSibling.style.display = 'none';\n";
echo " }\n";
echo "\n";
echo "}\n";
echo "</SCRIPT>\n";
echo "</head>\n";
echo "<body style='margin: 0; padding: 5px;' onfocus='blur();'>\n";
echo "<div style='text-align: left; margin-left: -16px;'>\n";
if (!isset($_SESSION)) { session_start(); }
//get the directory
if (!isset($_SESSION)) { session_start(); }
switch ($_SESSION["app"]["edit"]["dir"]) {
case 'scripts':
$edit_directory = $_SESSION['switch']['scripts']['dir'];
break;
case 'php':
$edit_directory = $_SERVER["DOCUMENT_ROOT"].'/'.PROJECT_PATH;
break;
case 'grammar':
$edit_directory = $_SESSION['switch']['grammar']['dir'];
break;
case 'provision':
switch (PHP_OS) {
case "Linux":
if (file_exists('/etc/fusionpbx/resources/templates/provision')) {
$edit_directory = '/etc/fusionpbx/resources/templates/provision';
}
else {
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
}
break;
case "FreeBSD":
if (file_exists('/usr/local/etc/fusionpbx/resources/templates/provision')) {
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
}
else {
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
}
break;
case "NetBSD":
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
break;
case "OpenBSD":
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
break;
default:
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
}
break;
case 'xml':
$edit_directory = $_SESSION['switch']['conf']['dir'];
break;
}
if (file_exists($edit_directory)) {
echo recur_dir($edit_directory);
}
echo "</div>\n";
require_once "footer.php";
?>

View File

@@ -1,120 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
*/
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check permissions
if (permission_exists('edit_view')) {
//access granted
}
else {
echo "access denied";
exit;
}
//get the directory
if (!isset($_SESSION)) { session_start(); }
switch ($_SESSION["app"]["edit"]["dir"]) {
case 'scripts':
$edit_directory = $_SESSION['switch']['scripts']['dir'];
break;
case 'php':
$edit_directory = $_SERVER["DOCUMENT_ROOT"].'/'.PROJECT_PATH;
break;
case 'grammar':
$edit_directory = $_SESSION['switch']['grammar']['dir'];
break;
case 'provision':
switch (PHP_OS) {
case "Linux":
if (file_exists('/etc/fusionpbx/resources/templates/provision')) {
$edit_directory = '/etc/fusionpbx/resources/templates/provision';
}
else {
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
}
break;
case "FreeBSD":
if (file_exists('/usr/local/etc/fusionpbx/resources/templates/provision')) {
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
}
else {
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
}
break;
case "NetBSD":
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
break;
case "OpenBSD":
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
break;
default:
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
}
break;
case 'xml':
$edit_directory = $_SESSION['switch']['conf']['dir'];
break;
}
if (!isset($edit_directory)) {
foreach ($_SESSION['editor']['path'] as $path) {
if ($_SESSION["app"]["edit"]["dir"] == $path) {
$edit_directory = $path;
break;
}
}
}
//set the file variable
$file_name = $_POST["file"];
//remove attempts to change the directory
$file_name = str_replace('..', '', $file_name);
$file_name = str_replace ("\\", "/", $file_name);
//break the path into an array
$path_array = pathinfo($file_name);
$path_prefix = substr($path_array['dirname'], 0, strlen($edit_directory));
//validate the path
if (realpath($path_prefix) == realpath($edit_directory)) {
//get the contents of the file
$handle = fopen($file_name, "r");
if ($handle) {
while (!feof($handle)) {
$buffer = fgets($handle, 4096);
echo $buffer;
}
fclose($handle);
}
}
?>

View File

@@ -1,129 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
James Rose <james.o.rose@gmail.com>
*/
//disable this feature
exit;
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check permissions
if (permission_exists('edit_save')) {
//access granted
}
else {
echo "access denied";
exit;
}
//add multi-lingual support
$language = new text;
$text = $language->get();
//set the variables
$folder = $_REQUEST["folder"];
//$folder = str_replace ("\\", "/", $folder);
//if (substr($folder, -1) != "/") { $folder = $folder.'/'; }
$new_file_name = $_REQUEST["new_file_name"];
$fil_ename = $_REQUEST["filename"];
//rename the file or show the html form
if (strlen($folder) > 0 && strlen($newfilename) > 0) {
//compare the tokens
$key_name = '/app/edit/file_new';
$hash = hash_hmac('sha256', $key_name, $_SESSION['keys'][$key_name]);
if (!hash_equals($hash, $_POST['token'])) {
echo "access denied";
exit;
}
//rename the file
//echo "new file: ".$newfilename."<br>";
//echo "folder: ".$folder."<br>";
//echo "orig filename: ".$file_name."<br>";;
rename($folder.$file_name, $folder.$new_file_name);
header("Location: file_options.php");
}
else {
//create the token
$key_name = '/app/edit/file_new';
$_SESSION['keys'][$key_name] = bin2hex(random_bytes(32));
$_SESSION['token'] = hash_hmac('sha256', $key_name, $_SESSION['keys'][$key_name]);
//display the form
require_once "header.php";
echo "<br>";
echo "<div align='left'>";
echo "<form method='POST' action=''>";
echo "<table>";
echo " <tr>";
echo " <td>".$text['label-path']."</td>";
echo " </tr>";
echo " <tr>";
echo " <td>".escape($folder.$file_name)."</td>";
echo " </tr>";
echo " <tr>";
echo " <td><br></td>";
echo " </tr>";
echo " <tr>";
echo " <td>".$text['label-file-name-orig']."</td>";
echo " </tr>";
echo " <tr>";
echo " <td>".escape($file_name)."</td>";
echo " </tr>";
echo "</table>";
echo "<br />";
echo "<table>";
echo " <tr>";
echo " <td>".$text['label-rename-file-to']."</td>";
echo " </tr>";
echo " <tr>";
echo " <td><input type='text' name='newfilename' value=''></td>";
echo " </tr>";
echo " <tr>";
echo " <td colspan='1' align='right'>";
echo " <input type='hidden' name='folder' value='".escape($folder)."'>";
echo " <input type='hidden' name='filename' value='".escape($file_name)."'>";
echo " <input type='hidden' name='token' id='token' value='". $_SESSION['token']. "'>";
echo " <input type='button' value='".$text['button-back']."' onclick='history.back()'><input type='submit' value='".$text['button-rename-file']."'>";
echo " </td>";
echo " </tr>";
echo "</table>";
echo "</form>";
echo "</div>";
require_once "footer.php";
}
?>

View File

@@ -1,148 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
James Rose <james.o.rose@gmail.com>
*/
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check permissions
if (permission_exists('edit_save')) {
//access granted
}
else {
echo "access denied";
exit;
}
//add multi-lingual support
$language = new text;
$text = $language->get();
//compare the tokens
$key_name = '/app/edit/'.$_POST['mode'];
$hash = hash_hmac('sha256', $key_name, $_SESSION['keys'][$key_name]);
if (!hash_equals($hash, $_POST['token'])) {
echo "access denied";
exit;
}
//get the directory
if (!isset($_SESSION)) { session_start(); }
switch ($_SESSION["app"]["edit"]["dir"]) {
case 'scripts':
$edit_directory = $_SESSION['switch']['scripts']['dir'];
break;
case 'php':
$edit_directory = $_SERVER["DOCUMENT_ROOT"].'/'.PROJECT_PATH;
break;
case 'grammar':
$edit_directory = $_SESSION['switch']['grammar']['dir'];
break;
case 'provision':
switch (PHP_OS) {
case "Linux":
if (file_exists('/etc/fusionpbx/resources/templates/provision')) {
$edit_directory = '/etc/fusionpbx/resources/templates/provision';
}
else {
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
}
break;
case "FreeBSD":
if (file_exists('/usr/local/etc/fusionpbx/resources/templates/provision')) {
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
}
else {
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
}
break;
case "NetBSD":
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
break;
case "OpenBSD":
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
break;
default:
$edit_directory = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/resources/templates/provision/";
}
break;
case 'xml':
$edit_directory = $_SESSION['switch']['conf']['dir'];
break;
}
if (!isset($edit_directory)) {
foreach ($_SESSION['editor']['path'] as $path) {
if ($_SESSION["app"]["edit"]["dir"] == $path) {
$edit_directory = $path;
break;
}
}
}
//set the file variable
$file_path = $_POST["filepath"];
//remove attempts to change the directory
$file_path = str_replace('..', '', $file_path);
$file_path = str_replace ("\\", "/", $file_path);
//break the path into an array
$path_array = pathinfo($file_path);
$path_prefix = substr($path_array['dirname'], 0, strlen($edit_directory));
//validate the path
if (realpath($path_prefix) == realpath($edit_directory)) {
if ($file_path != '') {
try {
//save file content
$file_path = realpath($file_path);
$file_path = str_replace ('//', '/', $file_path);
$file_path = str_replace ("\\", "/", $file_path);
if (file_exists($file_path)) {
$handle = fopen($file_path, 'wb');
if (!$handle) {
throw new Exception('Write Failed - Check File Owner & Permissions');
}
fwrite($handle, $_POST["content"]);
fclose($handle);
}
//set the reload_xml value to true
$_SESSION["reload_xml"] = true;
//alert user of success
echo "Changes Saved";
}
catch(Exception $e) {
//alert error
echo $e->getMessage();
}
}
}
?>

View File

@@ -1,98 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
*/
//disable this feature
exit;
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check the permissions
if (permission_exists('edit_save')) {
//access granted
}
else {
echo "access denied";
exit;
}
//set the variables
$folder = $_GET["folder"];
$folder = str_replace ("\\", "/", $folder);
//delete the directory
if (strlen($folder) > 0 && isset($_POST['token'])) {
//compare the tokens
$key_name = '/app/edit/folder_delete';
$hash = hash_hmac('sha256', $key_name, $_SESSION['keys'][$key_name]);
if (!hash_equals($hash, $_POST['token'])) {
echo "access denied";
exit;
}
//delete the folder
rmdir($folder); //, 0700
header("Location: file_options.php");
}
else {
//create the token
$key_name = '/app/edit/folder_delete';
$_SESSION['keys'][$key_name] = bin2hex(random_bytes(32));
$_SESSION['token'] = hash_hmac('sha256', $key_name, $_SESSION['keys'][$key_name]);
//display form
require_once "header.php";
echo "<br>";
echo "<div align='left'>";
echo " <form method='POST' action=''>";
echo " <table>";
echo " <tr>";
echo " <td>".$text['label-path']."</td>";
echo " </tr>";
echo " <tr>";
echo " <td>".$folder."</td>";
echo " </tr>";
echo " </table>";
echo " <br />";
echo " <table>";
echo " <tr>";
echo " <td colspan='1' align='right'>";
echo " <input type='hidden' name='folder' value='$folder'>";
echo " <input type='hidden' name='token' id='token' value='". $_SESSION['token']. "'>";
echo " <input type='submit' value='".$text['button-del-dir']."'>";
echo " </td>";
echo " </tr>";
echo " </table>";
echo " </form>";
echo "</div>";
//include the footer
require_once "footer.php";
}
?>

View File

@@ -1,118 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
James Rose <james.o.rose@gmail.com>
*/
//disable this feature
exit;
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check permissions
if (permission_exists('edit_save')) {
//access granted
}
else {
echo "access denied";
exit;
}
//add multi-lingual support
$language = new text;
$text = $language->get();
//preparing the directory
$folder = $_REQUEST["folder"];
$folder = str_replace ("\\", "/", $folder);
$foldername = $_REQUEST["foldername"];
//create the directory or show the html form
if (strlen($folder) > 0 && strlen($foldername) > 0) {
//compare the tokens
$key_name = '/app/edit/folder_new';
$hash = hash_hmac('sha256', $key_name, $_SESSION['keys'][$key_name]);
if (!hash_equals($hash, $_POST['token'])) {
echo "access denied";
exit;
}
//create new folder
mkdir($folder.'/'.$foldername); //, 0700
header("Location: file_options.php");
}
else {
//create a token
$key_name = '/app/edit/folder_new';
$_SESSION['keys'][$key_name] = bin2hex(random_bytes(32));
$_SESSION['token'] = hash_hmac('sha256', $key_name, $_SESSION['keys'][$key_name]);
//show the footer
require_once "header.php";
//show the content
echo "<br>";
echo "<div align='left'>";
echo "<form method='POST' action=''>";
echo "<table>";
echo " <tr>";
echo " <td>".$text['label-path']."</td>";
echo " </tr>";
echo " <tr>";
echo " <td>".$folder."</td>";
echo " </tr>";
echo "</table>";
echo "<br />";
echo "<table>";
echo " <tr>";
echo " <td>".$text['label-folder-name']."</td>";
echo " </tr>";
echo " <tr>";
echo " <td><input type='text' name='foldername' value=''></td>";
echo " </tr>";
echo " <tr>";
echo " <td colspan='1' align='right'>";
echo " <input type='hidden' name='folder' value='$folder'>";
echo " <input type='hidden' name='token' id='token' value='". $_SESSION['token']. "'>";
echo " <input type='button' value='".$text['button-back']."' onclick='history.back()'><input type='submit' value='".$text['button-new-folder']."'>";
echo " </td>";
echo " </tr>";
echo "</table>";
echo "</form>";
echo "</div>";
//show the footer
require_once "footer.php";
}
?>

View File

@@ -1,31 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2012
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
*/
echo "<div>";
echo "</body>";
echo "</html>";
?>

View File

@@ -1,88 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2012
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
James Rose <james.o.rose@gmail.com>
*/
//add multi-lingual support
$language = new text;
$text = $language->get();
echo "<html>";
echo "<head>";
echo "<title>".$title."</title>";
//echo "<link href='style.css' rel='stylesheet' type='text/css'>";
echo "<style type='text/css'>";
echo "<!--\n";
echo "th {\n";
echo " color: #5f5f5f;\n";
echo " font-size: 12px;\n";
echo " font-family: arial;\n";
echo " font-weight: bold;\n";
echo " background-color: #EFEFEF;\n";
echo "}\n";
echo "BODY {\n";
echo " font-size: 11px;\n";
echo " font-family: arial;\n";
echo "}\n";
echo "TD {\n";
echo " font-size: 11px;\n";
echo " font-family: arial;\n";
echo "}\n";
echo "INPUT, SELECT, TEXTAREA {\n";
echo " font-size: 11px;\n";
echo " }\n";
echo ".btn {\n";
echo " width: 100%;\n";
echo "}\n";
echo ".txt {\n";
echo " width: 100%;\n";
echo "}\n";
echo "//-->\n";
echo "</style>";
echo "<SCRIPT language=\"JavaScript\">\n";
echo "<!--\n";
echo "function confirmdelete(url)\n";
echo "{\n";
echo " var confirmed = confirm('".$text['button-delete-this']."');\n";
echo " if (confirmed == true) {\n";
echo " window.location=url;\n";
echo " }\n";
echo "}\n";
echo "//-->\n";
echo "</SCRIPT>";
echo "</head>";
echo "<body style='margin: 0; padding: 5px;'>";
echo "<div align='center'>";
?>

View File

@@ -1,354 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2019
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
James Rose <james.o.rose@gmail.com>
*/
//includes
include "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//check permissions
if (permission_exists('edit_view')) {
//access granted
}
else {
echo "access denied";
exit;
}
//add multi-lingual support
$language = new text;
$text = $language->get();
//set the directory title and mode
$_SESSION["app"]["edit"]["dir"] = $_GET["dir"];
$title = escape($_GET["dir"]);
unset($mode);
switch ($_GET["dir"]) {
case 'xml':
$title = 'XML';
$mode = 'xml';
break;
case 'provision':
$title = 'Provision';
$mode = 'xml';
break;
case 'php':
$title = 'PHP';
$mode = 'php';
break;
case 'scripts':
$title = 'Scripts';
$mode = 'lua';
break;
case 'grammar':
$title = 'Grammar';
$mode = 'xml';
default: $mode = 'text';
}
//load editor preferences/defaults
$setting_size = ($_SESSION["editor"]["font_size"]["text"] != '') ? $_SESSION["editor"]["font_size"]["text"] : '12px';
$setting_theme = ($_SESSION["editor"]["theme"]["text"] != '') ? $_SESSION["editor"]["theme"]["text"] : 'cobalt';
$setting_invisibles = ($_SESSION["editor"]["invisibles"]["boolean"] != '') ? $_SESSION["editor"]["invisibles"]["boolean"] : 'false';
$setting_indenting = ($_SESSION["editor"]["indent_guides"]["boolean"] != '') ? $_SESSION["editor"]["indent_guides"]["boolean"] : 'false';
$setting_numbering = ($_SESSION["editor"]["line_numbers"]["boolean"] != '') ? $_SESSION["editor"]["line_numbers"]["boolean"] : 'true';
//get and then set the favicon
if (isset($_SESSION['theme']['favicon']['text'])){
$favicon = $_SESSION['theme']['favicon']['text'];
}
else {
$favicon = $project_path .'/themes/default/favicon.ico';
}
//create a token
$key_name = '/app/edit/'.$mode;
$_SESSION['keys'][$key_name] = bin2hex(random_bytes(32));
$_SESSION['token'] = hash_hmac('sha256', $key_name, $_SESSION['keys'][$key_name]);
//generate the captcha image
$_SESSION['captcha'] = generate_password(7, 2);
$captcha = new captcha;
$captcha->code = $_SESSION['captcha'];
$image_base64 = $captcha->image_base64();
?>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8' />
<title><?php echo $title; ?></title>
<link rel="icon" type="image/x-icon" href="<?php echo $favicon; ?>">
<script language="JavaScript" type="text/javascript" src="<?php echo PROJECT_PATH; ?>/resources/jquery/jquery-3.4.1.min.js"></script>
<script src='https://code.jquery.com/jquery-migrate-3.1.0.js'></script>
<script language="JavaScript" type="text/javascript">
function submit_check() {
if (document.getElementById('filepath').value != '') {
document.getElementById('editor_source').value = editor.getSession().getValue();
return true;
}
focus_editor();
return false;
}
function toggle_option(opt) {
switch (opt) {
case 'numbering': toggle_option_do('showLineNumbers'); toggle_option_do('fadeFoldWidgets'); break;
case 'invisibles': toggle_option_do('showInvisibles'); break;
case 'indenting': toggle_option_do('displayIndentGuides'); break;
}
focus_editor();
}
function toggle_option_do(opt_name) {
var opt_val = editor.getOption(opt_name);
editor.setOption(opt_name, ((opt_val) ? false : true));
}
function toggle_sidebar() {
var td_sidebar = document.getElementById('sidebar');
td_sidebar.style.display = (td_sidebar.style.display == '') ? 'none' : '';
focus_editor();
}
function insert_clip(before, after) {
var selected_text = editor.session.getTextRange(editor.getSelectionRange());
editor.insert(before + selected_text + after);
focus_editor();
}
function focus_editor() {
editor.focus();
}
function http_request(url, form_data) {
var http = new XMLHttpRequest();
http.open('POST', url, true);
//http.onload = function(e) { ... };
http.onload = function(e) {
if (this.status == 200) {
//data sent successfully
alert(this.responseText);
}
else {
alert('<?php echo $text['message-problem']; ?>');
}
};
http.send(form_data);
}
function save() {
var form_data = new FormData();
form_data.append('filepath', document.getElementById('filepath').value);
form_data.append('content', editor.getSession().getValue());
form_data.append('token',document.getElementById('token').value);
form_data.append('mode',"<?php echo $mode; ?>");
http_request('file_save.php', form_data);
}
</script>
<style>
img.control {
cursor: pointer;
width: auto;
height: 23px;
border: none;
opacity: 0.5;
}
img.control:hover {
opacity: 1.0;
}
div#editor {
box-shadow: 0 5px 15px #333;
}
</style>
</head>
<body style='padding: 0; margin: 0; overflow: hidden;'>
<table id='frame' cellpadding='0' cellspacing='0' border='0' style="height: 100%; width: 100%;">
<tr>
<td id='sidebar' valign='top' style="width: 300px; height: 100%;">
<iframe id='file_list' src='file_list.php' style='border: none; height: 65%; width: 100%;'></iframe><br>
<iframe id='clip_list' src='clip_list.php' style='border: none; border-top: 1px solid #ccc; height: calc(35% - 1px); width: 100%;'></iframe>
</td>
<td align='right' valign='top' style='height: 100%;'>
<form style='margin: 0;' name='frm_edit' id='frm_edit' method='post' action='file_save.php' onsubmit="return submit_check();">
<textarea name='content' id='editor_source' style='display: none;'></textarea>
<input type='hidden' name='filepath' id='filepath' value=''>
<input type='hidden' name='token' id='token' value='<?php echo $_SESSION['token']; ?>'>
<table cellpadding='0' cellspacing='0' border='0' style='width: 100%;'>
<tr>
<td valign='middle'><img src='resources/images/icon_save.png' title='Save Changes [Ctrl+S]' class='control' onclick="save();";></td>
<td align='left' valign='middle' width='100%' style='padding: 0 15px 0 6px;'><input id='current_file' type='text' style='height: 23px; width: 100%;'></td>
<!--
<td style='padding: 0;'><img src="data:image/png;base64, <?php echo $image_base64; ?>" /></td>
<td align='left' valign='middle' width='80' style='padding: 0 6px 0 0;'><input type='text' class='txt' style='width: 80px; text-align: center;' name='code' id='code' value='' placeholder='CAPTCHA'></td>
-->
<td style='padding: 0;'><img src='resources/images/blank.gif' style='width: 1px; height: 40px; border: none;'></td>
<td valign='middle' style='padding-left: 6px;'><img src='resources/images/icon_sidebar.png' title='Toggle Side Bar [Ctrl+Q]' class='control' onclick="toggle_sidebar();"></td>
<td valign='middle' style='padding-left: 6px;'><img src='resources/images/icon_numbering.png' title='Toggle Line Numbers' class='control' onclick="toggle_option('numbering');"></td>
<td valign='middle' style='padding-left: 6px;'><img src='resources/images/icon_invisibles.png' title='Toggle Invisibles' class='control' onclick="toggle_option('invisibles');"></td>
<td valign='middle' style='padding-left: 6px;'><img src='resources/images/icon_indenting.png' title='Toggle Indent Guides' class='control' onclick="toggle_option('indenting');"></td>
<td valign='middle' style='padding-left: 6px;'><img src='resources/images/icon_replace.png' title='Show Find/Replace [Ctrl+H]' class='control' onclick="editor.execCommand('replace');"></td>
<td valign='middle' style='padding-left: 6px;'><img src='resources/images/icon_goto.png' title='Show Go To Line' class='control' onclick="editor.execCommand('gotoline');"></td>
<td valign='middle' style='padding-left: 10px;'>
<select id='mode' style='height: 23px; max-width: 70px;' onchange="editor.getSession().setMode('ace/mode/' + this.options[this.selectedIndex].value); focus_editor();">
<?php
$modes['php'] = 'PHP';
$modes['css'] = 'CSS';
$modes['html'] = 'HTML';
$modes['javascript'] = 'JS';
$modes['json'] = 'JSON';
$modes['ini'] = 'Conf';
$modes['lua'] = 'Lua';
$modes['text'] = 'Text';
$modes['xml'] = 'XML';
$modes['sql'] = 'SQL';
$modes['sh'] = 'SH';
$modes['smarty'] = 'Smarty';
$modes['svg'] = 'SVG';
$modes['makefile'] = 'Makefile';
$modes['c_cpp'] = 'C';
$modes['c_cpp'] = 'CPP';
$modes['pgsql'] = 'PGSQL';
foreach ($modes as $value => $label) {
$selected = ($value == $mode) ? 'selected' : null;
echo "<option value='".$value."' ".$selected.">".$label."</option>\n";
}
?>
</select>
</td>
<td valign='middle' style='padding-left: 4px;'>
<select id='size' style='height: 23px;' onchange="document.getElementById('editor').style.fontSize = this.options[this.selectedIndex].value; focus_editor();">
<?php
$sizes = explode(',','9px,10px,11px,12px,14px,16px,18px,20px');
if (!in_array($setting_size, $sizes)) {
echo "<option value='".$setting_size."'>".$setting_size."</option>\n";
echo "<option value='' disabled='disabled'></option>\n";
}
foreach ($sizes as $size) {
$selected = ($size == $setting_size) ? 'selected' : null;
echo "<option value='".$size."' ".$selected.">".$size."</option>\n";
}
?>
</select>
</td>
<td valign='middle' style='padding-left: 4px; padding-right: 4px;'>
<select id='theme' style='height: 23px; max-width: 100px;' onchange="editor.setTheme('ace/theme/' + this.options[this.selectedIndex].value); focus_editor();">
<?php
$themes['Bright']['chrome']= 'Chrome';
$themes['Bright']['clouds']= 'Clouds';
$themes['Bright']['crimson_editor']= 'Crimson Editor';
$themes['Bright']['dawn']= 'Dawn';
$themes['Bright']['dreamweaver']= 'Dreamweaver';
$themes['Bright']['eclipse']= 'Eclipse';
$themes['Bright']['github']= 'GitHub';
$themes['Bright']['iplastic']= 'IPlastic';
$themes['Bright']['solarized_light']= 'Solarized Light';
$themes['Bright']['textmate']= 'TextMate';
$themes['Bright']['tomorrow']= 'Tomorrow';
$themes['Bright']['xcode']= 'XCode';
$themes['Bright']['kuroir']= 'Kuroir';
$themes['Bright']['katzenmilch']= 'KatzenMilch';
$themes['Bright']['sqlserver']= 'SQL Server';
$themes['Dark']['ambiance']= 'Ambiance';
$themes['Dark']['chaos']= 'Chaos';
$themes['Dark']['clouds_midnight']= 'Clouds Midnight';
$themes['Dark']['cobalt']= 'Cobalt';
$themes['Dark']['idle_fingers']= 'idle Fingers';
$themes['Dark']['kr_theme']= 'krTheme';
$themes['Dark']['merbivore']= 'Merbivore';
$themes['Dark']['merbivore_soft']= 'Merbivore Soft';
$themes['Dark']['mono_industrial']= 'Mono Industrial';
$themes['Dark']['monokai']= 'Monokai';
$themes['Dark']['pastel_on_dark']= 'Pastel on dark';
$themes['Dark']['solarized_dark']= 'Solarized Dark';
$themes['Dark']['terminal']= 'Terminal';
$themes['Dark']['tomorrow_night']= 'Tomorrow Night';
$themes['Dark']['tomorrow_night_blue']= 'Tomorrow Night Blue';
$themes['Dark']['tomorrow_night_bright']= 'Tomorrow Night Bright';
$themes['Dark']['tomorrow_night_eighties']= 'Tomorrow Night 80s';
$themes['Dark']['twilight']= 'Twilight';
$themes['Dark']['vibrant_ink']= 'Vibrant Ink';
foreach ($themes as $optgroup => $theme) {
echo "<optgroup label='".$optgroup."'>\n";
foreach ($theme as $value => $label) {
$selected = (strtolower($label) == strtolower($setting_theme)) ? 'selected' : null;
echo "<option value='".$value."' ".$selected.">".$label."</option>\n";
}
echo "</optgroup>\n";
}
?>
</select>
</td>
</tr>
</table>
</form>
<div id='editor' style="text-align: left; width: 100%; height: calc(100% - 30px); font-size: 12px;"></div>
</td>
</tr>
</table>
<script type="text/javascript" src="<?php echo PROJECT_PATH; ?>/resources/ace/ace.js" charset="utf-8"></script>
<script type="text/javascript">
//load ace editor
var editor = ace.edit("editor");
editor.setOptions({
mode: 'ace/mode/<?php echo $mode;?>',
theme: 'ace/theme/'+document.getElementById('theme').options[document.getElementById('theme').selectedIndex].value,
selectionStyle: 'text',
cursorStyle: 'smooth',
showInvisibles: <?php echo $setting_invisibles;?>,
displayIndentGuides: <?php echo $setting_indenting;?>,
showLineNumbers: <?php echo $setting_numbering;?>,
showGutter: true,
scrollPastEnd: true,
fadeFoldWidgets: <?php echo $setting_numbering;?>,
showPrintMargin: false,
highlightGutterLine: false,
useSoftTabs: false
});
document.getElementById('editor').style.fontSize='<?php echo $setting_size;?>';
focus_editor();
//prevent form submit with enter key on file path input
<?php key_press('enter', 'down', '#current_file', null, null, 'return false;', false); ?>
//save file
<?php key_press('ctrl+s', 'down', 'window', null, null, "save(); return false;", false); ?>
//open file manager/clip library pane
<?php key_press('ctrl+q', 'down', 'window', null, null, 'toggle_sidebar(); focus_editor(); return false;', false); ?>
//remove certain keyboard shortcuts
editor.commands.bindKey("Ctrl-T", null); //new browser tab
</script>
</body>
</html>

View File

@@ -1,7 +0,0 @@
Notes
IFrame
http://www.quirksmode.org/js/iframe.html
Tree View
http://www.dddekerf.dds.nl/DHTML_Treeview/DHTML_Treeview.htm

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 257 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 224 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 726 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 417 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 324 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 821 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 521 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 504 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 508 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 197 B

View File

@@ -1,90 +0,0 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2008-2012
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
*/
// make sure the PATH_SEPARATOR is defined
umask(2);
if (!defined("PATH_SEPARATOR")) {
if (strpos($_ENV["OS"], "Win") !== false) {
define("PATH_SEPARATOR", ";");
} else {
define("PATH_SEPARATOR", ":");
}
}
if (!isset($output_format)) $output_format = (PHP_SAPI == 'cli') ? 'text' : 'html';
// make sure the document_root is set
$_SERVER["SCRIPT_FILENAME"] = str_replace("\\", '/', $_SERVER["SCRIPT_FILENAME"]);
if(PHP_SAPI == 'cli'){
chdir(pathinfo(realpath($_SERVER["PHP_SELF"]), PATHINFO_DIRNAME));
$script_full_path = str_replace("\\", '/', getcwd() . '/' . $_SERVER["SCRIPT_FILENAME"]);
$dirs = explode('/', pathinfo($script_full_path, PATHINFO_DIRNAME));
if (file_exists('/project_root.php')) {
$path = '/';
} else {
$i = 1;
$path = '';
while ($i < count($dirs)) {
$path .= '/' . $dirs[$i];
if (file_exists($path. '/project_root.php')) {
break;
}
$i++;
}
}
$_SERVER["DOCUMENT_ROOT"] = $path;
}else{
$_SERVER["DOCUMENT_ROOT"] = str_replace($_SERVER["PHP_SELF"], "", $_SERVER["SCRIPT_FILENAME"]);
}
$_SERVER["DOCUMENT_ROOT"] = realpath($_SERVER["DOCUMENT_ROOT"]);
// try to detect if a project path is being used
if (!defined('PROJECT_PATH')) {
if (is_dir($_SERVER["DOCUMENT_ROOT"]. '/fusionpbx')) {
define('PROJECT_PATH', '/fusionpbx');
} elseif (file_exists($_SERVER["DOCUMENT_ROOT"]. '/project_root.php')) {
define('PROJECT_PATH', '');
} else {
$dirs = explode('/', str_replace('\\', '/', pathinfo($_SERVER["PHP_SELF"], PATHINFO_DIRNAME)));
$i = 1;
$path = $_SERVER["DOCUMENT_ROOT"];
while ($i < count($dirs)) {
$path .= '/' . $dirs[$i];
if (file_exists($path. '/project_root.php')) {
break;
}
$i++;
}
if(!file_exists($path. '/project_root.php')){
die("Failed to locate the Project Root by searching for project_root.php please contact support for assistance");
}
$project_path = str_replace($_SERVER["DOCUMENT_ROOT"], "", $path);
define('PROJECT_PATH', $project_path);
}
$_SERVER["PROJECT_ROOT"] = realpath($_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH);
set_include_path(get_include_path() . PATH_SEPARATOR . $_SERVER["PROJECT_ROOT"]);
}
?>