View of /mambo/branches/4.6/administrator/components/com_menus/wrapper/wrapper.class.php
Parent Directory
|
Revision Log
Revision 1756 -
(download)
(annotate)
Thu May 28 06:41:09 2009 UTC (4 years ago) by elpie
File size: 3458 byte(s)
Thu May 28 06:41:09 2009 UTC (4 years ago) by elpie
File size: 3458 byte(s)
! Added back copyright date & note (which should not be needed, but which is) that copyright notices must be retained.
<?php
/**
* @package Mambo
* @subpackage Menus
* @author Mambo Foundation Inc see README.php
* @copyright (C) 2000 - 2009 Mambo Foundation Inc.
* See COPYRIGHT.php for copyright notices and details.
* @license GNU/GPL Version 2, see LICENSE.php
*
* Redistributions of files must retain the above copyright notice.
*
* Mambo 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; version 2 of the License.
*/
/** ensure this file is being included by a parent file */
defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );
/**
* Wrapper class
*/
class wrapper_menu {
function edit( &$uid, $menutype, $option ) {
global $database, $my, $mainframe;
global $mosConfig_absolute_path;
$menu = new mosMenu( $database );
$menu->load( $uid );
// fail if checked out not by 'me'
if ($menu->checked_out && $menu->checked_out <> $my->id) {
echo "<script>alert('".sprintf(T_('The module % is currently being edited by another administrator'), $menu->title)."'); document.location.href='index2.php?option=$option'</script>\n";
exit(0);
}
if ( $uid ) {
$menu->checkout( $my->id );
} else {
$menu->type = 'wrapper';
$menu->menutype = $menutype;
$menu->ordering = 9999;
$menu->parent = intval( mosGetParam( $_POST, 'parent', 0 ) );
$menu->published = 1;
$menu->link = 'index.php?option=com_wrapper';
}
// build the html select list for ordering
$lists['ordering'] = mosAdminMenus::Ordering( $menu, $uid );
// build the html select list for the group access
$lists['access'] = mosAdminMenus::Access( $menu );
// build the html select list for paraent item
$lists['parent'] = mosAdminMenus::Parent( $menu );
// build published button option
$lists['published'] = mosAdminMenus::Published( $menu );
// build the url link output
$lists['link'] = mosAdminMenus::Link( $menu, $uid );
// get params definitions
$params =& new mosAdminParameters( $menu->params, $mainframe->getPath( 'menu_xml', $menu->type ), 'menu' );
if ( $uid ) {
$menu->url = $params->def( 'url', '' );
}
wrapper_menu_html::edit( $menu, $lists, $params, $option );
}
function saveMenu( $option, $task ) {
global $database;
$params = mosGetParam( $_POST, 'params', '' );
$params[url] = mosGetParam( $_POST, 'url', '' );
if (is_array( $params )) {
$txt = array();
foreach ($params as $k=>$v) {
$txt[] = "$k=$v";
}
$_POST['params'] = mosParameters::textareaHandling( $txt );
}
$row = new mosMenu( $database );
if (!$row->bind( $_POST )) {
echo "<script> alert('".$row->getError()."'); window.history.go(-1); </script>\n";
exit();
}
if (!$row->check()) {
echo "<script> alert('".$row->getError()."'); window.history.go(-1); </script>\n";
exit();
}
if (!$row->store()) {
echo "<script> alert('".$row->getError()."'); window.history.go(-1); </script>\n";
exit();
}
$row->checkin();
$row->updateOrder( "menutype='$row->menutype' AND parent='$row->parent'" );
$msg = 'Menu item Saved';
switch ( $task ) {
case 'apply':
mosRedirect( 'index2.php?option='. $option .'&menutype='. $row->menutype .'&task=edit&id='. $row->id, $msg );
break;
case 'save':
default:
mosRedirect( 'index2.php?option='. $option .'&menutype='. $row->menutype, $msg );
break;
}
}
}
?>
| ViewVC Help | |
| Powered by ViewVC 1.0.0 |

