Quellcode durchsuchen

Template/Theme updates to support new modal class.

Nate vor 5 Jahren
Ursprung
Commit
edbae3ef4e
4 geänderte Dateien mit 222 neuen und 2 gelöschten Zeilen
  1. 63 0
      resources/app_languages.php
  2. 70 0
      resources/classes/modal.php
  3. 85 2
      themes/default/css.php
  4. 4 0
      themes/default/template.php

+ 63 - 0
resources/app_languages.php

@@ -44,6 +44,26 @@ $text['language-sv-se']['en-us'] = "Svenska - Sverige";
 $text['language-uk-ua']['en-us'] = "Українська - Україна";
 $text['language-tr-tr']['en-us'] = "Türkçe - Türkiye";
 
+$text['modal_title-confirmation']['en-us'] = "Confirmation";
+$text['modal_title-confirmation']['ar-eg'] = "Confirmation";
+$text['modal_title-confirmation']['de-at'] = "Confirmation";
+$text['modal_title-confirmation']['de-ch'] = "Confirmation";
+$text['modal_title-confirmation']['de-de'] = "Confirmation";
+$text['modal_title-confirmation']['es-cl'] = "Confirmation";
+$text['modal_title-confirmation']['es-mx'] = "Confirmation";
+$text['modal_title-confirmation']['fr-ca'] = "Confirmation";
+$text['modal_title-confirmation']['fr-fr'] = "Confirmation";
+$text['modal_title-confirmation']['he-il'] = "Confirmation";
+$text['modal_title-confirmation']['it-it'] = "Confirmation";
+$text['modal_title-confirmation']['nl-nl'] = "Confirmation";
+$text['modal_title-confirmation']['pl-pl'] = "Confirmation";
+$text['modal_title-confirmation']['pt-br'] = "Confirmation";
+$text['modal_title-confirmation']['pt-pt'] = "Confirmation";
+$text['modal_title-confirmation']['ro-ro'] = "Confirmation";
+$text['modal_title-confirmation']['ru-ru'] = "Confirmation";
+$text['modal_title-confirmation']['sv-se'] = "Confirmation";
+$text['modal_title-confirmation']['uk-ua'] = "Confirmation";
+
 $text['message-update']['en-us'] = "Update Completed";
 $text['message-update']['ar-eg'] = "تحديث مكتمل";
 $text['message-update']['de-at'] = "Aktualisierung durchgeführt"; //copied from de-de
@@ -524,6 +544,28 @@ $text['button-clear']['sv-se'] = "Rensa";
 $text['button-clear']['uk-ua'] = "";
 $text['button-clear']['tr-tr'] = "Temizle";
 
+$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']['el-gr'] = "Κλείσιμο";
+$text['button-close']['es-cl'] = "Cerca";
+$text['button-close']['es-mx'] = "Cerca"; //copied from es-cl
+$text['button-close']['fr-ca'] = "Proche"; //copied from fr-fr
+$text['button-close']['fr-fr'] = "Proche";
+$text['button-close']['he-il'] = "";
+$text['button-close']['it-it'] = "Chiudi";
+$text['button-close']['nl-nl'] = "";
+$text['button-close']['pl-pl'] = "Blisko";
+$text['button-close']['pt-br'] = "Perto"; //copied from pt-pt
+$text['button-close']['pt-pt'] = "Perto";
+$text['button-close']['ro-ro'] = "";
+$text['button-close']['ru-ru'] = "Закрыть";
+$text['button-close']['sv-se'] = "Stänga";
+$text['button-close']['uk-ua'] = "Близько";
+$text['button-close']['tr-tr'] = "Kapat";
+
 $text['button-save']['en-us'] = "Save";
 $text['button-save']['ar-eg'] = "حفظ";
 $text['button-save']['de-at'] = "Speichern"; //copied from de-de
@@ -1462,6 +1504,27 @@ $text['button-continue']['ru-ru'] = "Продолжить";
 $text['button-continue']['sv-se'] = "Fortsätt";
 $text['button-continue']['uk-ua'] = "Продовжити";
 
+$text['button-cancel']['en-us'] = "Cancel";
+$text['button-cancel']['ar-eg'] = "الغاء";
+$text['button-cancel']['de-at'] = "Abbrechen"; //copied from de-de
+$text['button-cancel']['de-ch'] = "Abbrechen"; //copied from de-de
+$text['button-cancel']['de-de'] = "Abbrechen";
+$text['button-cancel']['el-gr'] = "Ακύρωση";
+$text['button-cancel']['es-cl'] = "Cancelar";
+$text['button-cancel']['es-mx'] = "Cancelar"; //copied from es-cl
+$text['button-cancel']['fr-ca'] = "Annuler"; //copied from fr-fr
+$text['button-cancel']['fr-fr'] = "Annuler";
+$text['button-cancel']['he-il'] = "בטל";
+$text['button-cancel']['it-it'] = "Cancella";
+$text['button-cancel']['nl-nl'] = "";
+$text['button-cancel']['pl-pl'] = "Anuluj";
+$text['button-cancel']['pt-br'] = "Cancelar"; //copied from pt-pt
+$text['button-cancel']['pt-pt'] = "Cancelar";
+$text['button-cancel']['ro-ro'] = "Anulează";
+$text['button-cancel']['ru-ru'] = "Отменить";
+$text['button-cancel']['sv-se'] = "Ångra";
+$text['button-cancel']['uk-ua'] = "Відмінити";
+
 $text['button-play']['en-us'] = "Play";
 $text['button-play']['ar-eg'] = "";
 $text['button-play']['de-at'] = "Play"; //copied from de-de

+ 70 - 0
resources/classes/modal.php

@@ -0,0 +1,70 @@
+<?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 <[email protected]>
+	Copyright (C) 2010 - 2019
+	All Rights Reserved.
+
+	Contributor(s):
+	Mark J Crane <[email protected]>
+*/
+
+if (!class_exists('modal')) {
+	class modal {
+
+		static function create($array) {
+
+			$modal = "<div id='".($array['id'] ? $array['id'] : 'modal')."' class='modal-window'>\n";
+			$modal .= "	<div>\n";
+			$modal .= "		<a href='#' title=\"".$text['button-close']."\" class='modal-close'>".($array['close'] ? $array['close'] : '&times;')."</a>\n";
+			if ($array['type'] != '') {
+				//add multi-lingual support
+					$language = new text;
+					$text = $language->get();
+				//determine type
+					switch ($array['type']) {
+						case 'copy':
+							$array['title'] = $text['modal_title-confirmation'];
+							$array['message'] = $text['confirm-copy'];
+							break;
+						case 'toggle':
+							$array['title'] = $text['modal_title-confirmation'];
+							$array['message'] = $text['confirm-toggle'];
+							break;
+						case 'delete':
+							$array['title'] = $text['modal_title-confirmation'];
+							$array['message'] = $text['confirm-delete'];
+							break;
+					}
+				//prefix cancel button to action
+					$array['actions'] = button::create(['type'=>'button','label'=>$text['button-cancel'],'icon'=>'times','collapse'=>'never','onclick'=>'modal_close();']).$array['actions'];
+			}
+			$modal .= $array['title'] ? "<span class='modal-title'>".$array['title']."</span>\n" : null;
+			$modal .= $array['message'] ? "<span class='modal-message'>".$array['message']."</span>\n" : null;
+			$modal .= $array['actions'] ? "<span class='modal-actions'>".$array['actions']."</span>\n" : null;
+			$modal .= "	</div>\n";
+			$modal .= "</div>";
+
+			return $modal;
+			unset($modal);
+
+		}
+
+	}
+}

+ 85 - 2
themes/default/css.php

@@ -2353,6 +2353,16 @@ $default_login = ($_REQUEST['login'] == 'default') ? true : false;
 		white-space: nowrap;
 		}
 
+	/* used primarily in contacts */
+	div.action_bar.shrink {
+		margin-bottom: 0;
+		padding-bottom: 0;
+		}
+
+	div.action_bar.shrink > div.heading > b {
+		font-size: 100%;
+		}
+
 /* LIST ************************************************************************/
 
 	.list {
@@ -2501,6 +2511,79 @@ $default_login = ($_REQUEST['login'] == 'default') ? true : false;
 
 /* MODAL ************************************************************************/
 
-	div.modal-footer {
-		justify-content: space-between;
+	.modal-window {
+		z-index: 999999;
+		position: fixed;
+		top: 0;
+		right: 0;
+		bottom: 0;
+		left: 0;
+		opacity: 0;
+		pointer-events: none;
+		-webkit-transition: all 0.3s;
+		-moz-transition: all 0.3s;
+		transition: all 0.3s;
+		background-color: rgba(0, 0, 0, 0.3);
+		}
+
+	.modal-window:target {
+		opacity: 1;
+		pointer-events: auto;
+		}
+
+	.modal-window > div {
+		position: relative;
+		padding: 15px 20px 20px 20px;
+		text-align: left;
+		color: #444;
+		background: #fff;
+		overflow: auto;
+		}
+
+	@media(min-width: 0px) and (max-width: 699px) {
+		.modal-window > div {
+			width: 100%;
+			min-width: 200px;
+			margin: 50px auto;
+			border-radius: 0;
+			}
+		}
+
+	@media(min-width: 700px) {
+		.modal-window > div {
+			width: 40%;
+			min-width: 400px;
+			max-width: 500px;
+			margin: 10% auto;
+			border-radius: 5px;
+			}
+		}
+
+	.modal-window .modal-title {
+		display: block;
+		font-weight: bold;
+		font-size: 120%;
+		margin-bottom: 15px;
+		}
+
+	.modal-close {
+		color: #aaa;
+		line-height: 50px;
+		font-size: 150%;
+		position: absolute;
+		top: 0;
+		right: 0;
+		width: 50px;
+		text-align: center;
+		text-decoration: none !important;
+		}
+
+	.modal-close:hover {
+		color: #000;
+		}
+
+	.modal-window .modal-message {
+		display: block;
+		text-align: left;
+		margin-bottom: 20px;
 		}

+ 4 - 0
themes/default/template.php

@@ -486,6 +486,10 @@ echo "<script language='JavaScript' type='text/javascript' src='<!--{project_pat
 			document.getElementById('btn_search').style.display = '';
 		}
 
+		function modal_close() {
+			document.location.href='#';
+		}
+
 </script>
 
 <?php