|
From: <zy...@us...> - 2015-01-21 17:33:43
|
Revision: 12940
http://sourceforge.net/p/xoops/svn/12940
Author: zyspec
Date: 2015-01-21 17:33:38 +0000 (Wed, 21 Jan 2015)
Log Message:
-----------
* fixed bug where editing menu item put item in 1st menu
* fixed reference to JS files since moved to /assets
* fixed/improve menu HTML rendering so it can validate
* moved ./skins/clean/template.tpl to ./skins/clean/templates subdirectory
* moved ./skins/breadcrumb/template.tpl to ./skins/breadcrumb/templates subdirectory
* updated from dirname(__FILE__) to PHP 5.3 __DIR__
* updated jquery to v1.11.2
* updated hoverIntent to v1.81
* updated supersubs to v3.0
* updated superfish to v1.7.5
* general code cleanup
Modified Paths:
--------------
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/about.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/admin_about.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/admin_footer.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/admin_header.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/admin_links.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/admin_menus.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/index.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/menu.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/assets/css/admin.css
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/assets/js/hoverIntent.js
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/assets/js/order.js
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/assets/js/superfish.js
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/assets/js/supersubs.js
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/blocks/mymenus_block.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/class/about.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/class/builder.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/class/links.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/class/menus.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/class/plugin.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/class/registry.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/docs/changelog.txt
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/include/functions.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/include/update.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/include/xoops.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/language/english/admin.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/plugins/constant/constant.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/plugins/dynamic/dynamic.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/plugins/mymenus/mymenus.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/plugins/smarty/smarty.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/bootstrap/skin_version.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/bootstrap/templates/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/breadcrumb/skin_version.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/clean/skin_version.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/default/stuHover.js
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/default/templates/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/mainmenu/templates/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/multiblack/stuHover.js
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/multiblack/templates/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/superfish/css/superfish-navbar.css
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/superfish/css/superfish-vertical.css
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/superfish/css/superfish.css
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/superfish/skin_version.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/superfish/templates/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/superfish_navbar/css/superfish-navbar.css
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/superfish_navbar/css/superfish-vertical.css
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/superfish_navbar/css/superfish.css
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/superfish_navbar/skin_version.php
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/superfish_navbar/templates/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/tw_blue/templates/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/templates/static/mymenus_admin_links.tpl
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/templates/static/mymenus_admin_menus.tpl
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/xoops_version.php
Added Paths:
-----------
XoopsModules/modulepacks/x257basicmodulepack/zyspec/
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/assets/js/jquery-1.11.2.min.js
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/breadcrumb/templates/
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/breadcrumb/templates/index.html
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/breadcrumb/templates/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/clean/templates/
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/clean/templates/index.html
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/clean/templates/template.tpl
Removed Paths:
-------------
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/breadcrumb/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/skins/clean/template.html
Modified: XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/about.php
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/about.php 2015-01-12 12:30:54 UTC (rev 12935)
+++ XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/about.php 2015-01-21 17:33:38 UTC (rev 12940)
@@ -12,13 +12,13 @@
/**
* @copyright The XOOPS Project http://sourceforge.net/projects/xoops/
* @license http://www.gnu.org/licenses/gpl-2.0.html GNU Public License
- * @package Mytabs
+ * @package Mymenus
* @since 1.0
* @author trabis <lus...@gm...>
* @version $Id$
*/
-include_once dirname(__FILE__) . '/admin_header.php';
+include_once __DIR__ . '/admin_header.php';
xoops_cp_header();
@@ -27,4 +27,4 @@
echo $aboutAdmin->addNavigation('about.php');
echo $aboutAdmin->renderAbout('6KJ7RW5DR3VTJ', false);
-include 'admin_footer.php';
+include __DIR__ . '/admin_footer.php';
Modified: XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/admin_about.php
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_about.php 2015-01-12 12:30:54 UTC (rev 12935)
+++ XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/admin_about.php 2015-01-21 17:33:38 UTC (rev 12940)
@@ -18,8 +18,8 @@
* @version $Id$
*/
-include_once dirname(__FILE__) . '/admin_header.php';
-include_once XOOPS_ROOT_PATH . '/modules/mymenus/class/about.php';
+include_once __DIR__ . '/admin_header.php';
+include_once $GLOBALS['xoops']->path('/modules/mymenus/class/about.php');
$aboutObj = new MymenusAbout();
$aboutObj->render();
Modified: XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/admin_footer.php
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_footer.php 2015-01-12 12:30:54 UTC (rev 12935)
+++ XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/admin_footer.php 2015-01-21 17:33:38 UTC (rev 12940)
@@ -19,10 +19,10 @@
*/
echo "<div class='adminfooter'>\n"
- ." <div style='text-align: center;'>\n"
+ ." <div class='txtcenter'>\n"
." <a href='http://www.xoops.org' rel='external'><img src='{$pathIcon32}/xoopsmicrobutton.gif' alt='XOOPS' title='XOOPS'></a>\n"
." </div>\n"
." " . _AM_MODULEADMIN_ADMIN_FOOTER . "\n"
- ."</div>";
+ ."</div>\n";
xoops_cp_footer();
Modified: XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/admin_header.php
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_header.php 2015-01-12 12:30:54 UTC (rev 12935)
+++ XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/admin_header.php 2015-01-21 17:33:38 UTC (rev 12940)
@@ -18,7 +18,7 @@
* @version $Id$
*/
-require_once dirname(dirname(dirname(dirname(__FILE__)))) . '/include/cp_header.php';
+require_once dirname(dirname(dirname(__DIR__))) . '/include/cp_header.php';
if ( !@include_once $GLOBALS['xoops']->path('/Frameworks/moduleclasses/moduleadmin/moduleadmin.php') ) {
redirect_header("../../../admin.php", 5, _AM_MODULEADMIN_MISSING, false);
@@ -38,11 +38,12 @@
include_once $GLOBALS['xoops']->path('modules/mymenus/class/plugin.php');
$mymenusTpl = new XoopsTpl();
-if (!isset($xoopsTpl) || !is_object($xoopsTpl)) {
- include_once(XOOPS_ROOT_PATH."/class/template.php");
- $xoopsTpl = new XoopsTpl();
+if (!isset($GLOBALS['xoopsTpl']) || !($GLOBALS['xoopsTpl'] instanceof XoopsTpl)) {
+ include_once $GLOBALS['xoops']->path("/class/template.php");
+ $GLOBALS['xoopsTpl'] = new XoopsTpl();
}
-$xoopsTpl->assign('pathIcon16', $pathIcon16);
+$GLOBALS['xoopsTpl']->assign('pathIcon16', $pathIcon16);
xoops_load('XoopsFormLoader');
+xoops_load('XoopsRequest');
xoops_loadLanguage('modinfo', 'mymenus');
Modified: XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/admin_links.php
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_links.php 2015-01-12 12:30:54 UTC (rev 12935)
+++ XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/admin_links.php 2015-01-21 17:33:38 UTC (rev 12940)
@@ -18,7 +18,7 @@
* @version $Id$
*/
-include_once dirname(__FILE__) . '/admin_header.php';
+include_once __DIR__ . '/admin_header.php';
$menus_handler =& xoops_getModuleHandler('menus', 'mymenus');
$criteria = new CriteriaCompo();
@@ -26,26 +26,36 @@
$criteria->setOrder('ASC');
$menus_list = $menus_handler->getList($criteria);
-$indexAdmin = new ModuleAdmin();
+//$indexAdmin = new ModuleAdmin();
if (empty($menus_list)) {
redirect_header('admin_menus.php', 1, _AM_MYMENUS_MSG_NOMENUS);
exit;
}
-if (isset($_REQUEST['menu_id']) && in_array($_REQUEST['menu_id'], array_keys($menus_list))) {
- $menu_id = $_REQUEST['menu_id'];
+$valid_menu_ids = array_keys($menus_list);
+if (isset($_REQUEST['mid']) && in_array($_REQUEST['mid'], $valid_menu_ids)) {
+ $menu_id = (int) $_REQUEST['mid'];
$menu_title = $menus_list[$menu_id];
} else {
$keys = array_keys($menus_list);
- $menu_id = $keys[0];
- $menu_title = $menus_list[$menu_id];
+ $menu_id = $valid_menu_ids[0]; //force menu id to first valid menu id in the list
+ $menu_title = $menus_list[$menu_id]; // and get it's title
}
-
-$mymenusTpl->assign('menu_id', $menu_id);
+$mymenusTpl->assign('mid', $menu_id);
$mymenusTpl->assign('menu_title', $menu_title);
$mymenusTpl->assign('menus_list', $menus_list);
+$op = XoopsRequest::getCmd('op', 'list');
+$id = XoopsRequest::getInt('id', 0);
+$pid = XoopsRequest::getInt('pid', 0);
+$limit = XoopsRequest::getInt('limit', 15);
+$start = XoopsRequest::getInt('start', 0);
+$redir = XoopsRequest::getString('redir', null);
+$weight = XoopsRequest::getInt('weight', 0);
+$visible = XoopsRequest::getInt('visible', 0);
+
+/*
$op = isset($_GET['op']) ? trim($_GET['op']) : (isset($_POST['op']) ? trim($_POST['op']) : 'list');
$id = isset($_GET['id']) ? intval($_GET['id']) : (isset($_POST['id']) ? intval($_POST['id']) : null);
@@ -57,24 +67,25 @@
$weight = isset($_GET['weight']) ? intval($_GET['weight']) : (isset($_POST['weight']) ? intval($_POST['weight']) : 0);
$visible = isset($_GET['visible']) ? intval($_GET['visible']) : (isset($_POST['visible']) ? intval($_POST['visible']) : 0);
+*/
$mymenus_adminpage = 'admin_links.php';
switch ($op) {
case 'add':
- mymenus_admin_add();
+ mymenus_admin_add($menu_id);
break;
case 'form':
xoops_cp_header();
echo $indexAdmin->addNavigation('admin_links.php');
echo mymenus_admin_form(null, $pid);
- include 'admin_footer.php';
+ include __DIR__ . '/admin_footer.php';
break;
case 'edit':
echo mymenus_admin_form($id);
break;
case 'editok':
- mymenus_admin_edit($id);
+ mymenus_admin_edit($id, $menu_id);
break;
case 'del':
mymenus_admin_confirmdel($id, $redir);
@@ -92,8 +103,8 @@
xoops_cp_header();
echo $indexAdmin->addNavigation('admin_links.php');
mymenus_admin_move($id, $weight);
- echo mymenus_admin_list($start);
- include 'admin_footer.php';
+ echo mymenus_admin_list($start, $menu_id);
+ include __DIR__ . '/admin_footer.php';
break;
case 'toggle':
mymenus_admin_toggle($id, $visible);
@@ -123,8 +134,13 @@
case 'list':
default:
xoops_cp_header();
+ $module_handler =& xoops_gethandler('module');
+ $system =& $module_handler->getByDirname('system');
+ $systemConfigHandler =& xoops_gethandler('config');
+ $systemConfig =& $systemConfigHandler->getConfigsByCat(0, $system->getVar('mid'));
+
// Add module stylesheet
- $xoTheme->addStylesheet(XOOPS_URL . '/modules/system/css/ui/' . xoops_getModuleOption('jquery_theme', 'system') . '/ui.all.css');
+ $xoTheme->addStylesheet(XOOPS_URL . '/modules/system/css/ui/' . $systemConfig['jquery_theme'] . '/ui.all.css');
$xoTheme->addStylesheet(XOOPS_URL . '/modules/mymenus/assets/css/admin.css');
$xoTheme->addStylesheet(XOOPS_URL . '/Frameworks/moduleclasses/moduleadmin/css/admin.css');
// Define scripts
@@ -134,41 +150,45 @@
$xoTheme->addScript(XOOPS_URL . '/modules/mymenus/assets/js/order.js');
echo $indexAdmin->addNavigation('admin_links.php');
- echo mymenus_admin_list($start);
+ echo mymenus_admin_list($start, $menu_id);
/* Disable xoops debugger in dialog window */
- include_once XOOPS_ROOT_PATH . '/class/logger/xoopslogger.php';
+ include_once $GLOBALS['xoops']->path('/class/logger/xoopslogger.php');
$xoopsLogger =& XoopsLogger::getInstance();
$xoopsLogger->activated = true;
error_reporting(-1);
- include 'admin_footer.php';
- break;
+ include __DIR__ . '/admin_footer.php';
+ break;
}
/**
- * @param int $start
+ * Display the links in a menu
*
+ * @param integer $start
+ * @param integer $menu_id
+ *
* @return bool|mixed|string
*/
-function mymenus_admin_list($start = 0)
+function mymenus_admin_list($start = 0, $menu_id)
{
- global $mymenusTpl, $menu_id;
+ global $mymenusTpl;
- $this_handler =& xoops_getModuleHandler('links', 'mymenus');
+ $links_handler =& xoops_getModuleHandler('links', 'mymenus');
- $criteria = new CriteriaCompo(new Criteria('mid', $menu_id));
+ $criteria = new CriteriaCompo(new Criteria('mid', (int) $menu_id));
- $count = $this_handler->getCount($criteria);
- $mymenusTpl->assign('count', $count);
+ $count_links = $links_handler->getCount($criteria);
+ $mymenusTpl->assign('count', $count_links);
$criteria->setSort('weight');
$criteria->setOrder('ASC');
$menus = array();
$menusArray = array();
- if ($count > 0) {
- $menus = $this_handler->getObjects($criteria);
+ if (($count_links > 0) && ($count_links >= (int) $start)) {
+ $criteria->setStart((int) $start);
+ $menus = $links_handler->getObjects($criteria);
foreach ($menus as $menu) {
$array[] = $menu->getValues();
}
@@ -193,13 +213,14 @@
redirect_header($GLOBALS['mymenus_adminpage'], 1, implode('<br />', $GLOBALS['xoopsSecurity']->getErrors()));
}
+ $id = (int) $id;
if ($id <= 0) {
redirect_header($GLOBALS['mymenus_adminpage'], 1);
}
$this_handler =& xoops_getModuleHandler('links' , 'mymenus');
$obj = $this_handler->get($id);
- if (!is_object($obj)) {
+ if ((empty($obj)) || !($obj instanceof MymenusLinks)) {
redirect_header($GLOBALS['mymenus_adminpage'], 1);
}
@@ -209,12 +230,12 @@
$criteria->add(new Criteria('pid', $id),'OR');
//first delete links level 2
- global $xoopsDB;
- $query = "DELETE FROM ".$xoopsDB->prefix("mymenus_links")." WHERE pid = (
+// global $xoopsDB;
+ $query = "DELETE FROM " . $GLOBALS['xoopsDB']->prefix("mymenus_links")." WHERE pid = (
SELECT id FROM (
- SELECT * FROM ".$xoopsDB->prefix("mymenus_links")." WHERE pid = ".$id.") AS sec
+ SELECT * FROM " . $GLOBALS['xoopsDB']->prefix("mymenus_links")." WHERE pid = {$id}) AS sec
);";
- $result = $xoopsDB->queryF($query);
+ $result = $GLOBALS['xoopsDB']->queryF($query);
//delete links level 0 and 1
if (!$this_handler->deleteAll($criteria)) {
xoops_cp_header();
@@ -252,9 +273,9 @@
function mymenus_admin_confirmdel($id = null, $redir = null, $op = 'delok')
{
- $arr = array();
- $arr['op'] = $op;
- $arr['id'] = $id;
+ $arr = array('op' => $op,
+ 'id' => $id
+ );
if (!is_null($redir)) {
$arr['redir'] = $redir;
}
@@ -264,67 +285,83 @@
xoops_cp_footer();
}
-function mymenus_admin_add()
+function mymenus_admin_add($menu_id)
{
if (!$GLOBALS['xoopsSecurity']->check()) {
redirect_header($GLOBALS['mymenus_adminpage'], 3, implode('<br />', $GLOBALS['xoopsSecurity']->getErrors()));
}
- $this_handler =& xoops_getModuleHandler('links','mymenus');
- $criteria = new CriteriaCompo(new Criteria('mid', $_POST['mid']));
+ $links_handler =& xoops_getModuleHandler('links','mymenus');
+// $criteria = new CriteriaCompo(new Criteria('mid', $_POST['mid']));
+ $criteria = new CriteriaCompo(new Criteria('mid', $menu_id));
$criteria->setSort('weight');
$criteria->setOrder('DESC');
$criteria->setLimit(1);
- $menus = $this_handler->getObjects($criteria);
+ $menus = $links_handler->getObjects($criteria);
$weight = 1;
- if (isset($menus[0]) && is_object($menus[0])) {
+ if (isset($menus[0]) && ($menus[0] instanceof MymenusLinks)) {
$weight = $menus[0]->getVar('weight') + 1;
}
- $obj = $this_handler->create();
+ $link_obj = $links_handler->create();
if (!isset($_POST['hooks'])) {
$_POST['hooks'] = array();
}
- $obj->setVars($_POST);
- $obj->setVar('weight', $weight);
+ //@TODO: clean incoming POST vars
+ $link_obj->setVars($_POST);
+ $link_obj->setVar('weight', $weight);
- if (!$this_handler->insert($obj)) {
+ if (!$links_handler->insert($link_obj)) {
$msg = _AM_MYMENUS_MSG_ERROR;
} else {
- $this_handler->update_weights($obj);
+ $links_handler->update_weights($link_obj);
$msg = _AM_MYMENUS_MSG_SUCCESS;
}
- redirect_header($GLOBALS['mymenus_adminpage'] . '?op=list&menu_id=' . $obj->getVar('mid'), 2, $msg);
+ redirect_header($GLOBALS['mymenus_adminpage'] . '?op=list&mid=' . $link_obj->getVar('mid'), 2, $msg);
}
/**
- * @param $id
+ * @param integer $id
+ * @param integer $menu_id
*/
-function mymenus_admin_edit($id)
+function mymenus_admin_edit($id, $menu_id)
{
if (!$GLOBALS['xoopsSecurity']->check()) {
redirect_header($GLOBALS['mymenus_adminpage'], 3, implode('<br />', $GLOBALS['xoopsSecurity']->getErrors()));
}
- global $menu_id;
+ if (empty($menu_id)) {
+ redirect_header($GLOBALS['mymenus_adminpage'] . "?op=list", 2, _AM_MYMENUS_MSG_MENU_INVALID_ERROR);
+ }
+
+ $menu_id = (int) $menu_id;
+ $links_handler =& xoops_getModuleHandler('links','mymenus');
+ $link_obj = $links_handler->get((int) $id);
+
+ //if this was moved then parent could be in different menu, if so then set parent to top level
+ if (!empty($_POST['pid'])) {
+ $parent_obj = $links_handler->get($link_obj->getVar('pid')); //get the parent oject
+ if(($parent_obj instanceof MylinksLinks) && ($link_obj->getVar('mid') != $parent_obj->getVar('mid'))) {
+ $link_obj->setVar('pid', 0);
+ }
+ }
/* Disable xoops debugger in dialog window */
- include_once XOOPS_ROOT_PATH.'/class/logger/xoopslogger.php';
+ include_once $GLOBALS['xoops']->path('/class/logger/xoopslogger.php');
$xoopsLogger =& XoopsLogger::getInstance();
$xoopsLogger->activated = false;
error_reporting(0);
- $this_handler =& xoops_getModuleHandler('links','mymenus');
- $obj = $this_handler->get($id);
- $obj->setVars($_POST);
+ // @TODO: clean incoming POST vars
+ $link_obj->setVars($_POST);
- if (!$this_handler->insert($obj)) {
+ if (!$links_handler->insert($link_obj)) {
$msg = _AM_MYMENUS_MSG_ERROR;
} else {
$msg = _AM_MYMENUS_MSG_SUCCESS;
}
- redirect_header($GLOBALS['mymenus_adminpage'] . "?op=list&menu_id=$menu_id", 2, $msg);
+ redirect_header($GLOBALS['mymenus_adminpage'] . "?op=list&mid={$menu_id}", 2, $msg);
}
/**
@@ -333,15 +370,15 @@
*
* @return string
*/
-function mymenus_admin_form($id = null, $pid = null)
+function mymenus_admin_form($id = null, $pid = null, $menu_id = null)
{
/* Disable xoops debugger in dialog window */
- include_once XOOPS_ROOT_PATH.'/class/logger/xoopslogger.php';
+ include_once $GLOBALS['xoops']->path('/class/logger/xoopslogger.php');
$xoopsLogger =& XoopsLogger::getInstance();
$xoopsLogger->activated = false;
error_reporting(0);
- global $menu_id;
+ global $pathIcon16;
$registry =& MymenusRegistry::getInstance();
$plugin =& MymenusPlugin::getInstance();
@@ -351,7 +388,7 @@
if (isset($id)) {
$ftitle = _EDIT;
- $obj = $this_handler->get($id);
+ $obj = $this_handler->get((int) $id);
$objArray = $obj->getValues();
} else {
@@ -359,33 +396,42 @@
$obj = $this_handler->create();
$objArray = $obj->getValues();
if (isset($pid)) {
- $objArray['pid'] = $pid;
+ $objArray['pid'] = (int) $pid;
}
+ if (isset($menu_id)) {
+ $objArray['mid'] = (int) $menu_id;
+ }
}
-
$form = new XoopsThemeForm($ftitle, 'admin_form', $GLOBALS['mymenus_adminpage'], "post", true);
$formtitle = new XoopsFormText(_AM_MYMENUS_MENU_TITLE, 'title', 50, 255, $objArray['title']);
$formalttitle = new XoopsFormText(_AM_MYMENUS_MENU_ALTTITLE, 'alt_title', 50, 255, $objArray['alt_title']);
-
+ // display menu options (if more than 1 menu available
+ $menus_handler =& xoops_getmodulehandler('menus', 'mymenus');
+ $criteria = new CriteriaCompo();
+ $criteria->setSort('title');
+ $criteria->setOrder('ASC');
+ $menus_list = $menus_handler->getList($criteria);
+ if (count($menus_list > 1)) {
+ if (null == $objArray['mid']) { // initial menu value not set
+ $menu_values = array_flip($menu_list);
+ $formmid = new XoopsFormSelect('Menu', 'mid', array_shift($menu_values));
+ } else {
+ $formmid = new XoopsFormSelect('Menu', 'mid', $objArray['mid']);
+ }
+ $formmid->addOptionArray($menus_list);
+ } else {
+ $menu_keys = array_keys($menu_list);
+ $menu_title = array_shift($menu_list);
+ $formmid = new XoopsFormElementTray('Menu');
+ $formmid->addElement(new XoopsFormHidden('mid', $menu_keys[0]));
+ $formmid->addElement(new XoopsFormLabel('', $menu_title, 'menu_title'));
+ }
$formlink = new XoopsFormText(_AM_MYMENUS_MENU_LINK, 'link', 50, 255, $objArray['link']);
$formimage = new XoopsFormText(_AM_MYMENUS_MENU_IMAGE, 'image', 50, 255, $objArray['image']);
- $criteria = new CriteriaCompo(new Criteria('mid', $menu_id));
- $criteria->add(new Criteria('id', $id, '<>'));
- $criteria->setSort('weight');
- $criteria->setOrder('ASC');
-
- global $xoopsModule;
- $pathIcon16 = '../'.$xoopsModule->getInfo('icons16');
-
- $statontxt
- = " <img src=". $pathIcon16 .'/1.png'.' '. "alt='" ._YES . "' /> " . _YES
- . " ";
- $statofftxt
- = " <img src=". $pathIcon16 .'/0.png' .' '."alt='" . _NO . "' /> "
- . _NO . " ";
+ $statontxt = " <img src='{$pathIcon16}/1.png' alt='" ._YES . "' /> " . _YES . " ";
+ $statofftxt = " <img src='{$pathIcon16}/0.png' alt='" . _NO . "' /> " . _NO . " ";
$formvis = new XoopsFormRadioYN(_AM_MYMENUS_MENU_VISIBLE, 'visible', $objArray['visible'], $statontxt, $statofftxt);
-//---------------mamba
$formtarget = new XoopsFormSelect(_AM_MYMENUS_MENU_TARGET, "target", $objArray['target']);
$formtarget->addOption("_self", _AM_MYMENUS_MENU_TARG_SELF);
@@ -400,6 +446,7 @@
$form->addElement($formtitle, true);
$form->addElement($formalttitle);
+ $form->addElement($formmid);
$form->addElement($formlink);
$form->addElement($formimage);
$form->addElement($formparent);
@@ -415,9 +462,9 @@
$btn = new XoopsFormButton('', 'reset', _CANCEL, 'button');
if (isset($id)) {
- $btn->setExtra('onclick="document.location.href=\'' . $GLOBALS['mymenus_adminpage'] . '?op=list&menu_id=' . $menu_id . ' \'"');
+ $btn->setExtra("onclick=\"document.location.href='" . $GLOBALS['mymenus_adminpage'] . "?op=list&mid={$menu_id}'\"");
} else {
- $btn->setExtra('onclick="document.getElementById(\'addform\').style.display = \'none\'; return false;"');
+ $btn->setExtra("onclick=\"document.getElementById('addform').style.display = 'none'; return false;\"");
}
$tray->addElement($btn);
@@ -430,21 +477,21 @@
$form->addElement(new XoopsFormHidden('op', 'add'));
}
- $form->addElement(new XoopsFormHidden('mid', $menu_id));
- $form->addElement(new XoopsFormHidden('menu_id', $menu_id));
-
return $form->render();
}
/**
- * @param $id
- * @param $weight
+ *
+ * Update the {@see MymenusLinks} weight (order)
+ *
+ * @param integer $id of links object
+ * @param integer $weight
*/
function mymenus_admin_move($id, $weight)
{
$this_handler =& xoops_getModuleHandler('links', 'mymenus');
- $obj = $this_handler->get($id);
- $obj->setVar('weight', $weight);
+ $obj = $this_handler->get((int) $id);
+ $obj->setVar('weight', (int) $weight);
$this_handler->insert($obj);
$this_handler->update_weights($obj);
}
@@ -455,14 +502,14 @@
*/
function mymenus_admin_toggle($id, $visible)
{
- include_once XOOPS_ROOT_PATH.'/class/logger/xoopslogger.php';
+ include_once $GLOBALS['xoops']->path('/class/logger/xoopslogger.php');
$xoopsLogger =& XoopsLogger::getInstance();
$xoopsLogger->activated = true;
error_reporting(0);
$this_handler =& xoops_getModuleHandler('links', 'mymenus');
- $obj = $this_handler->get($id);
- $visible = ($obj->getVar('visible') == 1) ? 0 : 1;
+ $obj = $this_handler->get((int) $id);
+ $visible = (1 == $obj->getVar('visible')) ? 0 : 1;
$obj->setVar('visible', $visible);
$this_handler->insert($obj);
echo $obj->getVar('visible');
Modified: XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/admin_menus.php
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_menus.php 2015-01-12 12:30:54 UTC (rev 12935)
+++ XoopsModules/modulepacks/x257basicmodulepack/zyspec/mymenus/admin/admin_menus.php 2015-01-21 17:33:38 UTC (rev 12940)
@@ -18,8 +18,14 @@
* @version $Id$
*/
-include_once dirname(__FILE__) . '/admin_header.php';
+include_once __DIR__ . '/admin_header.php';
+$op = XoopsRequest::getCmd('op', 'list');
+$id = XoopsRequest::getInt('id', null);
+$limit = XoopsRequest::getInt('limit', 15);
+$start = XoopsRequest::getInt('start', 0);
+$redir = XoopsRequest::getString('redir', null);
+/*
$op = isset($_GET['op']) ? trim($_GET['op']) : (isset($_POST['op']) ? trim($_POST['op']) : 'list');
$id = isset($_GET['id']) ? intval($_GET['id']) : (isset($_POST['id']) ? intval($_POST['id']) : null);
@@ -27,7 +33,7 @@
$limit = isset($_GET['limit']) ? intval($_GET['limit']) : (isset($_POST['limit']) ? intval($_POST['limit']) : 15);
$start = isset($_GET['start']) ? intval($_GET['start']) : (isset($_POST['start']) ? intval($_POST['start']) : 0);
$redir = isset($_GET['redir']) ? $_GET['redir'] : (isset($_POST['redir']) ? $_POST['redir'] : null);
-
+*/
$mymenus_adminpage = 'admin_menus.php';
switch ($op) {
@@ -60,24 +66,27 @@
default:
xoops_cp_header();
echo $indexAdmin->addNavigation('admin_menus.php');
- echo mymenus_admin_list($start);
+ echo mymenus_admin_list($start, $limit);
includ...
[truncated message content] |