From: <vo...@us...> - 2012-08-29 05:12:06
|
Revision: 10126 http://xoops.svn.sourceforge.net/xoops/?rev=10126&view=rev Author: voltan1 Date: 2012-08-29 05:11:55 +0000 (Wed, 29 Aug 2012) Log Message: ----------- Add slideshow module Added Paths: ----------- XoopsModules/slideshow/trunk/ XoopsModules/slideshow/trunk/admin/ XoopsModules/slideshow/trunk/admin/backend.php XoopsModules/slideshow/trunk/admin/header.php XoopsModules/slideshow/trunk/admin/index.html XoopsModules/slideshow/trunk/admin/index.php XoopsModules/slideshow/trunk/admin/marquee.php XoopsModules/slideshow/trunk/admin/menu.php XoopsModules/slideshow/trunk/admin/slideshow.php XoopsModules/slideshow/trunk/admin/topic.php XoopsModules/slideshow/trunk/blocks/ XoopsModules/slideshow/trunk/blocks/index.html XoopsModules/slideshow/trunk/blocks/slideshow.php XoopsModules/slideshow/trunk/class/ XoopsModules/slideshow/trunk/class/index.html XoopsModules/slideshow/trunk/class/item.php XoopsModules/slideshow/trunk/class/topic.php XoopsModules/slideshow/trunk/css/ XoopsModules/slideshow/trunk/css/index.html XoopsModules/slideshow/trunk/css/marquee/ XoopsModules/slideshow/trunk/css/marquee/index.html XoopsModules/slideshow/trunk/css/marquee/marquee.css XoopsModules/slideshow/trunk/css/slideshow/ XoopsModules/slideshow/trunk/css/slideshow/index.html XoopsModules/slideshow/trunk/css/slideshow/scrollable.css XoopsModules/slideshow/trunk/css/slideshow/sliderkit-core.css XoopsModules/slideshow/trunk/css/slideshow/sliderkit-demos.css XoopsModules/slideshow/trunk/images/ XoopsModules/slideshow/trunk/images/cancel.png XoopsModules/slideshow/trunk/images/home.png XoopsModules/slideshow/trunk/images/index.html XoopsModules/slideshow/trunk/images/item.png XoopsModules/slideshow/trunk/images/logo.png XoopsModules/slideshow/trunk/images/ok.png XoopsModules/slideshow/trunk/images/puce.png XoopsModules/slideshow/trunk/images/topic.png XoopsModules/slideshow/trunk/include/ XoopsModules/slideshow/trunk/include/functions.php XoopsModules/slideshow/trunk/include/index.html XoopsModules/slideshow/trunk/include/install.php XoopsModules/slideshow/trunk/include/update.php XoopsModules/slideshow/trunk/index.php XoopsModules/slideshow/trunk/js/ XoopsModules/slideshow/trunk/js/admin.js XoopsModules/slideshow/trunk/js/index.html XoopsModules/slideshow/trunk/js/marquee/ XoopsModules/slideshow/trunk/js/marquee/index.html XoopsModules/slideshow/trunk/js/marquee/marquee.js XoopsModules/slideshow/trunk/js/marquee/setting.js XoopsModules/slideshow/trunk/js/order.js XoopsModules/slideshow/trunk/js/slideshow/ XoopsModules/slideshow/trunk/js/slideshow/index.html XoopsModules/slideshow/trunk/js/slideshow/scrollable.js XoopsModules/slideshow/trunk/js/slideshow/setting.js XoopsModules/slideshow/trunk/js/slideshow/sliderkit.min.js XoopsModules/slideshow/trunk/js/slideshow/sliderkitsetting.js XoopsModules/slideshow/trunk/language/ XoopsModules/slideshow/trunk/language/english/ XoopsModules/slideshow/trunk/language/english/admin.php XoopsModules/slideshow/trunk/language/english/blocks.php XoopsModules/slideshow/trunk/language/english/index.html XoopsModules/slideshow/trunk/language/english/main.php XoopsModules/slideshow/trunk/language/english/modinfo.php XoopsModules/slideshow/trunk/language/index.html XoopsModules/slideshow/trunk/language/persian/ XoopsModules/slideshow/trunk/language/persian/admin.php XoopsModules/slideshow/trunk/language/persian/blocks.php XoopsModules/slideshow/trunk/language/persian/index.html XoopsModules/slideshow/trunk/language/persian/main.php XoopsModules/slideshow/trunk/language/persian/modinfo.php XoopsModules/slideshow/trunk/sql/ XoopsModules/slideshow/trunk/sql/index.html XoopsModules/slideshow/trunk/sql/mysql.sql XoopsModules/slideshow/trunk/templates/ XoopsModules/slideshow/trunk/templates/admin/ XoopsModules/slideshow/trunk/templates/admin/index.html XoopsModules/slideshow/trunk/templates/admin/slideshow_header.html XoopsModules/slideshow/trunk/templates/admin/slideshow_index.html XoopsModules/slideshow/trunk/templates/admin/slideshow_marquee.html XoopsModules/slideshow/trunk/templates/admin/slideshow_slideshow.html XoopsModules/slideshow/trunk/templates/admin/slideshow_topic.html XoopsModules/slideshow/trunk/templates/blocks/ XoopsModules/slideshow/trunk/templates/blocks/index.html XoopsModules/slideshow/trunk/templates/blocks/slideshow_item1.html XoopsModules/slideshow/trunk/templates/blocks/slideshow_item2.html XoopsModules/slideshow/trunk/templates/blocks/slideshow_item3.html XoopsModules/slideshow/trunk/templates/index.html XoopsModules/slideshow/trunk/xoops_version.php Added: XoopsModules/slideshow/trunk/admin/backend.php =================================================================== --- XoopsModules/slideshow/trunk/admin/backend.php (rev 0) +++ XoopsModules/slideshow/trunk/admin/backend.php 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1,183 @@ +<?php +/** + * XOOPS slideshow module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program 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. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license GNU GPL 2 (http://www.gnu.org/licenses/old-licenses/gpl-2.0.html) + * @package module + * @since 2.5.0 + * @author Mohtava Project <http://www.mohtava.com> + * @author Hossein Azizabadi <djv...@gm...> + * @version $Id: $ + */ + +require 'header.php'; + +$op = slideshow_CleanVars ( $_REQUEST, 'op', 'new', 'string' ); +// Admin header +xoops_cp_header (); +// Redirect to content page +if (! isset ( $_REQUEST )) { + + redirect_header("index.php", 3, _AM_SLIDESHOW_MSG_NOTINFO); + // Include footer + xoops_cp_footer (); + exit (); +} + +switch ($op) { + case 'addtopic' : + $obj = $topic_handler->create (); + $obj->setVars ( $_REQUEST ); + $obj->setVar ( 'topic_created', time () ); + + if (! $topic_handler->insert ( $obj )) { + redirect_header ( 'onclick="javascript:history.go(-1);"', 1, _AM_SLIDESHOW_MSG_ERROR ); + xoops_cp_footer (); + exit (); + } + + // Redirect page + redirect_header ( 'topic.php', 1, _AM_SLIDESHOW_MSG_WAIT ); + xoops_cp_footer (); + exit (); + break; + + case 'edittopic' : + $topic_id = slideshow_CleanVars ( $_REQUEST, 'topic_id', 0, 'int' ); + if ($topic_id > 0) { + $obj = $topic_handler->get ( $topic_id ); + $obj->setVars ( $_POST ); + + if (! $topic_handler->insert ( $obj )) { + redirect_header ( 'onclick="javascript:history.go(-1);"', 1, _AM_SLIDESHOW_MSG_ERROR ); + xoops_cp_footer (); + exit (); + } + } + + // Redirect page + redirect_header ( 'topic.php', 1, _AM_SLIDESHOW_MSG_WAIT ); + xoops_cp_footer (); + exit (); + break; + + case 'deletetopic' : + $topic_id = slideshow_CleanVars ( $_REQUEST, 'topic_id', 0, 'int' ); + $obj = $topic_handler->get ( $topic_id ); + if (! $topic_handler->delete ( $obj )) { + echo $obj->getHtmlErrors (); + } + + // Redirect page + redirect_header ( 'topic.php', 1, _AM_SLIDESHOW_MSG_WAIT ); + xoops_cp_footer (); + exit (); + break; + + case 'additem' : + $obj = $item_handler->create (); + $obj->setVars ( $_REQUEST ); + $obj->setVar ( 'item_create', time () ); + $obj->setVar ( 'item_order', $item_handler->setitemorder() ); + $item_handler->uploadimg ( $obj, $_REQUEST ['item_img'] ); + $item_handler->uploadthumb ( $obj, $_REQUEST ['item_thumb'] ); + + if($_REQUEST['item_default'] == 1) { + $item_handler->updateAll ( 'item_default', 0, $obj ); + } + + if (! $item_handler->insert ( $obj )) { + redirect_header ( 'onclick="javascript:history.go(-1);"', 1, _AM_SLIDESHOW_MSG_ERROR ); + xoops_cp_footer (); + exit (); + } + + // Redirect page + redirect_header ( 'index.php', 1, _AM_SLIDESHOW_MSG_WAIT ); + xoops_cp_footer (); + exit (); + break; + + case 'edititem' : + $item_id = slideshow_CleanVars ( $_REQUEST, 'item_id', 0, 'int' ); + if ($item_id > 0) { + $obj = $item_handler->get ($item_id); + $obj->setVars ( $_REQUEST ); + + $obj->setVar ( 'item_order', $item_handler->setitemorder() ); + $item_handler->uploadimg ( $obj, $_REQUEST ['item_img'] ); + + if($_REQUEST['item_default'] == 1) { + $item_handler->updateAll ( 'item_default', 0, $obj ); + } + + if (! $item_handler->insert ( $obj )) { + redirect_header ( 'onclick="javascript:history.go(-1);"', 1, _AM_SLIDESHOW_MSG_ERROR ); + xoops_cp_footer (); + exit (); + } + } + // Redirect page + redirect_header ( 'index.php', 1, _AM_SLIDESHOW_MSG_WAIT ); + xoops_cp_footer (); + exit (); + break; + + case 'deleteitem' : + $item_id = slideshow_CleanVars ( $_REQUEST, 'item_id', 0, 'int' ); + $obj = $item_handler->get ( $item_id ); + unlink(XOOPS_URL . '/uploads/slideshow/image/' .$obj->getVar ( 'item_img')); + unlink(XOOPS_URL . '/uploads/slideshow/thumb/' .$obj->getVar ( 'item_thumb')); + if (! $item_handler->delete ( $obj )) { + echo $obj->getHtmlErrors (); + } + // Redirect page + redirect_header ( 'index.php', 1, _AM_SLIDESHOW_MSG_WAIT ); + xoops_cp_footer (); + exit (); + break; + + case 'item_status' : + $item_id = slideshow_CleanVars ( $_REQUEST, 'item_id', 0, 'int' ); + if ($item_id > 0) { + $obj = & $item_handler->get ( $item_id ); + $old = $obj->getVar ( 'item_status' ); + $obj->setVar ( 'item_status', ! $old ); + if ($item_handler->insert ( $obj )) { + exit (); + } + echo $obj->getHtmlErrors (); + } + break; + + case 'item_default' : + $item_id = slideshow_CleanVars ( $_REQUEST, 'item_id', 0, 'int' ); + $topic_id = slideshow_CleanVars ( $_REQUEST, 'topic_id', 0, 'int' ); + if ($item_id > 0) { + $criteria = new CriteriaCompo (); + $criteria->add ( new Criteria ( 'item_topic', $topic_id ) ); + $item_handler->updateAll ( 'item_default', 0, $criteria ); + $obj = & $item_handler->get ( $item_id ); + $obj->setVar ( 'item_default', 1 ); + if ($item_handler->insert ( $obj )) { + exit (); + } + echo $obj->getHtmlErrors (); + } + break; +} + +// Redirect page +redirect_header("index.php", 3, _AM_SLIDESHOW_MSG_NOTINFO); +// Include footer +xoops_cp_footer (); +exit (); +?> \ No newline at end of file Added: XoopsModules/slideshow/trunk/admin/header.php =================================================================== --- XoopsModules/slideshow/trunk/admin/header.php (rev 0) +++ XoopsModules/slideshow/trunk/admin/header.php 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1,42 @@ +<?php +/** + * XOOPS slideshow module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program 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. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license GNU GPL 2 (http://www.gnu.org/licenses/old-licenses/gpl-2.0.html) + * @package module + * @since 2.5.0 + * @author Mohtava Project <http://www.mohtava.com> + * @author Hossein Azizabadi <djv...@gm...> + * @version $Id: $ + */ + +require '../../../mainfile.php'; +require_once XOOPS_ROOT_PATH . '/include/cp_header.php'; +require_once XOOPS_ROOT_PATH . '/class/tree.php'; +include_once XOOPS_ROOT_PATH . '/class/pagenav.php'; + +include XOOPS_ROOT_PATH . '/modules/slideshow/include/functions.php'; + +if ( file_exists($GLOBALS['xoops']->path('/Frameworks/moduleclasses/moduleadmin/moduleadmin.php'))){ + include_once $GLOBALS['xoops']->path('/Frameworks/moduleclasses/moduleadmin/moduleadmin.php'); + //return true; +}else{ + redirect_header("../../../admin.php", 5, _AM_MODULEADMIN_MISSING, false); + //return false; +} + +xoops_load('xoopsformloader'); + + +$item_handler = xoops_getmodulehandler('item', 'slideshow'); +$topic_handler = xoops_getmodulehandler('topic', 'slideshow'); + +?> \ No newline at end of file Added: XoopsModules/slideshow/trunk/admin/index.html =================================================================== --- XoopsModules/slideshow/trunk/admin/index.html (rev 0) +++ XoopsModules/slideshow/trunk/admin/index.html 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1 @@ +<script>history.go(-1);</script> \ No newline at end of file Added: XoopsModules/slideshow/trunk/admin/index.php =================================================================== --- XoopsModules/slideshow/trunk/admin/index.php (rev 0) +++ XoopsModules/slideshow/trunk/admin/index.php 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1,43 @@ +<?php +/** + * XOOPS slideshow module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program 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. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license GNU GPL 2 (http://www.gnu.org/licenses/old-licenses/gpl-2.0.html) + * @package module + * @since 2.5.0 + * @author Mohtava Project <http://www.mohtava.com> + * @author Hossein Azizabadi <djv...@gm...> + * @version $Id: $ + */ + +require 'header.php'; +xoops_cp_header(); +// Add module stylesheet +$xoTheme->addStylesheet(XOOPS_URL . '/modules/system/css/admin.css'); +// module admin +$index_admin = new ModuleAdmin(); +$folder = array( + XOOPS_ROOT_PATH . '/uploads/slideshow/', +); +$index_admin = new ModuleAdmin(); +$index_admin->addInfoBox(_AM_SLIDESHOW_INDEX_INFO); +$index_admin->addInfoBoxLine(_AM_SLIDESHOW_INDEX_INFO, _AM_SLIDESHOW_INDEX_TOPICS, $topic_handler->topicCount()); +$index_admin->addInfoBoxLine(_AM_SLIDESHOW_INDEX_INFO, _AM_SLIDESHOW_INDEX_ITEMS, $item_handler->itemCount()); +foreach (array_keys( $folder) as $i) { + $index_admin->addConfigBoxLine($folder[$i], 'folder'); + $index_admin->addConfigBoxLine(array($folder[$i], '777'), 'chmod'); +} +$xoopsTpl->assign('renderindex', $index_admin->renderIndex()); +// Call template file +$xoopsTpl->display(XOOPS_ROOT_PATH . '/modules/slideshow/templates/admin/slideshow_index.html'); +// footer +xoops_cp_footer(); +?> \ No newline at end of file Added: XoopsModules/slideshow/trunk/admin/marquee.php =================================================================== --- XoopsModules/slideshow/trunk/admin/marquee.php (rev 0) +++ XoopsModules/slideshow/trunk/admin/marquee.php 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1,127 @@ +<?php +/** + * XOOPS slideshow module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program 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. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license GNU GPL 2 (http://www.gnu.org/licenses/old-licenses/gpl-2.0.html) + * @package module + * @since 2.5.0 + * @author Mohtava Project <http://www.mohtava.com> + * @author Hossein Azizabadi <djv...@gm...> + * @version $Id: $ + */ + +require 'header.php'; +xoops_cp_header(); + +$op = slideshow_CleanVars($_REQUEST, 'op', '', 'string'); + +switch ($op) +{ + case 'new_item': + $obj = $item_handler->create(); + $obj->getMarqueeForm(); + break; + + case 'edit_item': + $item_id = slideshow_CleanVars($_REQUEST, 'item_id', 0, 'int'); + if ($item_id > 0) { + $obj = $item_handler->get($item_id); + $obj->getMarqueeForm(); + } else { + redirect_header('item.php', 1, _AM_SLIDESHOW_MSG_EDIT_ERROR); + } + break; + + case 'delete_item': + $item_id = slideshow_CleanVars($_REQUEST, 'item_id', 0, 'int'); + if ($item_id > 0) { + // Prompt message + xoops_confirm(array("item_id"=>$item_id), 'backend.php?op=deleteitem', _AM_SLIDESHOW_MSG_DELETE); + xoops_cp_footer(); + } + break; + + case 'order': + if (isset($_POST['mod'])) { + $i = 1; + foreach ($_POST['mod'] as $order) { + if ($order > 0) { + $contentorder = $item_handler->get($order); + $contentorder->setVar('item_order', $i); + if (!$item_handler->insert($contentorder)) { + $error = true; + } + $i++; + } + } + } + exit; + break; + + default: + + // Define scripts + $xoTheme->addScript('browse.php?Frameworks/jquery/jquery.js'); + $xoTheme->addScript('browse.php?Frameworks/jquery/plugins/jquery.ui.js'); + $xoTheme->addScript(XOOPS_URL . '/modules/slideshow/js/order.js'); + $xoTheme->addScript(XOOPS_URL . '/modules/slideshow/js/admin.js'); + // 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/admin.css'); + + $info = array(); + $info['item_sort'] = 'item_order'; + $info['item_order'] = 'DESC'; + + // get item from topic + if (isset($_REQUEST['topic'])) { + $info['topic'] = $_REQUEST['topic']; + } else { + $info['topic'] = null; + } + + // get limited information + if (isset($_REQUEST['limit'])) { + $info['item_limit'] = slideshow_CleanVars($_REQUEST, 'limit', 0, 'int'); + } else { + $info['item_limit'] = 40; + } + + // get start information + if (isset($_REQUEST['start'])) { + $info['item_start'] = slideshow_CleanVars($_REQUEST, 'start', 0, 'int'); + } else { + $info['item_start'] = 0; + } + + $info ['type'] = 'marquee'; + $info['alltopics'] = $topic_handler->getall(); + $items = $item_handler->itemSAdminList($info); + $item_numrows = $item_handler->itemCount($info); + + if ($item_numrows > $info['item_limit']) { + $item_pagenav = new XoopsPageNav($item_numrows, $info['item_limit'], $info['item_start'], 'start', 'limit=' . $info['item_limit']); + $item_pagenav = $item_pagenav->renderNav(4); + } else { + $item_pagenav = ''; + } + + $xoopsTpl->assign('items', $items); + $xoopsTpl->assign('item_pagenav', $item_pagenav); + + // Call template file + $xoopsTpl->display(XOOPS_ROOT_PATH . '/modules/slideshow/templates/admin/slideshow_marquee.html'); + break; +} + +// footer +xoops_cp_footer(); +?> \ No newline at end of file Added: XoopsModules/slideshow/trunk/admin/menu.php =================================================================== --- XoopsModules/slideshow/trunk/admin/menu.php (rev 0) +++ XoopsModules/slideshow/trunk/admin/menu.php 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1,41 @@ +<?php +/** + * XOOPS slideshow module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program 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. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license GNU GPL 2 (http://www.gnu.org/licenses/old-licenses/gpl-2.0.html) + * @package module + * @since 2.5.0 + * @author Mohtava Project <http://www.mohtava.com> + * @author Hossein Azizabadi <djv...@gm...> + * @version $Id: $ + */ + +$i = 1; +$adminmenu[$i] = array( + 'title' => _AM_SLIDESHOW_HOME, + 'link' => 'admin/index.php', + 'icon' => 'images/home.png'); +$i++; +$adminmenu[$i] = array( + 'title' => _AM_SLIDESHOW_TOPIC, + 'link' => 'admin/topic.php', + 'icon' => 'images/topic.png'); +$i++; +$adminmenu[$i] = array( + 'title' => _AM_SLIDESHOW_SLIDESHOW, + 'link' => 'admin/slideshow.php', + 'icon' => 'images/item.png'); +$i++; +$adminmenu[$i] = array( + 'title' => _AM_SLIDESHOW_MARQUEE, + 'link' => 'admin/marquee.php', + 'icon' => 'images/item.png'); +?> \ No newline at end of file Added: XoopsModules/slideshow/trunk/admin/slideshow.php =================================================================== --- XoopsModules/slideshow/trunk/admin/slideshow.php (rev 0) +++ XoopsModules/slideshow/trunk/admin/slideshow.php 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1,127 @@ +<?php +/** + * XOOPS slideshow module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program 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. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license GNU GPL 2 (http://www.gnu.org/licenses/old-licenses/gpl-2.0.html) + * @package module + * @since 2.5.0 + * @author Mohtava Project <http://www.mohtava.com> + * @author Hossein Azizabadi <djv...@gm...> + * @version $Id: $ + */ + +require 'header.php'; +xoops_cp_header(); + +$op = slideshow_CleanVars($_REQUEST, 'op', '', 'string'); + +switch ($op) +{ + case 'new_item': + $obj = $item_handler->create(); + $obj->getSlideshowForm(); + break; + + case 'edit_item': + $item_id = slideshow_CleanVars($_REQUEST, 'item_id', 0, 'int'); + if ($item_id > 0) { + $obj = $item_handler->get($item_id); + $obj->getSlideshowForm(); + } else { + redirect_header('item.php', 1, _AM_SLIDESHOW_MSG_EDIT_ERROR); + } + break; + + case 'delete_item': + $item_id = slideshow_CleanVars($_REQUEST, 'item_id', 0, 'int'); + if ($item_id > 0) { + // Prompt message + xoops_confirm(array("item_id"=>$item_id), 'backend.php?op=deleteitem', _AM_SLIDESHOW_MSG_DELETE); + xoops_cp_footer(); + } + break; + + case 'order': + if (isset($_POST['mod'])) { + $i = 1; + foreach ($_POST['mod'] as $order) { + if ($order > 0) { + $contentorder = $item_handler->get($order); + $contentorder->setVar('item_order', $i); + if (!$item_handler->insert($contentorder)) { + $error = true; + } + $i++; + } + } + } + exit; + break; + + default: + + // Define scripts + $xoTheme->addScript('browse.php?Frameworks/jquery/jquery.js'); + $xoTheme->addScript('browse.php?Frameworks/jquery/plugins/jquery.ui.js'); + $xoTheme->addScript(XOOPS_URL . '/modules/slideshow/js/order.js'); + $xoTheme->addScript(XOOPS_URL . '/modules/slideshow/js/admin.js'); + // 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/admin.css'); + + $info = array(); + $info['item_sort'] = 'item_order'; + $info['item_order'] = 'DESC'; + + // get item from topic + if (isset($_REQUEST['topic'])) { + $info['topic'] = $_REQUEST['topic']; + } else { + $info['topic'] = null; + } + + // get limited information + if (isset($_REQUEST['limit'])) { + $info['item_limit'] = slideshow_CleanVars($_REQUEST, 'limit', 0, 'int'); + } else { + $info['item_limit'] = 40; + } + + // get start information + if (isset($_REQUEST['start'])) { + $info['item_start'] = slideshow_CleanVars($_REQUEST, 'start', 0, 'int'); + } else { + $info['item_start'] = 0; + } + + $info ['type'] = 'slideshow'; + $info['alltopics'] = $topic_handler->getall(); + $items = $item_handler->itemSAdminList($info); + $item_numrows = $item_handler->itemCount($info); + + if ($item_numrows > $info['item_limit']) { + $item_pagenav = new XoopsPageNav($item_numrows, $info['item_limit'], $info['item_start'], 'start', 'limit=' . $info['item_limit']); + $item_pagenav = $item_pagenav->renderNav(4); + } else { + $item_pagenav = ''; + } + + $xoopsTpl->assign('items', $items); + $xoopsTpl->assign('item_pagenav', $item_pagenav); + + // Call template file + $xoopsTpl->display(XOOPS_ROOT_PATH . '/modules/slideshow/templates/admin/slideshow_slideshow.html'); + break; +} + +// footer +xoops_cp_footer(); +?> \ No newline at end of file Added: XoopsModules/slideshow/trunk/admin/topic.php =================================================================== --- XoopsModules/slideshow/trunk/admin/topic.php (rev 0) +++ XoopsModules/slideshow/trunk/admin/topic.php 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1,92 @@ +<?php +/** + * XOOPS slideshow module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program 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. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license GNU GPL 2 (http://www.gnu.org/licenses/old-licenses/gpl-2.0.html) + * @package module + * @since 2.5.0 + * @author Mohtava Project <http://www.mohtava.com> + * @author Hossein Azizabadi <djv...@gm...> + * @version $Id: $ + */ + +require 'header.php'; +xoops_cp_header(); + +$op = slideshow_CleanVars($_REQUEST, 'op', '', 'string'); + +$xoTheme->addStylesheet(XOOPS_URL . '/modules/system/css/admin.css'); + +switch ($op) +{ + case 'new_topic': + $obj = $topic_handler->create(); + $obj->getTopicForm(); + break; + + case 'edit_topic': + $topic_id = slideshow_CleanVars($_REQUEST, 'topic_id', 0, 'int'); + if ($topic_id > 0) { + $obj = $topic_handler->get($topic_id); + $obj->getTopicForm(); + } else { + redirect_header('topic.php', 1, _AM_SLIDESHOW_MSG_EDIT_ERROR); + } + break; + + case 'delete_topic': + $topic_id = slideshow_CleanVars($_REQUEST, 'topic_id', 0, 'int'); + if ($topic_id > 0) { + // Prompt message + xoops_confirm(array("topic_id"=>$topic_id), 'backend.php?op=deletetopic', _AM_SLIDESHOW_MSG_DELETE); + xoops_cp_footer(); + } + break; + + default: + $info = array(); + $info['topic_sort'] = 'topic_id'; + $info['topic_order'] = 'DESC'; + // get limited information + if (isset($_REQUEST['limit'])) { + $info['topic_limit'] = slideshow_CleanVars($_REQUEST, 'limit', 0, 'int'); + } else { + $info['topic_limit'] = 15; + } + + // get start information + if (isset($_REQUEST['start'])) { + $info['topic_start'] = slideshow_CleanVars($_REQUEST, 'start', 0, 'int'); + } else { + $info['topic_start'] = 0; + } + + $topics = $topic_handler->topicList($info); + $topic_numrows = $topic_handler->topicCount(); + + if ($topic_numrows > $info['topic_limit']) { + $topic_pagenav = new XoopsPageNav($topic_numrows, $info['topic_limit'], $info['topic_start'], 'start', 'limit=' . $info['topic_limit']); + $topic_pagenav = $topic_pagenav->renderNav(4); + } else { + $topic_pagenav = ''; + } + + $xoopsTpl->assign('topics', $topics); + $xoopsTpl->assign('topic_pagenav', $topic_pagenav); + + // Call template file + $xoopsTpl->display(XOOPS_ROOT_PATH . '/modules/slideshow/templates/admin/slideshow_topic.html'); + break; +} + +// footer +xoops_cp_footer(); +?> \ No newline at end of file Added: XoopsModules/slideshow/trunk/blocks/index.html =================================================================== --- XoopsModules/slideshow/trunk/blocks/index.html (rev 0) +++ XoopsModules/slideshow/trunk/blocks/index.html 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1 @@ +<script>history.go(-1);</script> \ No newline at end of file Added: XoopsModules/slideshow/trunk/blocks/slideshow.php =================================================================== --- XoopsModules/slideshow/trunk/blocks/slideshow.php (rev 0) +++ XoopsModules/slideshow/trunk/blocks/slideshow.php 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1,167 @@ +<?php +/** + * XOOPS slideshow module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program 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. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license GNU GPL 2 (http://www.gnu.org/licenses/old-licenses/gpl-2.0.html) + * @package module + * @since 2.5.0 + * @author Mohtava Project <http://www.mohtava.com> + * @author Hossein Azizabadi <djv...@gm...> + * @version $Id: $ + */ + +function slideshow_list_show($options) { + global $xoTheme; + $block = array(); + $block['slidewidth'] = $options[0]; + $block['slideheight'] = $options[1]; + $block['imagewidth'] = $options[2]; + $block['imageheight'] = $options[3]; + $info['topic'] = $options[4]; + $block['showtype'] = $options[5]; + $info['limit'] = $options[6]; + $block['style'] = $options[7]; + + array_shift($options); + array_shift($options); + array_shift($options); + array_shift($options); + array_shift($options); + array_shift($options); + array_shift($options); + array_shift($options); + + if($block['style']) { + switch($block['showtype']) { + case 'marquee': + $xoTheme->addScript("browse.php?Frameworks/jquery/jquery.js"); + $xoTheme->addScript(XOOPS_URL . '/modules/slideshow/js/marquee/marquee.js'); + $xoTheme->addScript(XOOPS_URL . '/modules/slideshow/js/marquee/setting.js'); + $xoTheme->addStylesheet(XOOPS_URL . '/modules/slideshow/css/marquee/marquee.css'); + $info ['type'] = 'marquee'; + break; + + case 'slideshow': + $style = ' + .slider { + width: '. $block['slidewidth'] .'px; + height: '. $block['slideheight']*1.06 .'px; + } + .slider .main { + height: '. $block['slideheight']*1.06 .'px; + } + .slider .page { + width: '. $block['slidewidth'] .'px; + height: '. $block['slideheight'] .'px; + } + .slider .scrollable { + width: '. $block['slidewidth'] .'px; + height: '. $block['slideheight'] .'px; + } + .slider .item { + width: '. $block['slidewidth'] .'px; + height: '. $block['slideheight'] .'px; + } + .slider .item .itemleft img { + width: '. $block['slidewidth']/2 .'px; + } + '; + + $xoTheme->addScript("browse.php?Frameworks/jquery/jquery.js"); + $xoTheme->addScript(XOOPS_URL . '/modules/slideshow/js/slideshow/scrollable.js'); + $xoTheme->addScript(XOOPS_URL . '/modules/slideshow/js/slideshow/setting.js'); + $xoTheme->addStylesheet(XOOPS_URL . '/modules/slideshow/css/slideshow/scrollable.css'); + $xoTheme->addStylesheet( null, array ('rel' => 'stylesheet'), $style ); + $info ['type'] = 'slideshow'; + break; + + case 'slideshow1': + $xoTheme->addScript("browse.php?Frameworks/jquery/jquery.js"); + $xoTheme->addScript(XOOPS_URL . '/modules/slideshow/js/slideshow/sliderkit.min.js'); + $xoTheme->addScript(XOOPS_URL . '/modules/slideshow/js/slideshow/sliderkitsetting.js'); + $xoTheme->addStylesheet(XOOPS_URL . '/modules/slideshow/css/slideshow/sliderkit-core.css'); + $xoTheme->addStylesheet(XOOPS_URL . '/modules/slideshow/css/slideshow/sliderkit-demos.css'); + $info ['type'] = 'slideshow'; + break; + } + } else { + switch($block['showtype']) { + case 'marquee': + $info ['type'] = 'marquee'; + break; + + case 'slideshow': + $info ['type'] = 'slideshow'; + break; + + case 'slideshow1': + $info ['type'] = 'slideshow'; + break; + } + } + + $item_handler = xoops_getmodulehandler('item', 'slideshow'); + $block['items'] = $item_handler->itemBlockList($info); + + return $block; +} + +function slideshow_list_edit($options) { + + $topic_handler = xoops_getmodulehandler('topic', 'slideshow'); + + $criteria = new CriteriaCompo(); + $criteria->setSort("topic_id"); + $criteria->setOrder("ASC"); + $topics = $topic_handler->getall($criteria); + + $form = _MB_SLIDESHOW_OP1 . ": <input type=\"text\" name=\"options[0]\" value=\"" . $options[0] . "\" /><br />"; + $form .= _MB_SLIDESHOW_OP2 . ": <input type=\"text\" name=\"options[1]\" value=\"" . $options[1] . "\" /><br />"; + $form .= _MB_SLIDESHOW_OP3 . ": <input type=\"text\" name=\"options[2]\" value=\"" . $options[2] . "\" /><br />"; + $form .= _MB_SLIDESHOW_OP4 . ": <input type=\"text\" name=\"options[3]\" value=\"" . $options[3] . "\" /><br />"; + + $topic = new XoopsFormSelect(_MB_SLIDESHOW_OP5, 'options[4]', $options[4]); + $i = 1; + foreach (array_keys($topics) as $i) { + $topic->addOption($topics[$i]->getVar("topic_id"), $topics[$i]->getVar("topic_title") .' - '. $topics[$i]->getVar("topic_showtype")); + } + $form .= _MB_SLIDESHOW_OP5 . " : " . $topic->render() . '<br />'; + + $type = new XoopsFormSelect(_MB_SLIDESHOW_OP6, 'options[5]', $options[5]); + $type->addOption('slideshow',_MB_SLIDESHOW_SLIDESHOW); + $type->addOption('slideshow1',_MB_SLIDESHOW_SLIDESHOW1); + $type->addOption('marquee',_MB_SLIDESHOW_MARQUEE); + $form .= _MB_SLIDESHOW_OP6 . " : " . $type->render() . '<br />'; + $form .= _MB_SLIDESHOW_OP7 . ": <input type=\"text\" name=\"options[6]\" value=\"" . $options[6] . "\" /><br />"; + + if ($options[7] == false){ + $checked_yes = ''; + $checked_no = 'checked="checked"'; + }else{ + $checked_yes = 'checked="checked"'; + $checked_no = ''; + } + $form .= _MB_SLIDESHOW_STYLE . " : <input name=\"options[7]\" value=\"1\" type=\"radio\" " . $checked_yes . "/>" . _YES . " \n"; + $form .= "<input name=\"options[7]\" value=\"0\" type=\"radio\" " . $checked_no . "/>" . _NO . "<br />\n"; + + array_shift($options); + array_shift($options); + array_shift($options); + array_shift($options); + array_shift($options); + array_shift($options); + array_shift($options); + array_shift($options); + + return $form; +} + +?> \ No newline at end of file Added: XoopsModules/slideshow/trunk/class/index.html =================================================================== --- XoopsModules/slideshow/trunk/class/index.html (rev 0) +++ XoopsModules/slideshow/trunk/class/index.html 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1 @@ +<script>history.go(-1);</script> \ No newline at end of file Added: XoopsModules/slideshow/trunk/class/item.php =================================================================== --- XoopsModules/slideshow/trunk/class/item.php (rev 0) +++ XoopsModules/slideshow/trunk/class/item.php 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1,278 @@ +<?php +/** + * XOOPS slideshow module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program 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. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license GNU GPL 2 (http://www.gnu.org/licenses/old-licenses/gpl-2.0.html) + * @package module + * @since 2.5.0 + * @author Mohtava Project <http://www.mohtava.com> + * @author Hossein Azizabadi <djv...@gm...> + * @version $Id: $ + */ + +class slideshow_item extends XoopsObject { + + public function slideshow_item() { + $this->initVar ( 'item_id', XOBJ_DTYPE_INT ); + $this->initVar ( 'item_title', XOBJ_DTYPE_TXTBOX ); + $this->initVar ( 'item_text', XOBJ_DTYPE_TXTAREA, '' ); + $this->initVar ( 'item_topic', XOBJ_DTYPE_INT ); + $this->initVar ( 'item_link', XOBJ_DTYPE_TXTBOX ); + $this->initVar ( 'item_status', XOBJ_DTYPE_INT , '1'); + $this->initVar ( 'item_create', XOBJ_DTYPE_INT ); + $this->initVar ( 'item_uid', XOBJ_DTYPE_INT ); + $this->initVar ( 'item_order', XOBJ_DTYPE_INT ); + $this->initVar ( 'item_img', XOBJ_DTYPE_TXTBOX ); + $this->initVar ( 'item_thumb', XOBJ_DTYPE_TXTBOX ); + $this->initVar ( 'item_default', XOBJ_DTYPE_INT , '0'); + $this->initVar ( 'item_type', XOBJ_DTYPE_TXTBOX ); + $this->initVar ( 'dohtml', XOBJ_DTYPE_INT, 1 ); + $this->initVar ( 'dobr', XOBJ_DTYPE_INT, 1 ); + + $this->db = $GLOBALS ['xoopsDB']; + $this->table = $this->db->prefix ( 'slideshow_item' ); + } + + public function getMarqueeForm() { + $form = new XoopsThemeForm ( _AM_SLIDESHOW_ITEM_FORM, 'item', 'backend.php', 'post' ); + $form->setExtra ( 'enctype="multipart/form-data"' ); + if ($this->isNew ()) { + $form->addElement ( new XoopsFormHidden ( 'op', 'additem' ) ); + $form->addElement ( new XoopsFormHidden ( 'item_uid', $GLOBALS ['xoopsUser']->getVar ( 'uid' ) ) ); + } else { + $form->addElement ( new XoopsFormHidden ( 'op', 'edititem' ) ); + } + $form->addElement ( new XoopsFormHidden ( 'item_id', $this->getVar ( 'item_id', 'e' ) ) ); + $form->addElement ( new XoopsFormHidden ( 'item_type', 'marquee' ) ); + // Topic + $topic_handler = xoops_getmodulehandler('topic', 'slideshow'); + $criteria = new CriteriaCompo (); + $criteria->add ( new Criteria ( 'topic_showtype', 'marquee' ) ); + $topics = $topic_handler->getObjects ( $criteria ); + $topic_sel = new XoopsFormSelect(_AM_SLIDESHOW_ITEM_TOPIC, 'item_topic', $this->getVar ( 'item_topic' )); + $i = 1; + foreach (array_keys($topics) as $i) { + $topic_sel->addOption($topics[$i]->getVar("topic_id"), $topics[$i]->getVar("topic_title") . ' - ' . $topics[$i]->getVar("topic_showtype")); + } + $form->addElement($topic_sel); + $form->addElement ( new XoopsFormText ( _AM_SLIDESHOW_ITEM_TITLE, 'item_title', 50, 255, $this->getVar ( 'item_title', 'e' ) ), true ); + $form->addElement ( new XoopsFormText ( _AM_SLIDESHOW_ITEM_LINK, 'item_link', 50, 255, $this->getVar ( 'item_link', 'e' ) ), true ); + $form->addElement ( new XoopsFormRadioYN ( _AM_SLIDESHOW_ITEM_STATUS, 'item_status', $this->getVar ( 'item_status', 'e' ) ) ); + $form->addElement ( new XoopsFormRadioYN ( _AM_SLIDESHOW_ITEM_DEFAULT, 'item_default', $this->getVar ( 'item_default', 'e' ) ) ); + // Button + $button_tray = new XoopsFormElementTray ( '', '' ); + $submit_btn = new XoopsFormButton ( '', 'post', _SUBMIT, 'submit' ); + $button_tray->addElement ( $submit_btn ); + $cancel_btn = new XoopsFormButton ( '', 'cancel', _CANCEL, 'cancel' ); + $cancel_btn->setExtra ( 'onclick="javascript:history.go(-1);"' ); + $button_tray->addElement ( $cancel_btn ); + $form->addElement ( $button_tray ); + $form->display (); + } + + public function getSlideshowForm() { + $form = new XoopsThemeForm ( _AM_SLIDESHOW_ITEM_FORM, 'item', 'backend.php', 'post' ); + $form->setExtra ( 'enctype="multipart/form-data"' ); + if ($this->isNew ()) { + $form->addElement ( new XoopsFormHidden ( 'op', 'additem' ) ); + $form->addElement ( new XoopsFormHidden ( 'item_uid', $GLOBALS ['xoopsUser']->getVar ( 'uid' ) ) ); + } else { + $form->addElement ( new XoopsFormHidden ( 'op', 'edititem' ) ); + } + $form->addElement ( new XoopsFormHidden ( 'item_id', $this->getVar ( 'item_id', 'e' ) ) ); + $form->addElement ( new XoopsFormHidden ( 'item_type', 'slideshow' ) ); + // Topic + $topic_handler = xoops_getmodulehandler('topic', 'slideshow'); + $criteria = new CriteriaCompo (); + $criteria->add ( new Criteria ( 'topic_showtype', 'slideshow' ) ); + $topics = $topic_handler->getObjects ( $criteria ); + $topic_sel = new XoopsFormSelect(_AM_SLIDESHOW_ITEM_TOPIC, 'item_topic', $this->getVar ( 'item_topic' )); + $i = 1; + foreach (array_keys($topics) as $i) { + $topic_sel->addOption($topics[$i]->getVar("topic_id"), $topics[$i]->getVar("topic_title") . ' - ' . $topics[$i]->getVar("topic_showtype")); + } + $form->addElement($topic_sel); + $form->addElement ( new XoopsFormText ( _AM_SLIDESHOW_ITEM_TITLE, 'item_title', 50, 255, $this->getVar ( 'item_title', 'e' ) ), true ); + $form->addElement ( new XoopsFormTextArea ( _AM_SLIDESHOW_ITEM_TEXT, 'item_text', $this->getVar ( 'item_text', 'e' ), 5, 80 ) ); + $form->addElement ( new XoopsFormText ( _AM_SLIDESHOW_ITEM_LINK, 'item_link', 50, 255, $this->getVar ( 'item_link', 'e' ) ), true ); + $form->addElement ( new XoopsFormRadioYN ( _AM_SLIDESHOW_ITEM_STATUS, 'item_status', $this->getVar ( 'item_status', 'e' ) ) ); + $form->addElement ( new XoopsFormRadioYN ( _AM_SLIDESHOW_ITEM_DEFAULT, 'item_default', $this->getVar ( 'item_default', 'e' ) ) ); + // Image + $item_img = $this->getVar ( 'item_img' ) ? $this->getVar ( 'item_img' ) : 'blank.gif'; + $imgdir = '/uploads/slideshow/image/'; + $fileseltray_item_img = new XoopsFormElementTray ( _AM_SLIDESHOW_ITEM_IMG, '<br />' ); + $fileseltray_item_img->addElement ( new XoopsFormLabel ( '', "<img style='max-width: 500px; max-height: 500px;' src='" . XOOPS_URL . $imgdir . $item_img . "' name='image_item' id='image_item' alt='' />" ) ); + $fileseltray_item_img->addElement ( new XoopsFormFile ( _AM_SLIDESHOW_ITEM_FORMUPLOAD, 'item_img', xoops_getModuleOption ( 'img_size', 'slideshow' ) ), false ); + $form->addElement ( $fileseltray_item_img ); + // thumb + $item_thumb = $this->getVar ( 'item_thumb' ) ? $this->getVar ( 'item_thumb' ) : 'blank.gif'; + $thumbdir = '/uploads/slideshow/thumb/'; + $fileseltray_item_thumb = new XoopsFormElementTray ( _AM_SLIDESHOW_ITEM_THUMB, '<br />' ); + $fileseltray_item_thumb->addElement ( new XoopsFormLabel ( '', "<img style='max-width: 200px; max-height: 200px;' src='" . XOOPS_URL . $thumbdir . $thumb_img . "' name='image_item' id='image_item' alt='' />" ) ); + $fileseltray_item_thumb->addElement ( new XoopsFormFile ( _AM_SLIDESHOW_ITEM_FORMUPLOAD, 'item_thumb', xoops_getModuleOption ( 'img_size', 'slideshow' ) ), false ); + $form->addElement ( $fileseltray_item_thumb ); + // Button + $button_tray = new XoopsFormElementTray ( '', '' ); + $submit_btn = new XoopsFormButton ( '', 'post', _SUBMIT, 'submit' ); + $button_tray->addElement ( $submit_btn ); + $cancel_btn = new XoopsFormButton ( '', 'cancel', _CANCEL, 'cancel' ); + $cancel_btn->setExtra ( 'onclick="javascript:history.go(-1);"' ); + $button_tray->addElement ( $cancel_btn ); + $form->addElement ( $button_tray ); + $form->display (); + } + + public function toArray() { + $ret = array (); + $vars = $this->getVars (); + foreach ( array_keys ( $vars ) as $i ) { + $ret [$i] = $this->getVar ( $i ); + } + return $ret; + } +} + +class slideshowItemHandler extends XoopsPersistableObjectHandler { + + public function slideshowItemHandler($db) { + parent::XoopsPersistableObjectHandler ( $db, 'slideshow_item', 'slideshow_item', 'item_id', 'item_title' ); + } + + public function setitemorder() { + $criteria = new CriteriaCompo (); + $criteria->setSort ( 'item_order' ); + $criteria->setOrder ( 'DESC' ); + $criteria->setLimit ( 1 ); + $last = $this->getObjects ( $criteria ); + $order = 1; + foreach ( $last as $item ) { + $order = $item->getVar ( 'item_order' ) + 1; + } + return $order; + } + + public function uploadimg($obj, $image) { + include_once XOOPS_ROOT_PATH . "/class/uploader.php"; + $uploader_img = new XoopsMediaUploader ( + XOOPS_ROOT_PATH . '/uploads/slideshow/image/', + xoops_getModuleOption ( 'img_mime', 'slideshow' ), + xoops_getModuleOption ( 'img_size', 'slideshow' ), + xoops_getModuleOption ( 'img_maxwidth', 'slideshow' ), + xoops_getModuleOption ( 'img_maxheight', 'slideshow' ) + ); + if ($uploader_img->fetchMedia ( 'item_img' )) { + $uploader_img->setPrefix ( 'slideshow_' ); + $uploader_img->fetchMedia ( 'item_img' ); + if (! $uploader_img->upload ()) { + $errors = $uploader_img->getErrors (); + fmcontent_Redirect ( "javascript:history.go(-1)", 3, $errors ); + xoops_cp_footer (); + exit (); + } else { + $obj->setVar ( 'item_img', $uploader_img->getSavedFileName () ); + } + } else { + if (isset ( $image )) { + $obj->setVar ( 'item_img', $image ); + } + } + } + + public function uploadthumb($obj, $thumb) { + include_once XOOPS_ROOT_PATH . "/class/uploader.php"; + $uploader_thumb = new XoopsMediaUploader ( + XOOPS_ROOT_PATH . '/uploads/slideshow/thumb/', + xoops_getModuleOption ( 'img_mime', 'slideshow' ), + xoops_getModuleOption ( 'img_size', 'slideshow' ), + xoops_getModuleOption ( 'img_maxwidth', 'slideshow' ), + xoops_getModuleOption ( 'img_maxheight', 'slideshow' ) + ); + if ($uploader_thumb->fetchMedia ( 'item_thumb' )) { + $uploader_thumb->setPrefix ( 'slideshow_' ); + $uploader_thumb->fetchMedia ( 'item_thumb' ); + if (! $uploader_thumb->upload ()) { + $errors = $uploader_thumb->getErrors (); + fmcontent_Redirect ( "javascript:history.go(-1)", 3, $errors ); + xoops_cp_footer (); + exit (); + } else { + $obj->setVar ( 'item_thumb', $uploader_thumb->getSavedFileName () ); + } + } else { + if (isset ( $thumb )) { + $obj->setVar ( 'item_thumb', $thumb ); + } + } + } + + public function itemSAdminList($info) { + $ret = array (); + $criteria = new CriteriaCompo (); + if($info ['topic']) { + $criteria->add ( new Criteria ( 'item_topic', $info ['topic'] ) ); + } + $criteria->add ( new Criteria ( 'item_type', $info ['type'] ) ); + $criteria->setSort ( $info ['item_sort'] ); + $criteria->setOrder ( $info ['item_order'] ); + $criteria->setLimit ( $info ['item_limit'] ); + $criteria->setStart ( $info ['item_start'] ); + + $obj = $this->getObjects ( $criteria, false ); + if ($obj) { + foreach ( $obj as $root ) { + $tab = array (); + $tab = $root->toArray (); + + if(is_array($info['alltopics'])) { + foreach ( array_keys ( $info['alltopics'] ) as $i ) { + $list [$i] ['topic_title'] = $info['alltopics'] [$i]->getVar ( "topic_title" ); + $list [$i] ['topic_id'] = $info['alltopics'] [$i]->getVar ( "topic_id" ); + } + } + $tab ['imgurl'] = XOOPS_URL . '/uploads/slideshow/image/' . $root->getVar ( 'item_img' ); + $tab ['topictitle'] = $list [$root->getVar ( 'item_topic' )] ['topic_title']; + $ret [] = $tab; + } + } + + return $ret; + } + + public function itemCount($info = null) { + $criteria = new CriteriaCompo (); + $criteria->add ( new Criteria ( 'item_type', $info ['type'] ) ); + return $this->getCount ( $criteria ); + } + + public function itemBlockList($info) { + $ret = array (); + $criteria = new CriteriaCompo (); + $criteria->add ( new Criteria ( 'item_topic', $info ['topic'] ) ); + $criteria->add ( new Criteria ( 'item_type', $info ['type'] ) ); + $criteria->add ( new Criteria ( 'item_status', '1' ) ); + $criteria->setSort ( 'item_order' ); + $criteria->setOrder ( 'DESC' ); + $obj = $this->getObjects ( $criteria, false ); + if ($obj) { + foreach ( $obj as $root ) { + $tab = array (); + $tab = $root->toArray (); + $tab ['imgurl'] = XOOPS_URL . '/uploads/slideshow/image/' . $root->getVar ( 'item_img' ); + $tab ['thumburl'] = XOOPS_URL . '/uploads/slideshow/thumb/' . $root->getVar ( 'item_thumb' ); + $ret [] = $tab; + } + } + return $ret; + } + +} + +?> \ No newline at end of file Added: XoopsModules/slideshow/trunk/class/topic.php =================================================================== --- XoopsModules/slideshow/trunk/class/topic.php (rev 0) +++ XoopsModules/slideshow/trunk/class/topic.php 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1,104 @@ +<?php +/** + * XOOPS slideshow module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program 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. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license GNU GPL 2 (http://www.gnu.org/licenses/old-licenses/gpl-2.0.html) + * @package module + * @since 2.5.0 + * @author Mohtava Project <http://www.mohtava.com> + * @author Hossein Azizabadi <djv...@gm...> + * @version $Id: $ + */ + +class slideshow_topic extends XoopsObject { + + public function slideshow_topic() { + $this->initVar ( 'topic_id', XOBJ_DTYPE_INT ); + $this->initVar ( 'topic_title', XOBJ_DTYPE_TXTBOX ); + $this->initVar ( 'topic_showtype', XOBJ_DTYPE_TXTBOX ); + $this->initVar ( 'topic_created', XOBJ_DTYPE_INT ); + + $this->db = $GLOBALS ['xoopsDB']; + $this->table = $this->db->prefix ( 'slideshow_topic' ); + } + + public function getTopicForm() { + $form = new XoopsThemeForm ( _AM_SLIDESHOW_TOPIC_FORM, 'topic', 'backend.php', 'post' ); + $form->setExtra ( 'enctype="multipart/form-data"' ); + if ($this->isNew ()) { + $form->addElement ( new XoopsFormHidden ( 'op', 'addtopic' ) ); + } else { + $form->addElement ( new XoopsFormHidden ( 'op', 'edittopic' ) ); + } + $form->addElement ( new XoopsFormHidden ( 'topic_id', $this->getVar ( 'topic_id', 'e' ) ) ); + $form->addElement ( new XoopsFormText ( _AM_SLIDESHOW_TOPIC_TITLE, 'topic_title', 50, 255, $this->getVar ( 'topic_title', 'e' ) ), true ); + + if ($this->isNew ()) { + $select = new XoopsFormSelect(_AM_SLIDESHOW_TOPIC_SHOWTYPE, 'topic_showtype',$this->getVar ( 'topic_showtype', 'e' )); + $select->addOption("slideshow", _AM_SLIDESHOW_TOPIC_SLIDESHOW); + $select->addOption("marquee", _AM_SLIDESHOW_TOPIC_MARQUEE); + $form->addElement($select); + } + // Submit buttons + $button_tray = new XoopsFormElementTray ( '', '' ); + $submit_btn = new XoopsFormButton ( '', 'post', _SUBMIT, 'submit' ); + $button_tray->addElement ( $submit_btn ); + $cancel_btn = new XoopsFormButton ( '', 'cancel', _CANCEL, 'cancel' ); + $cancel_btn->setExtra ( 'onclick="javascript:history.go(-1);"' ); + $button_tray->addElement ( $cancel_btn ); + $form->addElement ( $button_tray ); + $form->display (); + } + + public function toArray() { + $ret = array (); + $vars = $this->getVars (); + foreach ( array_keys ( $vars ) as $i ) { + $ret [$i] = $this->getVar ( $i ); + } + return $ret; + } +} + +class slideshowTopicHandler extends XoopsPersistableObjectHandler { + + public function slideshowTopicHandler($db) { + parent::XoopsPersistableObjectHandler ( $db, 'slideshow_topic', 'slideshow_topic', 'topic_id', 'topic_title' ); + } + + public function topicList($info) { + $ret = array (); + $criteria = new CriteriaCompo (); + $criteria->setSort ( $info ['topic_sort'] ); + $criteria->setOrder ( $info ['topic_order'] ); + $criteria->setLimit ( $info ['topic_limit'] ); + $criteria->setStart ( $info ['topic_start'] ); + + $obj = $this->getObjects ( $criteria, false ); + if ($obj) { + foreach ( $obj as $root ) { + $tab = array (); + $tab = $root->toArray (); + $ret [] = $tab; + } + } + + return $ret; + } + + public function topicCount() { + $criteria = new CriteriaCompo (); + return $this->getCount ( $criteria ); + } + +} + +?> \ No newline at end of file Added: XoopsModules/slideshow/trunk/css/index.html =================================================================== --- XoopsModules/slideshow/trunk/css/index.html (rev 0) +++ XoopsModules/slideshow/trunk/css/index.html 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1 @@ +<script>history.go(-1);</script> \ No newline at end of file Added: XoopsModules/slideshow/trunk/css/marquee/index.html =================================================================== --- XoopsModules/slideshow/trunk/css/marquee/index.html (rev 0) +++ XoopsModules/slideshow/trunk/css/marquee/index.html 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1 @@ +<script>history.go(-1);</script> \ No newline at end of file Added: XoopsModules/slideshow/trunk/css/marquee/marquee.css =================================================================== --- XoopsModules/slideshow/trunk/css/marquee/marquee.css (rev 0) +++ XoopsModules/slideshow/trunk/css/marquee/marquee.css 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1,34 @@ +#marquee { + height: 40px; + font-size: 1.1em; + font-weight: bold; + text-align: center; +} + + +ul.marquee { + display: block; + padding: 0; + margin: 0; + list-style: none; + line-height: 1; + position: relative; + overflow: hidden; + height: 25px; +} + +ul.marquee li { + position: absolute; + top: -999em; + display: block; + padding-top: 5px; + white-space: nowrap; + text-align: center !important; +} + +ul.marquee li a { + text-align: center !important; +} + +ul.marquee li a:hover { +} \ No newline at end of file Added: XoopsModules/slideshow/trunk/css/slideshow/index.html =================================================================== --- XoopsModules/slideshow/trunk/css/slideshow/index.html (rev 0) +++ XoopsModules/slideshow/trunk/css/slideshow/index.html 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1 @@ +<script>history.go(-1);</script> \ No newline at end of file Added: XoopsModules/slideshow/trunk/css/slideshow/scrollable.css =================================================================== Added: XoopsModules/slideshow/trunk/css/slideshow/sliderkit-core.css =================================================================== --- XoopsModules/slideshow/trunk/css/slideshow/sliderkit-core.css (rev 0) +++ XoopsModules/slideshow/trunk/css/slideshow/sliderkit-core.css 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1,60 @@ +/* + * sliderkit-core.css + * > Core CSS styles + * + * This file is part of Slider Kit jQuery plugin. + * http://www.kyrielles.net/sliderkit/ + * + * Copyright (c) 2010-2011 Alan Frog + * Licensed under the GNU General Public License + * See <license.txt> or <http://www.gnu.org/licenses/> + * + */ + +/* + * PLUGIN BASICS + * ------------------------------------------------ + */ +.sliderkit{display:none;position:relative;overflow:hidden;text-align:left;} +.sliderkit a, +.sliderkit a:hover{text-decoration:none;} +.sliderkit a:focus{outline:1px dotted #000;/*optional*/} +.sliderkit img{border:0;} + +/*--------------------------------- + * Navigation + *---------------------------------*/ +.sliderkit .sliderkit-nav{z-index:10;position:absolute;text-align:center;} + +/* Nav > Clip */ +.sliderkit .sliderkit-nav-clip{position:relative;overflow:hidden;margin:0 auto;} +.sliderkit .sliderkit-nav-clip ul{position:relative;left:0;top:0;list-style:none;margin:0;padding:0;} +.sliderkit .sliderkit-nav-clip ul li{float:left;} +.sliderkit .sliderkit-nav-clip ul li a{display:block;overflow:hidden;} + +/*--------------------------------- + * Buttons + *---------------------------------*/ +.sliderkit .sliderkit-btn{z-index:10;} + +/*--------------------------------- + * Panels + *---------------------------------*/ +.sliderkit .sliderkit-panel{z-index:1;position:absolute;overflow:hidden;} +.sliderkit .sliderkit-panel-active{z-index:5;} +.sliderkit .sliderkit-panel-old{z-index:4;} + +/* Panels > Overlay */ +.sliderkit .sliderkit-panel .sliderkit-panel-textbox{position:absolute;z-index:1;} +.sliderkit .sliderkit-panel .sliderkit-panel-text{position:absolute;z-index:3;top:0;left:0;} +.sliderkit .sliderkit-panel .sliderkit-panel-overlay{position:absolute;z-index:2;top:0;left:0;} + +/*--------------------------------- + * Counter + *---------------------------------*/ +.sliderkit .sliderkit-count{position:absolute;top:5px;right:5px;z-index:10;padding:5px;color:#fff;background:#000;} + +/*--------------------------------- + * Loader + *---------------------------------*/ +.sliderkit .sliderkit-timer{position:absolute;top:0;left:0;z-index:10;height:3px;background:#ccc;} Added: XoopsModules/slideshow/trunk/css/slideshow/sliderkit-demos.css =================================================================== --- XoopsModules/slideshow/trunk/css/slideshow/sliderkit-demos.css (rev 0) +++ XoopsModules/slideshow/trunk/css/slideshow/sliderkit-demos.css 2012-08-29 05:11:55 UTC (rev 10126) @@ -0,0 +1,38 @@ +/*--------------------------------- + * Photos slider > 1 click + *---------------------------------*/ +.photoslider-1click{width:280px;height:220px;} + +/* Nav */ +.photoslider-1click .sliderkit-nav{position:absolute;bottom:10px;right:10px;} +.photoslider-1click .sliderkit-nav-clip ul li{float:left;margin:0 1px 0 0;} +.photoslider-1click .sliderkit-nav-clip ul li a{display:block;padding:2px 6px;color:#fff;background:#000} +.photoslider-1click .sliderkit-nav-clip ul li.sliderkit-selected a{color:#000;background:#fff;} +.photoslider-1click .sliderkit-nav-clip ul a:hover{color:#fff;background:#00668d;} + + +/*--------------------------------- + * News slider > Vertical + *---------------------------------*/ +.newslide... [truncated message content] |