diff --git a/src/admin/groups.php b/src/admin/groups.php index 2858456..b733750 100644 --- a/src/admin/groups.php +++ b/src/admin/groups.php @@ -482,7 +482,7 @@ if ( !isset($_POST['op']) && !isset($_GET['op']) ) // --- BEGIN CREATE TITLE $content['TITLE'] = InitPageTitle(); -$content['TITLE'] .= " :: Group Options"; +$content['TITLE'] .= " :: " . $content['LN_ADMINMENU_GROUPOPT']; // --- END CREATE TITLE // --- Parsen and Output diff --git a/src/admin/index.php b/src/admin/index.php index ba285ba..33507f2 100644 --- a/src/admin/index.php +++ b/src/admin/index.php @@ -141,7 +141,7 @@ if ($content['DebugUserLogin'] == 1) { $content['DebugUserLogin_checked'] = "che // --- BEGIN CREATE TITLE $content['TITLE'] = InitPageTitle(); -$content['TITLE'] .= " :: General Options"; +$content['TITLE'] .= " :: " . $content['LN_ADMINMENU_GENOPT']; // --- END CREATE TITLE // --- Parsen and Output diff --git a/src/admin/searches.php b/src/admin/searches.php new file mode 100644 index 0000000..3b4ce41 --- /dev/null +++ b/src/admin/searches.php @@ -0,0 +1,362 @@ + Helps administrating custom searches + * + * All directives are explained within this file + * + * Copyright (C) 2008 Adiscon GmbH. + * + * This file is part of phpLogCon. + * + * PhpLogCon is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * PhpLogCon is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with phpLogCon. If not, see . + * + * A copy of the GPL can be found in the file "COPYING" in this + * distribution + ********************************************************************* +*/ + +// *** Default includes and procedures *** // +define('IN_PHPLOGCON', true); +$gl_root_path = './../'; + +// Now include necessary include files! +include($gl_root_path . 'include/functions_common.php'); +include($gl_root_path . 'include/functions_frontendhelpers.php'); +include($gl_root_path . 'include/functions_filters.php'); + +// Set PAGE to be ADMINPAGE! +define('IS_ADMINPAGE', true); +$content['IS_ADMINPAGE'] = true; +InitPhpLogCon(); +InitSourceConfigs(); +InitFrontEndDefaults(); // Only in WebFrontEnd +InitFilterHelpers(); // Helpers for frontend filtering! + +// Init admin langauge file now! +IncludeLanguageFile( $gl_root_path . '/lang/' . $LANG . '/admin.php' ); +// --- + +// --- BEGIN Custom Code + +// Only if the user is an admin! +//if ( !isset($_SESSION['SESSION_ISADMIN']) || $_SESSION['SESSION_ISADMIN'] == 0 ) +// DieWithFriendlyErrorMsg( $content['LN_ADMIN_ERROR_NOTALLOWED'] ); + +if ( isset($_GET['op']) ) +{ + if ($_GET['op'] == "add") + { + // Set Mode to add + $content['ISEDITORNEWSEARCH'] = "true"; + $content['SEARCH_FORMACTION'] = "addnewsearch"; + $content['SEARCH_SENDBUTTON'] = $content['LN_SEARCH_ADD']; + + //PreInit these values + $content['DisplayName'] = ""; + $content['SearchQuery'] = ""; + $content['userid'] = null; + $content['CHECKED_ISUSERONLY'] = ""; + $content['SEARCHID'] = ""; + + // --- Check if groups are available + $sqlquery = "SELECT " . + DB_GROUPS . ".ID as mygroupid, " . + DB_GROUPS . ".groupname " . + "FROM " . DB_GROUPS . + " ORDER BY " . DB_GROUPS . ".groupname"; + $result = DB_Query($sqlquery); + $content['SUBGROUPS'] = DB_GetAllRows($result, true); + if ( isset($content['SUBGROUPS']) && count($content['SUBGROUPS']) > 0 ) + { + // Process All Groups + for($i = 0; $i < count($content['SUBGROUPS']); $i++) + $content['SUBGROUPS'][$i]['group_selected'] = ""; + + // Enable Group Selection + $content['ISGROUPSAVAILABLE'] = true; + array_unshift( $content['SUBGROUPS'], array ("mygroupid" => -1, "groupname" => $content['LN_SEARCH_SELGROUPENABLE'], "group_selected" => "") ); + } + else + $content['ISGROUPSAVAILABLE'] = false; + // --- + } + else if ($_GET['op'] == "edit") + { + // Set Mode to edit + $content['ISEDITORNEWSEARCH'] = "true"; + $content['SEARCH_FORMACTION'] = "editsearch"; + $content['SEARCH_SENDBUTTON'] = $content['LN_SEARCH_EDIT']; + + if ( isset($_GET['id']) ) + { + //PreInit these values + $content['SEARCHID'] = DB_RemoveBadChars($_GET['id']); + + $sqlquery = "SELECT * " . + " FROM " . DB_SEARCHES . + " WHERE ID = " . $content['SEARCHID']; + + $result = DB_Query($sqlquery); + $mysearch = DB_GetSingleRow($result, true); + if ( isset($mysearch['DisplayName']) ) + { + $content['SEARCHID'] = $mysearch['ID']; + $content['DisplayName'] = $mysearch['DisplayName']; + $content['SearchQuery'] = $mysearch['SearchQuery']; + if ( $mysearch['userid'] != null ) + $content['CHECKED_ISUSERONLY'] = "checked"; + else + $content['CHECKED_ISUSERONLY'] = ""; + + // --- Check if groups are available + $sqlquery = "SELECT " . + DB_GROUPS . ".ID as mygroupid, " . + DB_GROUPS . ".groupname " . + "FROM " . DB_GROUPS . + " ORDER BY " . DB_GROUPS . ".groupname"; + $result = DB_Query($sqlquery); + $content['SUBGROUPS'] = DB_GetAllRows($result, true); + if ( isset($content['SUBGROUPS']) && count($content['SUBGROUPS']) > 0 ) + { + // Process All Groups + for($i = 0; $i < count($content['SUBGROUPS']); $i++) + { + if ( $mysearch['groupid'] != null && $content['SUBGROUPS'][$i]['mygroupid'] == $mysearch['groupid'] ) + $content['SUBGROUPS'][$i]['group_selected'] = "selected"; + else + $content['SUBGROUPS'][$i]['group_selected'] = ""; + } + + // Enable Group Selection + $content['ISGROUPSAVAILABLE'] = true; + array_unshift( $content['SUBGROUPS'], array ("mygroupid" => -1, "groupname" => $content['LN_SEARCH_SELGROUPENABLE'], "group_selected" => "") ); + } + else + $content['ISGROUPSAVAILABLE'] = false; + // --- + } + else + { + $content['ISEDITORNEWSEARCH'] = false; + $content['ISERROR'] = true; + $content['ERROR_MSG'] = GetAndReplaceLangStr( $content['LN_SEARCH_ERROR_IDNOTFOUND'], $content['SEARCHID'] ); + } + } + else + { + $content['ISEDITORNEWSEARCH'] = false; + $content['ISERROR'] = true; + $content['ERROR_MSG'] = $content['LN_SEARCH_ERROR_INVALIDID']; + } + } + else if ($_GET['op'] == "delete") + { + if ( isset($_GET['id']) ) + { + //PreInit these values + $content['SEARCHID'] = DB_RemoveBadChars($_GET['id']); + + // Get UserInfo + $result = DB_Query("SELECT DisplayName FROM " . DB_SEARCHES . " WHERE ID = " . $content['SEARCHID'] ); + $myrow = DB_GetSingleRow($result, true); + if ( !isset($myrow['DisplayName']) ) + { + $content['ISERROR'] = true; + $content['ERROR_MSG'] = GetAndReplaceLangStr( $content['LN_SEARCH_ERROR_IDNOTFOUND'], $content['SEARCHID'] ); + } + + // --- Ask for deletion first! + if ( (!isset($_GET['verify']) || $_GET['verify'] != "yes") ) + { + // This will print an additional secure check which the user needs to confirm and exit the script execution. + PrintSecureUserCheck( GetAndReplaceLangStr( $content['LN_SEARCH_WARNDELETESEARCH'], $myrow['DisplayName'] ), $content['LN_DELETEYES'], $content['LN_DELETENO'] ); + } + // --- + + // do the delete! + $result = DB_Query( "DELETE FROM " . DB_SEARCHES . " WHERE ID = " . $content['SEARCHID'] ); + if ($result == FALSE) + { + $content['ISERROR'] = true; + $content['ERROR_MSG'] = GetAndReplaceLangStr( $content['LN_SEARCH_ERROR_DELSEARCH'], $content['SEARCHID'] ); + } + else + DB_FreeQuery($result); + + // Do the final redirect + RedirectResult( GetAndReplaceLangStr( $content['LN_SEARCH_ERROR_HASBEENDEL'], $myrow['DisplayName'] ) , "searches.php" ); + } + else + { + $content['ISERROR'] = true; + $content['ERROR_MSG'] = $content['LN_SEARCH_ERROR_INVALIDID']; + } + } +} + +if ( isset($_POST['op']) ) +{ + if ( isset ($_POST['id']) ) { $content['SEARCHID'] = intval(DB_RemoveBadChars($_POST['id'])); } else {$content['SEARCHID'] = -1; } + if ( isset ($_POST['DisplayName']) ) { $content['DisplayName'] = DB_RemoveBadChars($_POST['DisplayName']); } else {$content['DisplayName'] = ""; } + if ( isset ($_POST['SearchQuery']) ) { $content['SearchQuery'] = DB_RemoveBadChars($_POST['SearchQuery']); } else {$content['SearchQuery'] = ""; } + + // User & Group handeled specially + if ( isset ($_POST['isuseronly']) ) + { + $content['userid'] = $content['SESSION_USERID']; + $content['groupid'] = "null"; // Either user or group not both! + } + else + { + $content['userid'] = "null"; + if ( isset ($_POST['groupid']) && $_POST['groupid'] != -1 ) + $content['groupid'] = intval($_POST['groupid']); + else + $content['groupid'] = "null"; + } + + // --- Check mandotary values + if ( $content['DisplayName'] == "" ) + { + $content['ISERROR'] = true; + $content['ERROR_MSG'] = $content['LN_SEARCH_ERROR_DISPLAYNAMEEMPTY']; + } + else if ( $content['SearchQuery'] == "" ) + { + $content['ISERROR'] = true; + $content['ERROR_MSG'] = $content['LN_SEARCH_ERROR_SEARCHQUERYEMPTY']; + } + // --- + + if ( !isset($content['ISERROR']) ) + { + // Everything was alright, so we go to the next step! + if ( $_POST['op'] == "addnewsearch" ) + { + // Add custom search now! + $sqlquery = "INSERT INTO " . DB_SEARCHES . " (DisplayName, SearchQuery, userid, groupid) + VALUES ('" . $content['DisplayName'] . "', + '" . $content['SearchQuery'] . "', + " . $content['userid'] . ", + " . $content['groupid'] . " + )"; + $result = DB_Query($sqlquery); + DB_FreeQuery($result); + + // Do the final redirect + RedirectResult( GetAndReplaceLangStr( $content['LN_SEARCH_HASBEENADDED'], $content['DisplayName'] ) , "searches.php" ); + } + else if ( $_POST['op'] == "editsearch" ) + { + $result = DB_Query("SELECT ID FROM " . DB_SEARCHES . " WHERE ID = " . $content['SEARCHID']); + $myrow = DB_GetSingleRow($result, true); + if ( !isset($myrow['ID']) ) + { + $content['ISERROR'] = true; + $content['ERROR_MSG'] = GetAndReplaceLangStr( $content['LN_SEARCH_ERROR_IDNOTFOUND'], $content['SEARCHID'] ); + } + else + { + // Edit the Search Entry now! + $result = DB_Query("UPDATE " . DB_SEARCHES . " SET + DisplayName = '" . $content['DisplayName'] . "', + SearchQuery = '" . $content['SearchQuery'] . "', + userid = " . $content['userid'] . ", + groupid = " . $content['groupid'] . " + WHERE ID = " . $content['SEARCHID']); + DB_FreeQuery($result); + + // Done redirect! + RedirectResult( GetAndReplaceLangStr( $content['LN_SEARCH_HASBEENEDIT'], $content['DisplayName']) , "searches.php" ); + } + } + } +} + +if ( !isset($_POST['op']) && !isset($_GET['op']) ) +{ + // Default Mode = List Searches + $content['LISTSEARCHES'] = "true"; + + // Read all Serverentries + $sqlquery = "SELECT " . + DB_SEARCHES . ".ID, " . + DB_SEARCHES . ".DisplayName, " . + DB_SEARCHES . ".SearchQuery, " . + DB_SEARCHES . ".userid, " . + DB_SEARCHES . ".groupid, " . + DB_USERS . ".username, " . + DB_GROUPS . ".groupname " . + " FROM " . DB_SEARCHES . + " LEFT OUTER JOIN (" . DB_USERS . ", " . DB_GROUPS . + ") ON (" . + DB_SEARCHES . ".userid=" . DB_USERS . ".ID AND " . + DB_SEARCHES . ".groupid=" . DB_GROUPS . ".ID " . + ") " . + " ORDER BY " . DB_SEARCHES . ".userid, " . DB_SEARCHES . ".groupid, " . DB_SEARCHES . ".DisplayName"; +//echo $sqlquery; + $result = DB_Query($sqlquery); + $content['SEARCHES'] = DB_GetAllRows($result, true); + + // --- Process Users + for($i = 0; $i < count($content['SEARCHES']); $i++) + { + $content['SEARCHES'][$i]['SearchQuery_Display'] = strlen($content['SEARCHES'][$i]['SearchQuery']) > 25 ? substr($content['SEARCHES'][$i]['SearchQuery'], 0, 25) . " ..." : $content['SEARCHES'][$i]['SearchQuery']; + + // --- Set Image for Type + if ( $content['SEARCHES'][$i]['userid'] != null ) + { + $content['SEARCHES'][$i]['SearchTypeImage'] = $content["MENU_ADMINUSERS"]; + $content['SEARCHES'][$i]['SearchTypeText'] = $content["LN_GEN_USERONLY"]; + } + else if ( $content['SEARCHES'][$i]['groupid'] != null ) + { + $content['SEARCHES'][$i]['SearchTypeImage'] = $content["MENU_ADMINGROUPS"]; + $content['SEARCHES'][$i]['SearchTypeText'] = $content["LN_GEN_GROUPONLY"]; + } + else + { + $content['SEARCHES'][$i]['SearchTypeImage'] = $content["MENU_GLOBAL"]; + $content['SEARCHES'][$i]['SearchTypeText'] = $content["LN_GEN_GLOBAL"]; + } + // --- + + // --- Set CSS Class + if ( $i % 2 == 0 ) + $content['SEARCHES'][$i]['cssclass'] = "line1"; + else + $content['SEARCHES'][$i]['cssclass'] = "line2"; + // --- + } + // --- +} +// --- END Custom Code + +// --- BEGIN CREATE TITLE +$content['TITLE'] = InitPageTitle(); +$content['TITLE'] .= " :: " . $content['LN_ADMINMENU_SEARCHOPT']; +// --- END CREATE TITLE + +// --- Parsen and Output +InitTemplateParser(); +$page -> parser($content, "admin/admin_searches.html"); +$page -> output(); +// --- + +?> \ No newline at end of file diff --git a/src/admin/users.php b/src/admin/users.php index f1d81b5..09331e4 100644 --- a/src/admin/users.php +++ b/src/admin/users.php @@ -371,7 +371,7 @@ if ( !isset($_POST['op']) && !isset($_GET['op']) ) // --- BEGIN CREATE TITLE $content['TITLE'] = InitPageTitle(); -$content['TITLE'] .= " :: User Options"; +$content['TITLE'] .= " :: " . $content['LN_ADMINMENU_USEROPT']; // --- END CREATE TITLE // --- Parsen and Output diff --git a/src/images/icons/earth.png b/src/images/icons/earth.png new file mode 100644 index 0000000..a5517db Binary files /dev/null and b/src/images/icons/earth.png differ diff --git a/src/include/functions_common.php b/src/include/functions_common.php index d078bd1..648d5f5 100644 --- a/src/include/functions_common.php +++ b/src/include/functions_common.php @@ -431,6 +431,7 @@ function InitFrontEndVariables() $content['MENU_ADD'] = $content['BASEPATH'] . "images/icons/add.png"; $content['MENU_EDIT'] = $content['BASEPATH'] . "images/icons/edit.png"; $content['MENU_DELETE'] = $content['BASEPATH'] . "images/icons/delete.png"; + $content['MENU_GLOBAL'] = $content['BASEPATH'] . "images/icons/earth.png"; $content['MENU_PAGER_BEGIN'] = $content['BASEPATH'] . "images/icons/media_beginning.png"; $content['MENU_PAGER_PREVIOUS'] = $content['BASEPATH'] . "images/icons/media_rewind.png"; diff --git a/src/include/functions_config.php b/src/include/functions_config.php index 92e86a9..7a308be 100644 --- a/src/include/functions_config.php +++ b/src/include/functions_config.php @@ -306,26 +306,30 @@ function LoadSearchesFromDatabase() // Create Where for USERID if ( isset($content['SESSION_LOGGEDIN']) && $content['SESSION_LOGGEDIN'] ) - $szWhereUser = " OR " . DB_SEARCHES . ".userid = " . $content['SESSION_USERID']; + $szWhereUser = " OR " . DB_SEARCHES . ".userid = " . $content['SESSION_USERID'] . " "; else $szWhereUser = ""; if ( isset($content['SESSION_GROUPIDS']) ) - $szGroupWhere = " OR " . DB_SEARCHES . ".groupid IN (" . $content['SESSION_GROUPIDS'] . ") "; + $szGroupWhere = " OR " . DB_SEARCHES . ".groupid IN (" . $content['SESSION_GROUPIDS'] . ")"; else $szGroupWhere = ""; $sqlquery = " SELECT * " . " FROM " . DB_SEARCHES . - " WHERE userid = NULL " . + " WHERE (" . DB_SEARCHES . ".userid IS NULL AND " . DB_SEARCHES . ".groupid IS NULL) " . $szWhereUser . $szGroupWhere . - " ORDER BY " . DB_SEARCHES . ".DisplayName"; - + " ORDER BY " . DB_SEARCHES . ".userid, " . DB_SEARCHES . ".groupid, " . DB_SEARCHES . ".DisplayName"; +// " ORDER BY " . DB_SEARCHES . ".DisplayName"; $result = DB_Query($sqlquery); $myrows = DB_GetAllRows($result, true); if ( isset($myrows ) && count($myrows) > 0 ) { + // Overwrite Search Array with Database one + $CFG['Search'] = $myrows; + $content['Search'] = $myrows; + // Cleanup searches and fill / load from database diff --git a/src/lang/en/admin.php b/src/lang/en/admin.php index 899b155..38f581e 100644 --- a/src/lang/en/admin.php +++ b/src/lang/en/admin.php @@ -42,6 +42,9 @@ $content['LN_DELETEYES'] = "Yes"; $content['LN_DELETENO'] = "No"; $content['LN_GEN_ACTIONS'] = "Available Actions"; $content['LN_ADMIN_SEND'] = "Send changes"; +$content['LN_GEN_USERONLY'] = "User only"; +$content['LN_GEN_GROUPONLY'] = "Group only"; +$content['LN_GEN_GLOBAL'] = "Global"; // General Options $content['LN_ADMIN_MISC'] = "Miscellaneous Options"; @@ -78,7 +81,7 @@ $content['LN_USER_ERROR_IDNOTFOUND'] = "Error, User with ID '%1' , was not found $content['LN_USER_ERROR_DONOTDELURSLF'] = "Error, you can not DELETE YOURSELF!"; $content['LN_USER_ERROR_DELUSER'] = "Deleting of the user with id '%1' failed!"; $content['LN_USER_ERROR_INVALIDID'] = "Error, invalid ID, User not found"; -$content['LN_USER_ERROR_HASBEENDEL'] = "The User '%1' has been successfully DELETED!"; +$content['LN_USER_ERROR_HASBEENDEL'] = "The User '%1' has been successfully deleted!"; $content['LN_USER_ERROR_USEREMPTY'] = "Error, Username was empty"; $content['LN_USER_ERROR_USERNAMETAKEN'] = "Error, this Username is already taken!"; $content['LN_USER_ERROR_PASSSHORT'] = "Error, Password was to short, or did not match"; @@ -110,7 +113,7 @@ $content['LN_GROUP_ERROR_HASBEENEDIT'] = "The group '%1' has been successfully e $content['LN_GROUP_ERROR_INVALIDGROUP'] = "Error, invalid ID, Group not found"; $content['LN_GROUP_WARNDELETEGROUP'] = "Are you sure that you want to delete the Group '%1'? All Groupsettings will be deleted as well."; $content['LN_GROUP_ERROR_DELGROUP'] = "Deleting of the group with id '%1' failed!"; -$content['LN_GROUP_ERROR_HASBEENDEL'] = "The Group '%1' has been successfully DELETED!"; +$content['LN_GROUP_ERROR_HASBEENDEL'] = "The Group '%1' has been successfully deleted!"; $content['LN_GROUP_MEMBERS'] = "Groupmembers: "; $content['LN_GROUP_ADDUSER'] = "Add User to Group"; $content['LN_GROUP_ERROR_USERIDMISSING'] = "The userid is missing."; @@ -123,4 +126,30 @@ $content['LN_GROUP_ERROR_REMUSERFROMGROUP'] = "The user '%1' could not be remove $content['LN_GROUP_USERHASBEENREMOVED'] = "The user '%1' has been successfully removed from the group '%2'"; $content['LN_GROUP_'] = ""; +// Custom Searches center +$content['LN_SEARCH_CENTER'] = "Custom Searches"; +$content['LN_SEARCH_ADD'] = "Add Custom Search"; +$content['LN_SEARCH_ID'] = "ID"; +$content['LN_SEARCH_NAME'] = "Search Name"; +$content['LN_SEARCH_QUERY'] = "Search Query"; +$content['LN_SEARCH_TYPE'] = "Type of Search"; +$content['LN_SEARCH_EDIT'] = "Edit Custom Search"; +$content['LN_SEARCH_DELETE'] = "Delete Custom Search"; +$content['LN_SEARCH_ADDEDIT'] = "Add / Edit a Custom Search"; +$content['LN_SEARCH_USERONLY'] = "For me only
(Only available to your user)"; +$content['LN_SEARCH_GROUPONLY'] = "For this group
(Only available to the selected group)"; +$content['LN_SEARCH_SELGROUPENABLE'] = ">> Select Group to enable <<"; +$content['LN_SEARCH_ERROR_DISPLAYNAMEEMPTY'] = "The DisplayName cannot be empty."; +$content['LN_SEARCH_ERROR_SEARCHQUERYEMPTY'] = "The SearchQuery cannot be empty."; +$content['LN_SEARCH_HASBEENADDED'] = "The Custom Search '%1' has been successfully added."; +$content['LN_SEARCH_ERROR_IDNOTFOUND'] = "Could not find a search with ID '%1'."; +$content['LN_SEARCH_ERROR_INVALIDID'] = "Invalid search ID."; +$content['LN_SEARCH_HASBEENEDIT'] = "The Custom Search '%1' has been successfully edited."; +$content['LN_SEARCH_WARNDELETESEARCH'] = "Are you sure that you want to delete the Custom Search '%1'? This cannot be undone!"; +$content['LN_SEARCH_ERROR_DELSEARCH'] = "Deleting of the Custom Search with id '%1' failed!"; +$content['LN_SEARCH_ERROR_HASBEENDEL'] = "The Custom Search '%1' has been successfully deleted!"; +$content['LN_SEARCH_'] = ""; +$content['LN_SEARCH_'] = ""; + + ?> \ No newline at end of file diff --git a/src/templates/admin/admin_groups.html b/src/templates/admin/admin_groups.html index 653f9bd..5004c9f 100644 --- a/src/templates/admin/admin_groups.html +++ b/src/templates/admin/admin_groups.html @@ -66,6 +66,7 @@ + @@ -93,6 +94,7 @@
{LN_GROUP_ADDEDIT}
{LN_GROUP_NAME}
+
{LN_GROUP_ADDUSER}: '{GROUPNAME}'
{LN_USER_NAME} @@ -122,6 +124,7 @@ +
{LN_GROUP_USERDELETE}: '{GROUPNAME}'
{LN_USER_NAME} diff --git a/src/templates/admin/admin_searches.html b/src/templates/admin/admin_searches.html new file mode 100644 index 0000000..0dd8a72 --- /dev/null +++ b/src/templates/admin/admin_searches.html @@ -0,0 +1,93 @@ + + + +
+

{ERROR_MSG}

+
+ + + + + + + + + +
{LN_SEARCH_CENTER}
+

+ + + + + + + + + + + + + + + + + + + + + + + + +
{LN_SEARCH_ID}{LN_SEARCH_NAME}{LN_SEARCH_QUERY}{LN_SEARCH_TYPE}{LN_GEN_ACTIONS}
{ID}{DisplayName}{SearchQuery_Display} {SearchTypeText} +   +   +
 {LN_SEARCH_ADD}
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
{LN_SEARCH_ADDEDIT}
{LN_SEARCH_NAME}
{LN_SEARCH_QUERY}
{LN_SEARCH_USERONLY}
{LN_SEARCH_GROUPONLY} + +
+ + + +
+
+ + +

+ +
+ + \ No newline at end of file diff --git a/src/templates/admin/admin_users.html b/src/templates/admin/admin_users.html index f4f9173..3ed324e 100644 --- a/src/templates/admin/admin_users.html +++ b/src/templates/admin/admin_users.html @@ -44,6 +44,7 @@ +
{LN_USER_ADDEDIT}
{LN_USER_NAME}