From 24a4faf3d1bc31577194e7071e561844dc25e5dc Mon Sep 17 00:00:00 2001 From: Nate Jones Date: Sat, 18 May 2013 22:07:59 +0000 Subject: [PATCH] Multilinguified Menu Manager --- core/menu/app_languages.php | 195 +++++++++++++++++++++++++++++ core/menu/menu.php | 35 ++++-- core/menu/menu_delete.php | 8 +- core/menu/menu_edit.php | 61 +++++---- core/menu/menu_item_delete.php | 8 +- core/menu/menu_item_edit.php | 109 ++++++++-------- core/menu/menu_item_list.php | 55 ++++---- core/menu/menu_item_move_down.php | 8 +- core/menu/menu_item_move_up.php | 10 +- core/menu/menu_restore_default.php | 8 +- 10 files changed, 365 insertions(+), 132 deletions(-) create mode 100644 core/menu/app_languages.php diff --git a/core/menu/app_languages.php b/core/menu/app_languages.php new file mode 100644 index 0000000000..e3f24f3441 --- /dev/null +++ b/core/menu/app_languages.php @@ -0,0 +1,195 @@ + \ No newline at end of file diff --git a/core/menu/menu.php b/core/menu/menu.php index dad8cbfb57..20f20a0da8 100644 --- a/core/menu/menu.php +++ b/core/menu/menu.php @@ -26,14 +26,23 @@ require_once "root.php"; require_once "includes/require.php"; require_once "includes/checkauth.php"; -if (if_group("admin") || if_group("superadmin")) { +if (permission_exists('menu_add') || permission_exists('menu_edit') || permission_exists('menu_delete')) { //access granted } else { echo "access denied"; exit; } + +//add multi-lingual support + require_once "app_languages.php"; + foreach($text as $key => $value) { + $text[$key] = $value[$_SESSION['domain']['language']['code']]; + } + require_once "includes/header.php"; +$page["title"] = $text['title-menus']; + require_once "includes/paging.php"; //get variables used to control the order @@ -49,12 +58,12 @@ require_once "includes/paging.php"; echo "\n"; echo " \n"; - echo " \n"; + echo " \n"; echo " \n"; echo " \n"; echo " \n"; echo " \n"; echo " \n"; echo "
Menu Manager".$text['header-menus']." 
\n"; - echo " Used to customize one or more menus.

\n"; + echo " ".$text['description-menus']."

\n"; echo "
\n"; @@ -77,9 +86,9 @@ require_once "includes/paging.php"; $rows_per_page = 150; $param = ""; $page = $_GET['page']; - if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; } - list($paging_controls, $rows_per_page, $var_3) = paging($num_rows, $param, $rows_per_page); - $offset = $rows_per_page * $page; + if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; } + list($paging_controls, $rows_per_page, $var_3) = paging($num_rows, $param, $rows_per_page); + $offset = $rows_per_page * $page; //get the list $sql = " select * from v_menus "; @@ -98,11 +107,11 @@ require_once "includes/paging.php"; echo "
\n"; echo "\n"; echo "\n"; - echo th_order_by('menu_name', 'Name', $order_by, $order); - echo th_order_by('menu_language', 'Language', $order_by, $order); - echo th_order_by('menu_description', 'Description', $order_by, $order); + echo th_order_by('menu_name', $text['label-name'], $order_by, $order); + echo th_order_by('menu_language', $text['label-language'], $order_by, $order); + echo th_order_by('menu_description', $text['label-description'], $order_by, $order); echo "\n"; echo "\n"; @@ -113,8 +122,8 @@ require_once "includes/paging.php"; echo " \n"; echo " \n"; echo " \n"; echo "\n"; if ($c==0) { $c=1; } else { $c=0; } @@ -129,7 +138,7 @@ require_once "includes/paging.php"; echo " \n"; echo " \n"; echo " \n"; echo " \n"; echo "
\n"; - echo " $v_link_label_add\n"; + echo " $v_link_label_add\n"; echo "
".$row['menu_language']." ".$row['menu_description']." \n"; - echo " $v_link_label_edit\n"; - echo " $v_link_label_delete\n"; + echo " $v_link_label_edit\n"; + echo " $v_link_label_delete\n"; echo "
 $paging_controls\n"; - echo " $v_link_label_add\n"; + echo " $v_link_label_add\n"; echo "
\n"; diff --git a/core/menu/menu_delete.php b/core/menu/menu_delete.php index 2612db755a..99a355aa25 100644 --- a/core/menu/menu_delete.php +++ b/core/menu/menu_delete.php @@ -34,6 +34,12 @@ else { exit; } +//add multi-lingual support + require_once "app_languages.php"; + foreach($text as $key => $value) { + $text[$key] = $value[$_SESSION['domain']['language']['code']]; + } + if (count($_GET)>0) { $id = check_str($_GET["id"]); $menu_uuid = check_str($_GET["menu_uuid"]); @@ -75,7 +81,7 @@ if (strlen($id)>0) { require_once "includes/header.php"; echo "\n"; echo "
\n"; - echo "Delete Complete\n"; + echo $text['message-delete']."\n"; echo "
\n"; require_once "includes/footer.php"; return; diff --git a/core/menu/menu_edit.php b/core/menu/menu_edit.php index c48fcb8f65..35418a8040 100644 --- a/core/menu/menu_edit.php +++ b/core/menu/menu_edit.php @@ -26,7 +26,7 @@ require_once "root.php"; require_once "includes/require.php"; require_once "includes/checkauth.php"; -if (if_group("admin") || if_group("superadmin")) { +if (permission_exists('menu_add') || permission_exists('menu_edit')) { //access granted } else { @@ -34,6 +34,12 @@ else { exit; } +//add multi-lingual support + require_once "app_languages.php"; + foreach($text as $key => $value) { + $text[$key] = $value[$_SESSION['domain']['language']['code']]; + } + //action add or update if (isset($_REQUEST["id"])) { $action = "update"; @@ -59,10 +65,9 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) { } //check for all required data - //if (strlen($menu_uuid) == 0) { $msg .= "Please provide: Menu UUID
\n"; } - //if (strlen($menu_name) == 0) { $msg .= "Please provide: Name
\n"; } - //if (strlen($menu_language) == 0) { $msg .= "Please provide: Language
\n"; } - //if (strlen($menu_description) == 0) { $msg .= "Please provide: Description
\n"; } + //if (strlen($menu_name) == 0) { $msg .= $text['message-required'].$text['label-name']."
\n"; } + //if (strlen($menu_language) == 0) { $msg .= $text['message-required'].$text['label-language']."
\n"; } + //if (strlen($menu_description) == 0) { $msg .= $text['message-required'].$text['label-description']."
\n"; } if (strlen($msg) > 0 && strlen($_POST["persistformvar"]) == 0) { require_once "includes/header.php"; require_once "includes/persistformvar.php"; @@ -111,7 +116,7 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) { require_once "includes/header.php"; echo "\n"; echo "
\n"; - echo "Add Complete\n"; + echo $text['message-add']."\n"; echo "
\n"; require_once "includes/footer.php"; return; @@ -131,12 +136,12 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) { require_once "includes/header.php"; echo "\n"; echo "
\n"; - echo "Update Complete\n"; + echo $text['message-update']."\n"; echo "
\n"; require_once "includes/footer.php"; return; } //if ($action == "update") - } //if ($_POST["persistformvar"] != "true") + } //if ($_POST["persistformvar"] != "true") } //(count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) //pre-populate the form @@ -159,6 +164,12 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) { //show the header require_once "includes/header.php"; + if ($action == "update") { + $page["title"] = $text['title-menu-edit']; + } + if ($action == "add") { + $page["title"] = $text['title-menu-add']; + } //show the content echo "
"; @@ -172,53 +183,59 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) { echo "\n"; echo "\n"; if ($action == "add") { - echo "\n"; + echo "\n"; } if ($action == "update") { - echo "\n"; + echo "\n"; } echo "\n"; + echo " \n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; + echo "\n"; + echo $text['description-name']."\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo " \n"; @@ -226,7 +243,7 @@ if (count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) { if ($action == "update") { echo " \n"; } - echo " \n"; + echo " \n"; echo " \n"; echo " "; echo "
Menu Add".$text['header-menu-add']."Menu Edit".$text['header-menu-edit']."\n"; - if (permission_exists('menu_restore')) { - echo " "; + if (permission_exists('menu_restore') && $action == "update") { + echo " "; } - echo "
\n"; - echo "Used to customize one or more menus.

\n"; + if ($action == "update") { + echo $text['description-menu-edit']; + } + if ($action == "add") { + echo $text['description-menu-add']; + } + echo "

\n"; echo "
\n"; - echo " Name:\n"; + echo " ".$text['label-name'].":\n"; echo "\n"; echo " \n"; echo "
\n"; - echo "Enter the name of the menu.\n"; - echo "
\n"; - echo " Language:\n"; + echo " ".$text['label-language'].":\n"; echo "\n"; echo " \n"; echo "
\n"; - echo "Enter the language.\n"; + echo $text['description-language']."\n"; echo "
\n"; - echo " Description:\n"; + echo " ".$text['label-description'].":\n"; echo "\n"; echo " \n"; echo "
\n"; - echo "Enter the description.\n"; + echo $text['description-description']."\n"; echo "
"; diff --git a/core/menu/menu_item_delete.php b/core/menu/menu_item_delete.php index 40fe234549..708d9e45f2 100644 --- a/core/menu/menu_item_delete.php +++ b/core/menu/menu_item_delete.php @@ -34,6 +34,12 @@ else { return; } +//add multi-lingual support + require_once "app_languages.php"; + foreach($text as $key => $value) { + $text[$key] = $value[$_SESSION['domain']['language']['code']]; + } + if (count($_GET)>0) { //clear the menu session so it will rebuild with the update $_SESSION["menu"] = ""; @@ -53,7 +59,7 @@ if (count($_GET)>0) { require_once "includes/header.php"; echo "\n"; echo "
"; - echo "Delete Completed"; + echo $text['message-delete']; echo "
"; require_once "includes/footer.php"; return; diff --git a/core/menu/menu_item_edit.php b/core/menu/menu_item_edit.php index 6323b90ef3..e7d6ea040f 100644 --- a/core/menu/menu_item_edit.php +++ b/core/menu/menu_item_edit.php @@ -26,7 +26,7 @@ include "root.php"; require_once "includes/require.php"; require_once "includes/checkauth.php"; -if (permission_exists('menu_add') || permission_exists('menu_edit') || permission_exists('menu_delete')) { +if (permission_exists('menu_add') || permission_exists('menu_edit')) { //access granted } else { @@ -34,8 +34,11 @@ else { return; } -//include the header - require_once "includes/header.php"; +//add multi-lingual support + require_once "app_languages.php"; + foreach($text as $key => $value) { + $text[$key] = $value[$_SESSION['domain']['language']['code']]; + } //get the menu_uuid $menu_uuid = check_str($_REQUEST["id"]); @@ -54,7 +57,7 @@ else { require_once "includes/header.php"; echo "\n"; echo "
\n"; - echo "Delete Complete\n"; + echo $text['message-delete']."\n"; echo "
\n"; require_once "includes/footer.php"; return; @@ -100,9 +103,9 @@ else { //check for all required data $msg = ''; - if (strlen($menu_item_title) == 0) { $msg .= "Please provide: title
\n"; } - if (strlen($menu_item_category) == 0) { $msg .= "Please provide: category
\n"; } - //if (strlen($menu_item_link) == 0) { $msg .= "Please provide: menu_item_link
\n"; } + if (strlen($menu_item_title) == 0) { $msg .= $text['message-required'].$text['label-title']."
\n"; } + if (strlen($menu_item_category) == 0) { $msg .= $text['message-required'].$text['label-category']."
\n"; } + //if (strlen($menu_item_link) == 0) { $msg .= $text['message-required'].$text['label-link']."
\n"; } if (strlen($msg) > 0 && strlen($_POST["persistformvar"]) == 0) { require_once "includes/header.php"; require_once "includes/persistformvar.php"; @@ -219,13 +222,13 @@ else { //redirect the user require_once "includes/header.php"; - echo "\n"; + echo "\n"; echo "
\n"; if ($action == "add") { - echo "Add Complete\n"; + echo $text['message-add']."\n"; } if ($action == "update") { - echo "Edit Complete\n"; + echo $text['message-update']."\n"; } echo "
\n"; require_once "includes/footer.php"; @@ -262,8 +265,15 @@ else { } } -//show the content +//include the header require_once "includes/header.php"; + if ($action == "update") { + $page["title"] = $text['title-menu_item-edit']; + } + if ($action == "add") { + $page["title"] = $text['title-menu_item-add']; + } + echo "
"; echo "\n"; echo "\n"; @@ -273,32 +283,39 @@ else { echo ""; echo "
"; echo "\n"; - echo "\n"; - echo "\n"; + echo "\n"; + echo "\n"; echo "\n"; echo " "; - echo " "; + echo " "; echo " "; echo " "; echo " "; - echo " "; + echo " "; echo " "; echo " "; echo " "; - echo " "; + echo " "; echo " "; echo " "; echo " "; - echo " "; + echo " "; echo " "; echo " "; - echo " "; + echo " "; echo " "; //echo ""; if ($menu_item_protected == "true") { - echo ""; + echo ""; } else { - echo ""; + echo ""; } echo ""; echo " \n"; echo ""; @@ -184,16 +184,6 @@ $order = $_GET["order"]; echo "\n"; echo " "; - echo ""; - echo ""; - echo ""; - echo ""; - //echo ""; - echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; echo "\n"; echo ""; @@ -290,10 +279,10 @@ $order = $_GET["order"]; //echo ""; if ($menu_item_protected == "true") { - echo ""; + echo ""; } else { - echo ""; + echo ""; } echo ""; echo " \n"; echo ""; @@ -347,8 +336,8 @@ $order = $_GET["order"]; echo " \n"; echo " \n"; echo " \n"; echo " \n"; diff --git a/core/menu/menu_item_move_down.php b/core/menu/menu_item_move_down.php index 22cb10f07e..5e3a9b49f9 100644 --- a/core/menu/menu_item_move_down.php +++ b/core/menu/menu_item_move_down.php @@ -34,6 +34,12 @@ else { return; } +//add multi-lingual support + require_once "app_languages.php"; + foreach($text as $key => $value) { + $text[$key] = $value[$_SESSION['domain']['language']['code']]; + } + //move down more than one level at a time //update v_menu_items set menu_item_order = (menu_item_order+1) where menu_item_order > 2 or menu_item_order = 2 @@ -79,7 +85,7 @@ if (count($_GET)>0) { require_once "includes/header.php"; echo "\n"; echo "
"; - echo "Item Moved Down"; + echo $text['message-moved_down']; echo "
"; require_once "includes/footer.php"; return; diff --git a/core/menu/menu_item_move_up.php b/core/menu/menu_item_move_up.php index b645f38209..9237287cb4 100644 --- a/core/menu/menu_item_move_up.php +++ b/core/menu/menu_item_move_up.php @@ -34,6 +34,12 @@ else { return; } +//add multi-lingual support + require_once "app_languages.php"; + foreach($text as $key => $value) { + $text[$key] = $value[$_SESSION['domain']['language']['code']]; + } + //move down more than one level at a time //update v_menu_items set menu_order = (menu_order+1) where menu_order > 2 or menu_order = 2 @@ -43,7 +49,7 @@ if (count($_GET)>0) { if ($menu_order != 1) { //clear the menu session so it will rebuild with the update - $_SESSION["menu"] = ""; + $_SESSION["menu"] = ""; //move the current item's order number down $sql = "update v_menu_items set "; @@ -66,7 +72,7 @@ if (count($_GET)>0) { require_once "includes/header.php"; echo "\n"; echo "
"; - echo "Item Moved Up"; + echo $text['message-moved_up']; echo "
"; require_once "includes/footer.php"; return; diff --git a/core/menu/menu_restore_default.php b/core/menu/menu_restore_default.php index 53e9d81673..ba32635f14 100644 --- a/core/menu/menu_restore_default.php +++ b/core/menu/menu_restore_default.php @@ -34,6 +34,12 @@ else { return; } +//add multi-lingual support + require_once "app_languages.php"; + foreach($text as $key => $value) { + $text[$key] = $value[$_SESSION['domain']['language']['code']]; + } + //get the http value and set as a php variable $menu_uuid = check_str($_REQUEST["menu_uuid"]); $menu_language = check_str($_REQUEST["menu_language"]); @@ -57,7 +63,7 @@ else { require_once "includes/header.php"; echo "\n"; echo "
\n"; - echo "Restore Complete\n"; + echo $text['message-restore']."\n"; echo "
\n"; require_once "includes/footer.php"; return;
Menu Item Edit

"; + if ($action == "update") { + echo $text['header-menu_item-edit']; + } + if ($action == "add") { + echo $text['header-menu_item-add']; + } + echo "

Title:".$text['label-title'].":
Link:".$text['label-link'].":
Category:".$text['label-category'].":"; echo " "; echo "
Parent Menu:".$text['label-parent_menu'].":"; $sql = "SELECT * FROM v_menu_items "; $sql .= "where menu_uuid = '$menu_uuid' "; @@ -322,7 +339,7 @@ else { echo "
Groups:".$text['label-groups'].":"; echo "\n"; @@ -341,7 +358,7 @@ else { echo " \n"; echo " \n"; echo "\n"; @@ -369,32 +386,32 @@ else { } } echo ""; - echo "\n"; + echo "\n"; unset($sql, $result); echo " "; echo " "; echo "\n"; echo "\n"; echo "\n"; echo "\n"; @@ -402,38 +419,14 @@ else { if ($action == "update") { if ($menu_item_parent_uuid == "") { echo " "; - echo " "; + echo " "; echo " "; echo " "; } - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; - //echo " "; } echo " "; - echo " "; + echo " "; echo " "; echo " "; @@ -450,7 +443,7 @@ else { } echo " "; echo " "; - echo " \n"; + echo " \n"; echo " "; echo " "; echo "
".$field['group_name']."\n"; if (permission_exists('group_member_delete') || if_group("superadmin")) { - echo " $v_link_label_delete\n"; + echo " $v_link_label_delete\n"; } echo "
\n"; - echo " Protected:\n"; + echo " ".$text['label-protected'].":\n"; echo "\n"; echo "
\n"; - echo "Protect this item in the menu so that is is not removed by 'Restore Default.'
\n"; + echo $text['description-protected']."
\n"; echo "\n"; echo "
Menu Order:".$text['label-menu_order'].":
Added By:$menu_item_add_user  
Add Date:$menu_item_add_date  
menu_item_del_user:
menu_item_del_date:
Modified By:$menu_item_mod_user  
Modified Date:$menu_item_mod_date  
Description:".$text['label-description'].":
"; diff --git a/core/menu/menu_item_list.php b/core/menu/menu_item_list.php index 2a918fd3cf..8d36a052ef 100644 --- a/core/menu/menu_item_list.php +++ b/core/menu/menu_item_list.php @@ -26,7 +26,7 @@ include "root.php"; require_once "includes/require.php"; require_once "includes/checkauth.php"; -if (permission_exists('menu_add') || permission_exists('menu_edit')) { +if (permission_exists('menu_add') || permission_exists('menu_edit') || permission_exists('menu_delete')) { //access granted } else { @@ -37,7 +37,7 @@ else { $tmp_menu_item_order = 0; function build_db_child_menu_list ($db, $menu_item_level, $menu_item_uuid, $c) { - global $menu_uuid, $tmp_menu_item_order, $v_link_label_edit, $v_link_label_delete; + global $menu_uuid, $tmp_menu_item_order, $v_link_label_edit, $v_link_label_delete, $page, $text; //check for sub menus $menu_item_level = $menu_item_level+1; @@ -123,10 +123,10 @@ function build_db_child_menu_list ($db, $menu_item_level, $menu_item_uuid, $c) { //echo "
".$row[menu_item_description]." ".$row[menu_item_order]."   yes    ".$text['label-true']."    no    ".$text['label-false']."  "; echo "  "; @@ -135,17 +135,17 @@ function build_db_child_menu_list ($db, $menu_item_level, $menu_item_uuid, $c) { //echo ""; //if (permission_exists('menu_edit')) { - // echo " "; - // echo " "; + // echo " "; + // echo " "; //} //echo "\n"; if (permission_exists('menu_edit')) { - echo " $v_link_label_edit\n"; + echo " $v_link_label_edit\n"; } if (permission_exists('menu_delete')) { - echo " $v_link_label_delete\n"; + echo " $v_link_label_delete\n"; } echo "
\n"; - echo ""; - //echo ""; - echo "\n"; - echo "\n"; - echo "
Menu Manager\n"; - //if (permission_exists('menu_restore')) { - // echo " "; - //} - echo "
"; - $sql = "select * from v_menu_items "; $sql .= "where menu_uuid = '".$menu_uuid."' "; $sql .= "and menu_item_parent_uuid is null "; @@ -221,15 +211,14 @@ $order = $_GET["order"]; } else { echo "
  Title     Groups     Category     Protected     Order  Order     ".$text['label-title']."     ".$text['label-groups']."     ".$text['label-category']."     ".$text['label-protected']."     ".$text['label-menu_order']."   \n"; if (permission_exists('menu_add')) { - echo " $v_link_label_add\n"; + echo " $v_link_label_add\n"; } echo "
 ".$row['menu_item_order']."   yes    ".$text['label-true']."    no    ".$text['label-false']."  "; @@ -302,17 +291,17 @@ $order = $_GET["order"]; //echo ""; //if (permission_exists('menu_edit')) { - // echo " "; - // echo " "; + // echo " "; + // echo " "; //} //echo "\n"; if (permission_exists('menu_edit')) { - echo " $v_link_label_edit\n"; + echo " $v_link_label_edit\n"; } if (permission_exists('menu_delete')) { - echo " $v_link_label_delete\n"; + echo " $v_link_label_delete\n"; } echo "
  \n"; - if (permission_exists('menu_add')) { - echo " $v_link_label_add\n"; + if (permission_exists('menu_add') && $action == "update") { + echo " $v_link_label_add\n"; } echo "