|
From: <be...@us...> - 2015-01-23 13:05:22
|
Revision: 12944
http://sourceforge.net/p/xoops/svn/12944
Author: beckmi
Date: 2015-01-23 13:05:09 +0000 (Fri, 23 Jan 2015)
Log Message:
-----------
Adding changes from Zyspec
Modified Paths:
--------------
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/about.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_about.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_footer.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_header.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_links.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_menus.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/index.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/menu.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/assets/css/admin.css
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/assets/js/hoverIntent.js
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/assets/js/order.js
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/assets/js/superfish.js
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/assets/js/supersubs.js
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/blocks/mymenus_block.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/class/about.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/class/builder.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/class/links.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/class/menus.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/class/plugin.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/class/registry.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/docs/changelog.txt
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/include/functions.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/include/update.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/include/xoops.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/language/english/admin.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/plugins/constant/constant.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/plugins/dynamic/dynamic.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/plugins/mymenus/mymenus.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/plugins/smarty/smarty.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/bootstrap/skin_version.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/bootstrap/templates/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/breadcrumb/skin_version.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/clean/skin_version.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/default/stuHover.js
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/default/templates/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/mainmenu/templates/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/multiblack/stuHover.js
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/multiblack/templates/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/superfish/css/superfish-navbar.css
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/superfish/css/superfish-vertical.css
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/superfish/css/superfish.css
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/superfish/skin_version.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/superfish/templates/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/superfish_navbar/css/superfish-navbar.css
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/superfish_navbar/css/superfish-vertical.css
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/superfish_navbar/css/superfish.css
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/superfish_navbar/skin_version.php
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/superfish_navbar/templates/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/tw_blue/templates/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/templates/static/mymenus_admin_links.tpl
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/templates/static/mymenus_admin_menus.tpl
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/xoops_version.php
Added Paths:
-----------
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/assets/js/jquery-1.11.2.min.js
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/breadcrumb/templates/
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/breadcrumb/templates/index.html
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/breadcrumb/templates/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/clean/templates/
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/clean/templates/index.html
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/clean/templates/template.tpl
Removed Paths:
-------------
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/breadcrumb/template.tpl
XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/skins/clean/template.html
Modified: XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/about.php
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/about.php 2015-01-21 18:02:19 UTC (rev 12943)
+++ XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/about.php 2015-01-23 13:05:09 UTC (rev 12944)
@@ -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/trunk/modules/mymenus/admin/admin_about.php
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_about.php 2015-01-21 18:02:19 UTC (rev 12943)
+++ XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_about.php 2015-01-23 13:05:09 UTC (rev 12944)
@@ -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/trunk/modules/mymenus/admin/admin_footer.php
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_footer.php 2015-01-21 18:02:19 UTC (rev 12943)
+++ XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_footer.php 2015-01-23 13:05:09 UTC (rev 12944)
@@ -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/trunk/modules/mymenus/admin/admin_header.php
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_header.php 2015-01-21 18:02:19 UTC (rev 12943)
+++ XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_header.php 2015-01-23 13:05:09 UTC (rev 12944)
@@ -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/trunk/modules/mymenus/admin/admin_links.php
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_links.php 2015-01-21 18:02:19 UTC (rev 12943)
+++ XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_links.php 2015-01-23 13:05:09 UTC (rev 12944)
@@ -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/trunk/modules/mymenus/admin/admin_menus.php
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_menus.php 2015-01-21 18:02:19 UTC (rev 12943)
+++ XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/admin_menus.php 2015-01-23 13:05:09 UTC (rev 12944)
@@ -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);
include 'admin_footer.php';
break;
}
/**
- * @param int $start
+ * @param integer $start
+ * @param integer $limit
*
* @return bool|mixed|string
*/
-function mymenus_admin_list($start = 0)
+function mymenus_admin_list($start = 0, $limit)
{
- global $mymenusTpl, $limit;
+ global $mymenusTpl;
$myts =& MyTextSanitizer::getInstance();
+ $limit = (int) $limit;
$this_handler =& xoops_getModuleHandler('menus', 'mymenus');
- $query = isset($_POST['query']) ? $_POST['query'] : null;
+ $query = XoopsRequest::getString('query', null, 'POST');
+// $query = isset($_POST['query']) ? $_POST['query'] : null;
$mymenusTpl->assign('query', $query);
$criteria = new CriteriaCompo();
@@ -98,7 +107,7 @@
if ($count > $limit) {
xoops_load('XoopsPagenav');
$nav = new XoopsPageNav($count, $limit, $start, 'start', 'op=list');
- $mymenusTpl->assign('pag', '<div style="float:left; padding-top:2px;" align="center">' . $nav->renderNav() . '</div>');
+ $mymenusTpl->assign('pag', '<div style="float:left; padding-top:2px; vertical-align: center;">' . $nav->renderNav() . '</div>');
} else {
$mymenusTpl->assign('pag', '');
}
@@ -129,19 +138,19 @@
redirect_header($GLOBALS['mymenus_adminpage'], 1, implode('<br />', $GLOBALS['xoopsSecurity']->getErrors()));
}
- if ($id <= 0) {
+ if ((int) $id <= 0) {
redirect_header($GLOBALS['mymenus_adminpage'], 1);
}
$this_handler =& xoops_getModuleHandler('menus' , 'mymenus');
- $obj = $this_handler->get($id);
+ $obj = $this_handler->get((int) $id);
if (!is_object($obj)) {
redirect_header($GLOBALS['mymenus_adminpage'], 1);
}
if (!$this_handler->delete($obj)) {
xoops_cp_header();
- xoops_error(_AM_MYMENUS_MSG_ERROR, $obj->getVar('id'));
+ xoops_error(_AM_MYMENUS_MSG_DELETE_MENU_ERROR, $obj->getVar('id'));
xoops_cp_footer();
exit();
}
@@ -151,7 +160,7 @@
$this_handler->deleteAll($criteria);
unset($criteria);
- redirect_header(!is_null($redir) ? base64_decode($redir) : $GLOBALS['mymenus_adminpage'] , 2, _AM_MYMENUS_MSG_SUCCESS);
+ redirect_header(!is_null($redir) ? base64_decode($redir) : $GLOBALS['mymenus_adminpage'] , 2, _AM_MYMENUS_MSG_DELETE_MENU_SUCCESS);
}
/**
@@ -163,7 +172,7 @@
redirect_header($GLOBALS['mymenus_adminpage'], 1, implode('<br />', $GLOBALS['xoopsSecurity']->getErrors()));
}
- $this_handler =& xoops_getModuleHandler('menus' , 'mymenus');
+ $this_handler =& xoops_getModuleHandler('menus', 'mymenus');
if (!$this_handler->deleteAll()) {
redirect_header(!is_null($redir) ? base64_decode($redir) : $GLOBALS['mymenus_adminpage'] , 2, _AM_MYMENUS_MSG_ERROR);
@@ -180,8 +189,8 @@
function mymenus_admin_confirmdel($id = null, $redir = null, $op = 'delok')
{
$arr = array();
- $arr['op'] = $op;
- $arr['id'] = $id;
+ $arr['op'] = XoopsFilterInput::clean($op, 'CMD');
+ $arr['id'] = XoopsFilterInput::clean($id, 'INT');
if (!is_null($redir)) {
$arr['redir'] = $redir;
}
@@ -198,12 +207,16 @@
$this_handler =& xoops_getModuleHandler('menus','mymenus');
$obj = $this_handler->create();
- $obj->setVars($_POST);
+ $obj->setVars(array('title' => XoopsRequest::getString('title', '', 'POST'),
+ 'css' => XoopsRequest::getString('css', '', 'POST'))
+ );
+// $obj->setVars($_POST);
+
if (!$this_handler->insert($obj)) {
- $msg = _AM_MYMENUS_MSG_ERROR;
+ $msg = _AM_MYMENUS_MSG_ADD_MENU_ERROR;
} else {
- $msg = _AM_MYMENUS_MSG_SUCCESS;
+ $msg = _AM_MYMENUS_MSG_ADD_MENU_SUCCESS;
}
redirect_header($GLOBALS['mymenus_adminpage'] . '?op=list', 2, $msg);
@@ -218,13 +231,17 @@
redirect_header($GLOBALS['mymenus_adminpage'], 3, implode('<br />', $GLOBALS['xoopsSecurity']->getErrors()));
}
$this_handler =& xoops_getmodulehandler('menus','mymenus');
- $obj = $this_handler->get($id);
- $obj->setVars($_POST);
+ $obj = $this_handler->get((int) $id);
+ $obj->setVars(array('title' => XoopsRequest::getString('title', '', 'POST'),
+ 'css' => XoopsRequest::getString('css', '', 'POST'))
+ );
+// $obj->setVars($_POST);
+
if (!$this_handler->insert($obj)) {
- $msg = _AM_MYMENUS_MSG_ERROR;
+ $msg = _AM_MYMENUS_MSG_EDIT_MENU_ERROR;
} else {
- $msg = _AM_MYMENUS_MSG_SUCCESS;
+ $msg = _AM_MYMENUS_MSG_EDIT_MENU_SUCCESS;
}
redirect_header($GLOBALS['mymenus_adminpage'] . '?op=list', 2, $msg);
@@ -238,13 +255,13 @@
function mymenus_admin_form($id = null)
{
$this_handler =& xoops_getmodulehandler('menus','mymenus');
- $objArray = array();
+// $objArray = array();
if (isset($id)) {
$ftitle = _EDIT;
+ $id = (int) $id;
$obj = $this_handler->get($id);
$objArray = $obj->getValues();
-
} else {
$ftitle = _ADD;
$obj = $this_handler->create();
@@ -254,29 +271,25 @@
$form = new XoopsThemeForm($ftitle, 'admin_form', $GLOBALS['mymenus_adminpage'], "post", true);
$form->addElement(new XoopsFormText(_AM_MYMENUS_MENU_TITLE, 'title', 50, 255, $objArray['title']), true);
//
- $form->addElement(new XoopsFormText(_AM_MYMENUS_MENU_CSS, 'css', 50, 255, $objArray['css']),false);
+ $form->addElement(new XoopsFormText(_AM_MYMENUS_MENU_CSS, 'css', 50, 255, $objArray['css']), false);
//
- $tray = new XoopsFormElementTray('' ,'');
+ $tray = new XoopsFormElementTray('', '');
$tray->addElement(new XoopsFormButton('', 'submit_button', _SUBMIT, 'submit'));
$btn = new XoopsFormButton('', 'reset', _CANCEL, 'button');
if (isset($id)) {
+ $form->addElement(new XoopsFormHidden('op', 'editok'));
+ $form->addElement(new XoopsFormHidden('id', $id));
$btn->setExtra('onclick="document.location.href=\'' . $GLOBALS['mymenus_adminpage'] . '?op=list\'"');
} else {
+ $form->addElement(new XoopsFormHidden('op', 'add'));
$btn->setExtra('onclick="document.getElementById(\'addform\').style.display = \'none\'; return false;"');
}
$tray->addElement($btn);
$form->addElement($tray);
- if (isset($id)) {
- $form->addElement(new XoopsFormHidden('op', 'editok'));
- $form->addElement(new XoopsFormHidden('id', $id));
- } else {
- $form->addElement(new XoopsFormHidden('op', 'add'));
- }
-
return $form->render();
}
Modified: XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/index.php
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/index.php 2015-01-21 18:02:19 UTC (rev 12943)
+++ XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/index.php 2015-01-23 13:05:09 UTC (rev 12944)
@@ -18,12 +18,12 @@
* @version $Id$
*/
-//require_once dirname(dirname(dirname(dirname(__FILE__)))) . '/include/cp_header.php';
-include_once dirname(__FILE__) . '/admin_header.php';
+//require_once dirname(dirname(dirname(__DIR__))) . '/include/cp_header.php';
+include_once __DIR__ . '/admin_header.php';
- xoops_cp_header();
+xoops_cp_header();
- echo $indexAdmin->addNavigation('index.php');
- echo $indexAdmin->renderIndex();
+echo $indexAdmin->addNavigation('index.php');
+echo $indexAdmin->renderIndex();
- include 'admin_footer.php';
+include __DIR__ . '/admin_footer.php';
Modified: XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/menu.php
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/menu.php 2015-01-21 18:02:19 UTC (rev 12943)
+++ XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/admin/menu.php 2015-01-23 13:05:09 UTC (rev 12944)
@@ -18,32 +18,30 @@
* @version $Id$
*/
-defined("XOOPS_ROOT_PATH") or die("XOOPS root path not defined");
+defined("XOOPS_ROOT_PATH") || exit("Restricted access");
-$dirname = basename(dirname(dirname(__FILE__)));
+$dirname = basename(dirname(__DIR__));
$module_handler = xoops_gethandler('module');
-$module = $module_handler->getByDirname($dirname);
-$pathIcon32 = $module->getInfo('icons32');
+$module = $module_handler->getByDirname($dirname);
+$pathIcon32 = $module->getInfo('icons32');
xoops_loadLanguage('admin', $dirname);
-$i = 0;
-++$i;
-$adminmenu[$i]["title"] = _MI_MYMENUS_ADMMENU0;
-$adminmenu[$i]["link"] = 'admin/index.php';
-$adminmenu[$i]["icon"] = $pathIcon32.'/home.png';
-++$i;
-$adminmenu[$i]['title'] = _MI_MYMENUS_MENUSMANAGER;
-$adminmenu[$i]['link'] = "admin/admin_menus.php";
-$adminmenu[$i]["icon"] = $pathIcon32.'/manage.png';
-++$i;
-$adminmenu[$i]['title'] = _MI_MYMENUS_MENUMANAGER;
-$adminmenu[$i]['link'] = "admin/admin_links.php";
-$adminmenu[$i]["icon"] = $pathIcon32.'/insert_table_row.png';
-++$i;
-$adminmenu[$i]['title'] = _MI_MYMENUS_ABOUT;
-$adminmenu[$i]['link'] = "admin/about.php";
-$adminmenu[$i]["icon"] = $pathIcon32.'/about.png';
+$adminmenu = array(array('title' => _MI_MYMENUS_ADMMENU0,
+ 'link' => 'admin/index.php',
+ 'icon' => "{$pathIcon32}/home.png"),
+ array('title' => _MI_MYMENUS_MENUSMANAGER,
+ 'link' => "admin/admin_menus.php",
+ 'icon' => "{$pathIcon32}/manage.png"),
+
+ array('title' => _MI_MYMENUS_MENUMANAGER,
+ 'link' => "admin/admin_links.php",
+ 'icon' => "{$pathIcon32}/insert_table_row.png"),
+
+ array('title' => _MI_MYMENUS_ABOUT,
+ 'link' => "admin/about.php",
+ 'icon' => "{$pathIcon32}/about.png")
+);
+
//$mymenus_adminmenu = $adminmenu;
-unset($i);
Modified: XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/assets/css/admin.css
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/assets/css/admin.css 2015-01-21 18:02:19 UTC (rev 12943)
+++ XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/assets/css/admin.css 2015-01-23 13:05:09 UTC (rev 12944)
@@ -1,115 +1,115 @@
/* Sortable link list*/
.mjs-nestedSortable-error {
- background: #fbe3e4;
- border-color: transparent;
+ background: #fbe3e4;
+ border-color: transparent;
}
- ol {
- margin: 0;
+ ol {
+ margin: 0;
padding: 0 0 0 30px;
}
- ol.sortable, ol.sortable ol {
- margin: 0 0 0 25px;
- padding: 0;
- list-style-type: none;
- }
+ ol.sortable, ol.sortable ol {
+ margin: 0 0 0 25px;
+ padding: 0;
+ list-style-type: none;
+ }
- ol.sortable {
- margin: 2em 0 4em 0;
- }
+ ol.sortable {
+ margin: 2em 0 4em 0;
+ }
- .sortable li {
- margin: 5px 0 0 0;
- padding: 0;
- list-style: none;
- }
+ .sortable li {
+ margin: 5px 0 0 0;
+ padding: 0;
+ list-style: none;
+ }
- .sortable li div {
- border: 1px solid #d4d4d4;
- -webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- border-radius: 3px;
- border-color: #D4D4D4 #D4D4D4 #BCBCBC;
- padding: 6px;
- line-height: 16px;
- margin: 0;
- cursor: move;
- background: #f6f6f6;
- background: -moz-linear-gradient(top, #ffffff 0%, #f6f6f6 47%, #ededed 100%);
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(47%,#f6f6f6), color-stop(100%,#ededed));
- background: -webkit-linear-gradient(top, #ffffff 0%,#f6f6f6 47%,#ededed 100%);
- background: -o-linear-gradient(top, #ffffff 0%,#f6f6f6 47%,#ededed 100%);
- background: -ms-linear-gradient(top, #ffffff 0%,#f6f6f6 47%,#ededed 100%);
- background: linear-gradient(to bottom, #ffffff 0%,#f6f6f6 47%,#ededed 100%);
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ededed',GradientType=0 );
- }
+ .sortable li div {
+ border: 1px solid #d4d4d4;
+ -webkit-border-radius: 3px;
+ -moz-border-radius: 3px;
+ border-radius: 3px;
+ border-color: #D4D4D4 #D4D4D4 #BCBCBC;
+ padding: 6px;
+ line-height: 16px;
+ margin: 0;
+ cursor: move;
+ background: #f6f6f6;
+ background: -moz-linear-gradient(top, #ffffff 0%, #f6f6f6 47%, #ededed 100%);
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(47%,#f6f6f6), color-stop(100%,#ededed));
+ background: -webkit-linear-gradient(top, #ffffff 0%,#f6f6f6 47%,#ededed 100%);
+ background: -o-linear-gradient(top, #ffffff 0%,#f6f6f6 47%,#ededed 100%);
+ background: -ms-linear-gradient(top, #ffffff 0%,#f6f6f6 47%,#ededed 100%);
+ background: linear-gradient(to bottom, #ffffff 0%,#f6f6f6 47%,#ededed 100%);
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ededed',GradientType=0 );
+ }
- .sortable li.mjs-nestedSortable-branch div {
- background: -moz-linear-gradient(top, #ffffff 0%, #f6f6f6 47%, #f0ece9 100%);
- background: -webkit-linear-gradient(top, #ffffff 0%,#f6f6f6 47%,#f0ece9 100%);
+ .sortable li.mjs-nestedSortable-branch div {
+ background: -moz-linear-gradient(top, #ffffff 0%, #f6f6f6 47%, #f0ece9 100%);
+ background: -webkit-linear-gradient(top, #ffffff 0%,#f6f6f6 47%,#f0ece9 100%);
- }
+ }
- .sortable li.mjs-nestedSortable-leaf div {
- background: -moz-linear-gradient(top, #ffffff 0%, #f6f6f6 47%, #bcccbc 100%);
- background: -webkit-linear-gradient(top, #ffffff 0%,#f6f6f6 47%,#bcccbc 100%);
+ .sortable li.mjs-nestedSortable-leaf div {
+ background: -moz-linear-gradient(top, #ffffff 0%, #f6f6f6 47%, #bcccbc 100%);
+ background: -webkit-linear-gradient(top, #ffffff 0%,#f6f6f6 47%,#bcccbc 100%);
- }
+ }
- li.mjs-nestedSortable-collapsed.mjs-nestedSortable-hovering div {
- border-color: #999;
- background: #fafafa;
- }
+ li.mjs-nestedSortable-collapsed.mjs-nestedSortable-hovering div {
+ border-color: #999;
+ background: #fafafa;
+ }
- .disclose {
- cursor: pointer;
- width: 10px;
- display: none;
- }
+ .disclose {
+ cursor: pointer;
+ width: 10px;
+ display: none;
+ }
- .sortable li.mjs-nestedSortable-collapsed > ol {
- display: none;
- }
+ .sortable li.mjs-nestedSortable-collapsed > ol {
+ display: none;
+ }
- .sortable li.mjs-nestedSortable-branch > div > .disclose {
- display: inline-block;
- }
+ .sortable li.mjs-nestedSortable-branch > div > .disclose {
+ display: inline-block;
+ }
- .sortable li.mjs-nestedSortable-collapsed > div > .disclose > span:before {
- content: '+ ';
- }
+ .sortable li.mjs-nestedSortable-collapsed > div > .disclose > span:before {
+ content: '+ ';
+ }
- .sortable li.mjs-nestedSortable-expanded > div > .disclose > span:before {
- content: '- ';
- }
+ .sortable li.mjs-nestedSortable-expanded > div > .disclose > span:before {
+ content: '- ';
+ }
- .ui-state-highlight{height: 2.2em; line-height: 1.7em}
- .ui-state-hover, button:hover{padding: 0;}
- .ui-xbutton, button:hover .ui-xbutton{
- border: 1px solid #D3D3D3;
- color: #555555;
- font-weight: normal;
- padding: 5px !important;
- margin-right: 0 !important;
+ .ui-state-highlight{height: 2.2em; line-height: 1.7em}
+ .ui-state-hover, button:hover{padding: 0;}
+ .ui-xbutton, button:hover .ui-xbutton{
+ border: 1px solid #D3D3D3;
+ color: #555555;
+ font-weight: normal;
+ padding: 5px !important;
+ margin-right: 0 !important;
}
- li.ui-state-default {list-style:none outside none !important;}
- li.ui-state-default > div{overflow: hidden;}
- #changemenu{float:right;}
- .select-options{
+ li.ui-state-default {list-style:none outside none !important;}
+ li.ui-state-default > div{overflow: hidden;}
+ #changemenu{float:right;}
+ .select-options{
background: #FFFFFF none;
border: 1px solid #D3D3D3 !important;
- border-radius: 4px;
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
- color: #555555;
- font-size: 12px;
- height: 30px;
- line-height: 1.42857;
- padding: 6px 12px;
- transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
- vertical-align: middle;
- display: block;
- margin-bottom: 3px;
- }
+ border-radius: 4px;
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
+ color: #555555;
+ font-size: 12px;
+ height: 30px;
+ line-height: 1.42857;
+ padding: 6px 12px;
+ transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
+ vertical-align: middle;
+ display: block;
+ margin-bottom: 3px;
+ }
-.discrete{color: #9D9D9D; text-align:right;}
+.discrete{color: #9D9D9D; text-align: right;}
Modified: XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/assets/js/hoverIntent.js
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/assets/js/hoverIntent.js 2015-01-21 18:02:19 UTC (rev 12943)
+++ XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/assets/js/hoverIntent.js 2015-01-23 13:05:09 UTC (rev 12944)
@@ -1,84 +1,115 @@
-(function($){
- /* hoverIntent by Brian Cherne */
- $.fn.hoverIntent = function(f,g) {
- // default configuration options
- var cfg = {
- sensitivity: 7,
- interval: 100,
- timeout: 0
- };
- // override configuration options with user supplied object
- cfg = $.extend(cfg, g ? { over: f, out: g } : f );
+/*!
+ * hoverIntent v1.8.1 // 2014.08.11 // jQuery v1.9.1+
+ * http://cherne.net/brian/resources/jquery.hoverIntent.html
+ *
+ * You may use hoverIntent under the terms of the MIT license. Basically that
+ * means you are free to use hoverIntent as long as this header is left intact.
+ * Copyright 2007, 2014 Brian Cherne
+ */
- // instantiate variables
- // cX, cY = current X and Y position of mouse, updated by mousemove event
- // pX, pY = previous X and Y position of mouse, set by mouseover and polling interval
- var cX, cY, pX, pY;
+/* hoverIntent is similar to jQuery's built-in "hover" method except that
+ * instead of firing the handlerIn function immediately, hoverIntent checks
+ * to see if the user's mouse has slowed down (beneath the sensitivity
+ * threshold) before firing the event. The handlerOut function is only
+ * called after a matching handlerIn.
+ *
+ * // basic usage ... just like .hover()
+ * .hoverIntent( handlerIn, handlerOut )
+ * .hoverIntent( handlerInOut )
+ *
+ * // basic usage ... with event delegation!
+ * .hoverIntent( handlerIn, handlerOut, selector )
+ * .hoverIntent( handlerInOut, selector )
+ *
+ * // using a basic configuration object
+ * .hoverIntent( config )
+ *
+ * @param handlerIn function OR configuration object
+ * @param handlerOut function OR selector for delegation OR undefined
+ * @param selector selector OR undefined
+ * @author Brian Cherne <brian(at)cherne(dot)net>
+ */
+(function($) {
+ $.fn.hoverIntent = function(handlerIn,handlerOut,selector) {
- // A private function for getting mouse position
- var track = function(ev) {
- cX = ev.pageX;
- cY = ev.pageY;
- };
+ // default configuration values
+ var cfg = {
+ interval: 100,
+ sensitivity: 6,
+ timeout: 0
+ };
- // A private function for comparing current and previous mouse position
- var compare = function(ev,ob) {
- ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);
- // compare mouse positions to see if they've crossed the threshold
- if ( ( Math.abs(pX-cX) + Math.abs(pY-cY) ) < cfg.sensitivity ) {
- $(ob).unbind("mousemove",track);
- // set hoverIntent state to true (so mouseOut can be called)
- ob.hoverIntent_s = 1;
- return cfg.over.apply(ob,[ev]);
- } else {
- // set previous coordinates for next time
- pX = cX; pY = cY;
- // use self-calling timeout, guarantees intervals are spaced out properly (avoids JavaScript timer bugs)
- ob.hoverIntent_t = setTimeout( function(){compare(ev, ob);} , cfg.interval );
- }
- };
+ if ( typeof handlerIn === "object" ) {
+ cfg = $.extend(cfg, handlerIn );
+ } else if ($.isFunction(handlerOut)) {
+ cfg = $.extend(cfg, { over: handlerIn, out: handlerOut, selector: selector } );
+ } else {
+ cfg = $.extend(cfg, { over: handlerIn, out: handlerIn, selector: handlerOut } );
+ }
- // A private function for delaying the mouseOut function
- var delay = function(ev,ob) {
- ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);
- ob.hoverIntent_s = 0;
- return cfg.out.apply(ob,[ev]);
- };
+ // instantiate variables
+ // cX, cY = current X and Y position of mouse, updated by mousemove event
+ // pX, pY = previous X and Y position of mouse, set by mouseover and polling interval
+ var cX, cY, pX, pY;
- // A private function for handling mouse 'hovering'
- var handleHover = function(e) {
- // next three lines copied from jQuery.hover, ignore children onMouseOver/onMouseOut
- var p = (e.type == "mouseover" ? e.fromElement : e.toElement) || e.relatedTarget;
- while ( p && p != this ) { try { p = p.parentNode; } catch(e) { p = this; } }
- if ( p == this ) { return false; }
+ // A private function for getting mouse position
+ var track = function(ev) {
+ cX = ev.pageX;
+ cY = ev.pageY;
+ };
- // copy objects to be passed into t (required for event object to be passed in IE)
- var ev = jQuery.extend({},e);
- var ob = this;
+ // A private function for comparing current and previous mouse position
+ var compare = function(ev,ob) {
+ ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);
+ // compare mouse positions to see if they've crossed the threshold
+ if ( Math.sqrt( (pX-cX)*(pX-cX) + (pY-cY)*(pY-cY) ) < cfg.sensitivity ) {
+ $(ob).off("mousemove.hoverIntent",track);
+ // set hoverIntent state to true (so mouseOut can be called)
+ ob.hoverIntent_s = true;
+ return cfg.over.apply(ob,[ev]);
+ } else {
+ // set previous coordinates for next time
+ pX = cX; pY = cY;
+ // use self-calling timeout, guarantees intervals are spaced out properly (avoids JavaScript timer bugs)
+ ob.hoverIntent_t = setTimeout( function(){compare(ev, ob);} , cfg.interval );
+ }
+ };
- // cancel hoverIntent timer if it exists
- if (ob.hoverIntent_t) { ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); }
+ // A private function for delaying the mouseOut function
+ var delay = function(ev,ob) {
+ ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);
+ ob.hoverIntent_s = false;
+ return cfg.out.apply(ob,[ev]);
+ };
- // else e.type == "onmouseover"
- if (e.type == "mouseover") {
- // set "previous" X and Y position based on initial entry point
- pX = ev.pageX; pY = ev.pageY;
- // update "current" X and Y position based on mousemove
- $(ob).bind("mousemove",track);
- // start polling interval (self-calling timeout) to compare mouse coordinates over time
- if (ob.hoverIntent_s != 1) { ob.hoverIntent_t = setTimeout( function(){compare(ev,ob);} , cfg.interval );}
+ // A private function for handling mouse 'hovering'
+ var handleHover = function(e) {
+ // copy objects to be passed into t (required for event object to be passed in IE)
+ var ev = $.extend({},e);
+ var ob = this;
- // else e.type == "onmouseout"
- } else {
- // unbind expensive mousemove event
- $(ob).unbind("mousemove",track);
- // if hoverIntent state is true, then call the mouseOut function after the specified delay
- if (ob.hoverIntent_s == 1) { ob.hoverIntent_t = setTimeout( function(){delay(ev,ob);} , cfg.timeout );}
- }
- };
+ // cancel hoverIntent timer if it exists
+ if (ob.hoverIntent_t) { ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); }
- // bind the function to the two event listeners
- return this.mouseover(handleHover).mouseout(handleHover);
- };
-
-})(jQuery);
\ No newline at end of file
+ // if e.type === "mouseenter"
+ if (e.type === "mouseenter") {
+ // set "previous" X and Y position based on initial entry point
+ pX = ev.pageX; pY = ev.pageY;
+ // update "current" X and Y position based on mousemove
+ $(ob).on("mousemove.hoverIntent",track);
+ // start polling interval (self-calling timeout) to compare mouse coordinates over time
+ if (!ob.hoverIntent_s) { ob.hoverIntent_t = setTimeout( function(){compare(ev,ob);} , cfg.interval );}
+
+ // else e.type == "mouseleave"
+ } else {
+ // unbind expensive mousemove event
+ $(ob).off("mousemove.hoverIntent",track);
+ // if hoverIntent state is true, then call the mouseOut function after the specified delay
+ if (ob.hoverIntent_s) { ob.hoverIntent_t = setTimeout( function(){delay(ev,ob);} , cfg.timeout );}
+ }
+ };
+
+ // listen for mouseenter and mouseleave
+ return this.on({'mouseenter.hoverIntent':handleHover,'mouseleave.hoverIntent':handleHover}, cfg.selector);
+ };
+})(jQuery);
Added: XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/assets/js/jquery-1.11.2.min.js
===================================================================
--- XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/assets/js/jquery-1.11.2.min.js (rev 0)
+++ XoopsModules/modulepacks/x257basicmodulepack/trunk/modules/mymenus/assets/js/jquery-1.11.2.min.js 2015-01-23 13:05:09 UTC (rev 12944)
@@ -0,0 +1,4 @@
+/*! jQuery v1.11.2 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license */
+!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=c.slice,e=c.concat,f=c.push,g=c.indexOf,h={},i=h.toString,j=h.hasOwnProperty,k={},l="1.11.2",m=function(a,b){return new m.fn.init(a,b)},n=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,o=/^-ms-/,p=/-([\da-z])/gi,q=function(a,b){return b.toUpperCase()};m.fn=m.prototype={jquery:l,constructor:m,selector:"",length:0,toArray:function(){return d.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:d.call(this)},pushStack:function(a){var b=m.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a,b){return m.each(this,a,b)},map:function(a){return this.pushStack(m.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(d.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:c.sort,splice:c.splice},m.extend=m.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||m.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(e=arguments[h]))for(d in e)a=g[d],c=e[d],g!==c&&(j&&c&&(m.isPlainObject(c)||(b=m.isArray(c)))?(b?(b=!1,f=a&&m.isArray(a)?a:[]):f=a&&m.isPlainObject(a)?a:{},g[d]=m.extend(j,f,c)):void 0!==c&&(g[d]=c));return g},m.extend({expando:"jQuery"+(l+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===m.type(a)},isArray:Array.isArray||function(a){return"array"===m.type(a)},isWindow:function(a){return null!=a&&a==a.window},isNumeric:function(a){return!m.isArray(a)&&a-parseFloat(a)+1>=0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},isPlainObject:function(a){var b;if(!a||"object"!==m.type(a)||a.nodeType||m.isWindow(a))return!1;try{if(a.constructor&&!j.call(a,"constructor")&&!j.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}if(k.ownLast)for(b in a)return j.call(a,b);for(b in a);return void 0===b||j.call(a,b)},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?h[i.call(a)]||"object":typeof a},globalEval:function(b){b&&m.trim(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(o,"ms-").replace(p,q)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,c){var d,e=0,f=a.length,g=r(a);if(c){if(g){for(;f>e;e++)if(d=b.apply(a[e],c),d===!1)break}else for(e in a)if(d=b.apply(a[e],c),d===!1)break}else if(g){for(;f>e;e++)if(d=b.call(a[e],e,a[e]),d===!1)break}else for(e in a)if(d=b.call(a[e],e,a[e]),d===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(n,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(r(Object(a))?m.merge(c,"string"==typeof a?[a]:a):f.call(c,a)),c},inArray:function(a,b,c){var d;if(b){if(g)return g.call(b,a,c);for(d=b.length,c=c?0>c?Math.max(0,d+c):c:0;d>c;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,b){var c=+b.length,d=0,e=a.length;while(c>d)a[e++]=b[d++];if(c!==c)while(void 0!==b[d])a[e++]=b[d++];return a.lengt...
[truncated message content] |