From: <txm...@us...> - 2015-02-15 10:02:51
|
Revision: 12979 http://sourceforge.net/p/xoops/svn/12979 Author: txmodxoops Date: 2015-02-15 10:02:48 +0000 (Sun, 15 Feb 2015) Log Message: ----------- Updated Added and modifed more files Modified Paths: -------------- XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/templates/admin/system_preferences.html XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/templates/admin/system_templates.html XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/templates/admin/system_users.html Added Paths: ----------- XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/admin/tplsets/ XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/admin/tplsets/jquery.php XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/admin/tplsets/main.php XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/admin/users/ XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/admin/users/main.php XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/themes/xnewage/assets/css/xnewage.min.css Added: XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/admin/tplsets/jquery.php =================================================================== --- XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/admin/tplsets/jquery.php (rev 0) +++ XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/admin/tplsets/jquery.php 2015-02-15 10:02:48 UTC (rev 12979) @@ -0,0 +1,155 @@ +<?php +/** + * Template Manager + * Manage all templates: theme and 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) + * @author Maxime Cointin (AKA Kraven30) + * @package system + * @version $Id: jquery.php 12104 2013-09-28 21:37:53Z beckmi $ + */ + +include dirname( dirname( dirname( __FILE__ ) ) ) . '/header.php'; + +if (!defined('XOOPS_ROOT_PATH')) { die('Error'); } + +if ( !is_object($xoopsUser) || !is_object($xoopsModule) || !$xoopsUser->isAdmin($xoopsModule->mid()) ) exit( _NOPERM ); + +error_reporting(0); +$GLOBALS['xoopsLogger']->activated = false; + +if ( file_exists('./../../language/'.$xoopsConfig['language'].'"/admin/tplsets.php') ) { + include_once './../../language/'.$xoopsConfig['language'].'/admin/tplsets.php'; +} else { + include_once './../../language/english/admin/tplsets.php'; +} + +if (isset($_REQUEST["op"])) { + $op = $_REQUEST["op"]; +} else { + @$op = "default"; +} + +$GLOBALS['xoopsLogger']->usePopup = true; + +switch ($op) { + // Display tree folder + case "tpls_display_folder": + $_REQUEST['dir'] = urldecode($_REQUEST['dir']); + $root = XOOPS_THEME_PATH; + if ( file_exists($root . $_REQUEST['dir']) ) { + $files = scandir($root . $_REQUEST['dir']); + natcasesort($files); + if ( count($files) > 2 ) { /* The 2 accounts for . and .. */ + echo "<ul class=\"jqueryFileTree\" style=\"display: none;\">"; + // All dirs + foreach ($files as $file) { + + if ( file_exists($root . $_REQUEST['dir'] . $file) && $file != '.' && $file != '..' && is_dir($root . $_REQUEST['dir'] . $file) ) { + //retirer .svn + $file_no_valid = array('.svn', 'icons', 'img', 'images', 'language'); + + if (!in_array($file, $file_no_valid)) { + echo "<li class=\"directory collapsed\"><a href=\"#\" rel=\"" . htmlentities($_REQUEST['dir'] . $file) . "/\">" . htmlentities($file) . "</a></li>"; + } + } + } + // All files + foreach ($files as $file) { + if ( file_exists($root . $_REQUEST['dir'] . $file) && $file != '.' && $file != '..' && !is_dir($root . $_REQUEST['dir'] . $file) && $file != 'index.html' ) { + $ext = preg_replace('/^.*\./', '', $file); + + $extensions = array('.html', '.htm', '.css'); + $extension_verif = strrchr($file, '.'); + + if (in_array($extension_verif, $extensions)) { + echo "<li class=\"file ext_$ext\"><a href=\"#\" onclick=\"tpls_edit_file('".htmlentities($_REQUEST['dir'].$file)."', '".htmlentities($_REQUEST['dir'])."', '".htmlentities($file)."', '".$ext."');\" rel=\"tpls_edit_file('".htmlentities($_REQUEST['dir'].$file)."', '".htmlentities($_REQUEST['dir'])."', '".htmlentities($file)."', '".$ext."');\">" . htmlentities($file) . "</a></li>"; + } else { + //echo "<li class=\"file ext_$ext\">" . htmlentities($file) . "</li>"; + } + + } + } + echo "</ul>"; + } + } + break; + // Edit File + case 'tpls_edit_file': + $path_file = realpath(XOOPS_ROOT_PATH.'/themes'.trim($_REQUEST['path_file'])); + $path_file = str_replace('\\','/',$path_file); + + //Button restore + if (file_exists($path_file.'.back')) { + $restore = '<button class="btn btn-default" type="button" onclick="tpls_restore(\''.$path_file.'\')" value="'._AM_SYSTEM_TEMPLATES_RESTORE.'" title="'._AM_SYSTEM_TEMPLATES_RESTORE.'"> + <img src="'.system_AdminIcons('revert.png').'" alt="'._AM_SYSTEM_TEMPLATES_RESTORE.'" /> + </button>'; + } else { + $restore = ''; + } + xoops_load('XoopsFile'); + XoopsFile::load('file'); + + $file = XoopsFile::getHandler('file', $path_file); + $content = $file->read(); + if (empty($content)) { + echo _AM_SYSTEM_TEMPLATES_EMPTY_FILE; + } + $ext = preg_replace('/^.*\./', '', $_REQUEST['path_file']); + + echo '<form name="back" action="admin.php?fct=tplsets&op=tpls_save" method="POST"> + <table border="0"> + <tr> + <td> + <div class="xo-btn-actions"> + <div class="xo-buttons"> + <button class="btn btn-default" type="submit" value="'._AM_SYSTEM_TEMPLATES_SAVE.'" title="'._AM_SYSTEM_TEMPLATES_SAVE.'"> + <img src="'.system_AdminIcons('save.png').'" alt="'._AM_SYSTEM_TEMPLATES_SAVE.'" /> + </button> + '.$restore.' + <button class="btn btn-default" type="button" onclick="$(\'#display_contenu\').hide();$(\'#display_form\').fadeIn(\'fast\');" title="'._AM_SYSTEM_TEMPLATES_CANCEL.'"> + <img src="'.system_AdminIcons('cancel.png').'" alt="'._AM_SYSTEM_TEMPLATES_CANCEL.'" /> + </button> + <div class="clear"></div> + </div> + </div> + </td> + </tr> + <tr> + <td><textarea id="code_mirror" name="templates" rows=24 cols=110>'.$content.'</textarea></td> + </tr> + </table>'; + echo '<input type="hidden" name="path_file" value="'.$path_file.'"><input type="hidden" name="file" value="'.trim($_REQUEST['file']).'"><input type="hidden" name="ext" value="'.$ext.'"></form>'; + break; + + // Restore backup file + case 'tpls_restore': + $extensions = array('.html', '.htm', '.css'); + + //check if the file is inside themes directory + $valid_dir = stristr(realpath($_REQUEST['path_file']), realpath(XOOPS_ROOT_PATH . '/themes')); + + $old_file = $_REQUEST['path_file'].'.back'; + $new_file = $_REQUEST['path_file']; + + $extension_verif = strrchr($new_file, '.'); + if ($valid_dir && in_array($extension_verif, $extensions) && file_exists($old_file) && file_exists($new_file) ) { + if (unlink($new_file)) { + if (rename($old_file, $new_file)) { + xoops_result(_AM_SYSTEM_TEMPLATES_RESTORE_OK); + exit(); + } + } + } + xoops_error(_AM_SYSTEM_TEMPLATES_RESTORE_NOTOK); + break; + +} Added: XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/admin/tplsets/main.php =================================================================== --- XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/admin/tplsets/main.php (rev 0) +++ XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/admin/tplsets/main.php 2015-02-15 10:02:48 UTC (rev 12979) @@ -0,0 +1,371 @@ +<?php +// $Id: main.php 12036 2013-09-14 04:58:55Z beckmi $ +// ------------------------------------------------------------------------ // +// XOOPS - PHP Content Management System // +// Copyright (c) 2000 XOOPS.org // +// <http://www.xoops.org/> // +// ------------------------------------------------------------------------ // +// This program is free software; you can redistribute it and/or modify // +// it under the terms of the GNU General Public License as published by // +// the Free Software Foundation; either version 2 of the License, or // +// (at your option) any later version. // +// // +// 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. See the // +// GNU General Public License for more details. // +// // +// You should have received a copy of the GNU General Public License // +// along with this program; if not, write to the Free Software // +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // +// ------------------------------------------------------------------------ // +// Author: Kazumi Ono (AKA onokazu) // +// URL: http://www.myweb.ne.jp/, http://www.xoops.org/, http://jp.xoops.org/ // +// Project: The XOOPS Project // +// ------------------------------------------------------------------------- // + +// Check users rights +if ( !is_object($GLOBALS['xoopsUser']) || !is_object($GLOBALS['xoopsModule']) || !$GLOBALS['xoopsUser']->isAdmin($GLOBALS['xoopsModule']->mid()) ) exit( _NOPERM ); + +// Get Action type +$op = system_CleanVars ( $_REQUEST, 'op', 'default', 'string' ); + +// Define main template +$xoopsOption['template_main'] = 'system_templates.html'; +// Call Header +xoops_cp_header(); +// Define scripts +$xoTheme->addScript('browse.php?Frameworks/jquery/jquery.js'); +$xoTheme->addScript('browse.php?Frameworks/jquery/plugins/jquery.ui.js'); +$xoTheme->addScript('modules/system/js/jquery.easing.js'); +$xoTheme->addScript('modules/system/js/jqueryFileTree.js'); +$xoTheme->addScript('modules/system/js/admin.js'); +$xoTheme->addScript('modules/system/js/templates.js'); +$xoTheme->addScript('modules/system/js/code_mirror/codemirror.js'); +// Define Stylesheet +$xoTheme->addStylesheet( XOOPS_URL . '/modules/system/css/admin.css'); +$xoTheme->addStylesheet( XOOPS_URL . '/modules/system/css/code_mirror/docs.css'); +// Define Breadcrumb and tips +$xoBreadCrumb->addLink( _AM_SYSTEM_TEMPLATES_NAV_MAIN, system_adminVersion('tplsets', 'adminpath') ); + +switch ($op) { + //index + default: + // Assign Breadcrumb menu + $xoBreadCrumb->addHelp( system_adminVersion('tplsets', 'help') ); + $xoBreadCrumb->addTips( _AM_SYSTEM_TEMPLATES_NAV_TIPS ); + $xoBreadCrumb->render(); + + $GLOBALS['xoopsTpl']->assign('index', true); + + $form = new XoopsThemeForm(_AM_SYSTEM_TEMPLATES_GENERATE, "form", 'admin.php?fct=tplsets', "post", true); + + $ele = new XoopsFormSelect(_AM_SYSTEM_TEMPLATES_SET, 'tplset', $GLOBALS['xoopsConfig']['template_set']); + $tplset_handler =& xoops_gethandler('tplset'); + $tplsetlist = $tplset_handler->getList(); + asort($tplsetlist); + foreach ($tplsetlist as $key => $name) { + $ele->addOption($key, $name); + } + $form->addElement($ele); + $form->addElement(new XoopsFormSelectTheme(_AM_SYSTEM_TEMPLATES_SELECT_THEME, 'select_theme', 1, 5), true); + $form->addElement(new XoopsFormRadioYN(_AM_SYSTEM_TEMPLATES_FORCE_GENERATED, 'force_generated', 0, _YES, _NO), true); + + $modules = new XoopsFormSelect(_AM_SYSTEM_TEMPLATES_SELECT_MODULES, 'select_modules'); + $module_handler =& xoops_gethandler('module'); + $criteria = new CriteriaCompo(new Criteria('isactive', 1)); + $moduleslist = $module_handler->getList($criteria, true); + $modules->addOption(0, _AM_SYSTEM_TEMPLATES_ALL_MODULES); + $modules->addOptionArray($moduleslist); + $form->addElement($modules, true); + + $form->addElement(new XoopsFormHidden("active_templates", "0")); + $form->addElement(new XoopsFormHidden("active_modules", "0")); + $form->addElement(new XoopsFormHidden("op", "tpls_generate_surcharge")); + $form->addElement(new XoopsFormButton("", "submit", _SUBMIT, "submit")); + $xoopsTpl->assign('form', $form->render()); + break; + + //generate surcharge + case 'tpls_generate_surcharge': + if (!$GLOBALS['xoopsSecurity']->check()) { + redirect_header('admin.php?fct=tplsets', 3, implode('<br />', $GLOBALS['xoopsSecurity']->getErrors())); + } + // Assign Breadcrumb menu + $xoBreadCrumb->addHelp( system_adminVersion('tplsets', 'help') . '#override' ); + $xoBreadCrumb->addLink( _AM_SYSTEM_TEMPLATES_NAV_FILE_GENERATED ); + $xoBreadCrumb->render(); + + if ($_REQUEST['select_modules'] == '0' || $_REQUEST['active_modules'] == '1') { + //Generate modules + if (isset($_REQUEST['select_theme']) && isset($_REQUEST['force_generated'])) { + //on verifie si le dossier module existe + $theme_surcharge = XOOPS_THEME_PATH.'/'.$_REQUEST['select_theme'].'/modules'; + $indexFile = XOOPS_ROOT_PATH."/modules/system/include/index.html"; + $verif_write = false; + $text = ''; + + if (!is_dir($theme_surcharge)) { + //Creation du dossier modules + + if(!is_dir($theme_surcharge)) + mkdir($theme_surcharge, 0777); + chmod($theme_surcharge, 0777); + copy($indexFile, $theme_surcharge."/index.html"); + } + + $tplset = system_CleanVars($POST, 'tplset', 'default', 'string' ); + + //on cr�e uniquement les templates qui n'existent pas + $module_handler = xoops_gethandler('module'); + $tplset_handler = xoops_gethandler('tplset'); + $tpltpl_handler = xoops_gethandler('tplfile'); + + $criteria = new CriteriaCompo(); + $criteria->add(new Criteria('tplset_name', $tplset)); + $tplsets_arr = $tplset_handler->getObjects(); + $tcount = $tplset_handler->getCount(); + + + $tpltpl_handler = xoops_gethandler('tplfile'); + $installed_mods = $tpltpl_handler->getModuleTplCount($tplset); + + //all templates or only one template + if ($_REQUEST['active_templates'] == 0) { + foreach (array_keys($tplsets_arr) as $i) { + $tplsetname = $tplsets_arr[$i]->getVar('tplset_name'); + $tplstats = $tpltpl_handler->getModuleTplCount($tplsetname); + + if (count($tplstats) > 0) { + foreach ($tplstats as $moddir => $filecount) { + $module =& $module_handler->getByDirname($moddir); + if (is_object($module)) { + // create module folder + if (!is_dir($theme_surcharge.'/'.$module->getVar('dirname'))) { + mkdir($theme_surcharge.'/'.$module->getVar('dirname'), 0777); + chmod($theme_surcharge.'/'.$module->getVar('dirname'), 0777); + copy($indexFile, $theme_surcharge.'/'.$module->getVar('dirname').'/index.html'); + } + + // create block folder + if (!is_dir($theme_surcharge.'/'.$module->getVar('dirname').'/blocks')) { + if(!is_dir($theme_surcharge.'/'.$module->getVar('dirname').'/blocks')) + mkdir($theme_surcharge.'/'.$module->getVar('dirname').'/blocks', 0777); + chmod($theme_surcharge.'/'.$module->getVar('dirname').'/blocks', 0777); + copy($indexFile, $theme_surcharge.'/'.$module->getVar('dirname').'/blocks'.'/index.html'); + } + + $class = "odd"; + $text .= '<table class="table table-bordered"><thead><tr><th colspan="3" align="center">'._AM_SYSTEM_TEMPLATES_MODULES.ucfirst($module->getVar('dirname')).'</th></tr><tr><th align="center">'._AM_SYSTEM_TEMPLATES_TYPES.'</th><th align="center">'._AM_SYSTEM_TEMPLATES_FILES.'</th><th>'._AM_SYSTEM_TEMPLATES_STATUS.'</th></tr></thead><tbody>'; + // create template + $templates =& $tpltpl_handler->find($tplsetname, 'module', null, $moddir); + for ($j=0; $j<count($templates); $j++) { + $filename = $templates[$j]->getVar('tpl_file'); + if ($tplsetname == $tplset) { + $physical_file = XOOPS_THEME_PATH.'/'.$_REQUEST['select_theme'].'/modules/'.$moddir.'/'.$filename; + + $tplfile =& $tpltpl_handler->get($templates[$j]->getVar('tpl_id'), true); + + if (is_object($tplfile)) { + if (!file_exists($physical_file) || $_REQUEST['force_generated'] == 1) { + $open = fopen("".$physical_file."","w+"); + if (fwrite($open, "".$tplfile->getVar('tpl_source', 'n'))) { + $text .= '<tr class="'.$class.'"><td align="center">'._AM_SYSTEM_TEMPLATES_TEMPLATES.'</td><td>'.$physical_file.'</td><td align="center">'; + if (file_exists($physical_file)) { + $text .= '<img width="16" src="'.system_AdminIcons('success.png').'" /></td></tr>'; + } else { + $text .= '<img width="16" src="'.system_AdminIcons('cancel.png').'" /></td></tr>'; + } + $verif_write = true; + } + fclose($open); + $class = ($class == "even") ? "odd" : "even"; + } + } + } + } + + // create block template + $btemplates =& $tpltpl_handler->find($tplsetname, 'block', null, $moddir); + for ($k = 0; $k < count($btemplates); $k++) { + $filename = $btemplates[$k]->getVar('tpl_file'); + if ($tplsetname == $tplset) { + $physical_file = XOOPS_THEME_PATH.'/'.$_REQUEST['select_theme'].'/modules/'.$moddir.'/blocks/'.$filename; + $btplfile =& $tpltpl_handler->get($btemplates[$k]->getVar('tpl_id'), true); + + if (is_object($btplfile)) { + if (!file_exists($physical_file) || $_REQUEST['force_generated'] == 1) { + $open = fopen($physical_file,"w+"); + if (fwrite($open, $btplfile->getVar('tpl_source', 'n'))) { + $text .= '<tr class="'.$class.'"><td align="center">'._AM_SYSTEM_TEMPLATES_BLOCKS.'</td><td>'.$physical_file.'</td><td align="center">'; + if (file_exists($physical_file)) { + $text .= '<img width="16" src="'.system_AdminIcons('success.png').'" /></td></tr>'; + } else { + $text .= '<img width="16" src="'.system_AdminIcons('cancel.png').'" /></td></tr>'; + } + $verif_write = true; + } + fclose($open); + $class = ($class == "even") ? "odd" : "even"; + } + } + } + } + $text .= '</tbody></table>'; + } + } + unset($module); + } + } + } else { + foreach (array_keys($tplsets_arr) as $i) { + $tplsetname = $tplsets_arr[$i]->getVar('tplset_name'); + $tplstats = $tpltpl_handler->getModuleTplCount($tplsetname); + + if (count($tplstats) > 0) { + $moddir = $_REQUEST['select_modules']; + $module =& $module_handler->getByDirname($moddir); + if (is_object($module)) { + // create module folder + if (!is_dir($theme_surcharge.'/'.$module->getVar('dirname'))) { + mkdir($theme_surcharge.'/'.$module->getVar('dirname'), 0777); + chmod($theme_surcharge.'/'.$module->getVar('dirname'), 0777); + copy($indexFile, $theme_surcharge.'/'.$module->getVar('dirname').'/index.html'); + } + + // create block folder + if (!is_dir($theme_surcharge.'/'.$module->getVar('dirname').'/blocks')) { + if(!is_dir($theme_surcharge.'/'.$module->getVar('dirname').'/blocks')) + mkdir($theme_surcharge.'/'.$module->getVar('dirname').'/blocks', 0777); + chmod($theme_surcharge.'/'.$module->getVar('dirname').'/blocks', 0777); + copy($indexFile, $theme_surcharge.'/'.$module->getVar('dirname').'/blocks'.'/index.html'); + } + + $class = "odd"; + $text .= '<table class="table table-bordered"><thead><tr><th colspan="3" align="center">'._AM_SYSTEM_TEMPLATES_MODULES.ucfirst($module->getVar('dirname')).'</th></tr><tr><th align="center">'._AM_SYSTEM_TEMPLATES_TYPES.'</th><th align="center">'._AM_SYSTEM_TEMPLATES_FILES.'</th><th>'._AM_SYSTEM_TEMPLATES_STATUS.'</th></tr></thead><tbody>'; + $select_templates_modules = $_REQUEST['select_templates_modules']; + for ($l=0; $l<count($_REQUEST['select_templates_modules']); $l++) { + // create template + $templates =& $tpltpl_handler->find($tplsetname, 'module', null, $moddir); + for ($j=0; $j<count($templates); $j++) { + $filename = $templates[$j]->getVar('tpl_file'); + if ($tplsetname == $tplset) { + $physical_file = XOOPS_THEME_PATH.'/'.$_REQUEST['select_theme'].'/modules/'.$moddir.'/'.$filename; + + $tplfile =& $tpltpl_handler->get($templates[$j]->getVar('tpl_id'), true); + + if (is_object($tplfile)) { + if (!file_exists($physical_file) || $_REQUEST['force_generated'] == 1) { + if ($select_templates_modules[$l] == $filename) { + $open = fopen("".$physical_file."","w+"); + if (fwrite($open, "".$tplfile->getVar('tpl_source', 'n'))) { + $text .= '<tr class="'.$class.'"><td align="center">'._AM_SYSTEM_TEMPLATES_TEMPLATES.'</td><td>'.$physical_file.'</td><td align="center">'; + if (file_exists($physical_file)) { + $text .= '<img width="16" src="'.system_AdminIcons('success.png').'" /></td></tr>'; + } else { + $text .= '<img width="16" src="'.system_AdminIcons('cancel.png').'" /></td></tr>'; + } + $verif_write = true; + } + fclose($open); + } + $class = ($class == "even") ? "odd" : "even"; + } + } + } + } + + // create block template + $btemplates =& $tpltpl_handler->find($tplsetname, 'block', null, $moddir); + for ($k = 0; $k < count($btemplates); $k++) { + $filename = $btemplates[$k]->getVar('tpl_file'); + if ($tplsetname == $tplset) { + $physical_file = XOOPS_THEME_PATH.'/'.$_REQUEST['select_theme'].'/modules/'.$moddir.'/blocks/'.$filename; + $btplfile =& $tpltpl_handler->get($btemplates[$k]->getVar('tpl_id'), true); + + if (is_object($btplfile)) { + if (!file_exists($physical_file) || $_REQUEST['force_generated'] == 1) { + if ($select_templates_modules[$l] == $filename) { + $open = fopen("".$physical_file."","w+"); + if (fwrite($open, "".$btplfile->getVar('tpl_source', 'n')."")) { + $text .= '<tr class="'.$class.'"><td align="center">'._AM_SYSTEM_TEMPLATES_BLOCKS.'</td><td>'.$physical_file.'</td><td align="center">'; + if (file_exists($physical_file)) { + $text .= '<img width="16" src="'.system_AdminIcons('success.png').'" /></td></tr>'; + } else { + $text .= '<img width="16" src="'.system_AdminIcons('cancel.png').'" /></td></tr>'; + } + $verif_write = true; + } + fclose($open); + } + $class = ($class == "even") ? "odd" : "even"; + } + } + } + } + } + $text .= '</tbody></table>'; + } + unset($module); + } + } + } + $xoopsTpl->assign('infos', $text); + $xoopsTpl->assign('verif', $verif_write); + } else { + redirect_header("admin.php?fct=tplsets", 2, _AM_SYSTEM_TEMPLATES_SAVE); + } + } else { + // Generate one module + $GLOBALS['xoopsTpl']->assign('index', true); + + $tplset = system_CleanVars($POST, 'tplset', 'default', 'string' ); + + $form = new XoopsThemeForm(_AM_SYSTEM_TEMPLATES_SELECT_TEMPLATES, "form", 'admin.php?fct=tplsets', "post", true); + + $tpltpl_handler =& xoops_gethandler('tplfile'); + $templates_arr =& $tpltpl_handler->find($tplset, '', null, $_REQUEST['select_modules']); + + $modules = new XoopsFormSelect(_AM_SYSTEM_TEMPLATES_SELECT_TEMPLATES, 'select_templates_modules', null, 10, true); + foreach (array_keys($templates_arr) as $i) { + $modules->addOption($templates_arr[$i]->getVar('tpl_file')); + } + $form->addElement($modules); + + $form->addElement(new XoopsFormHidden("active_templates", "1")); + $form->addElement(new XoopsFormHidden("force_generated", $_REQUEST['force_generated'])); + $form->addElement(new XoopsFormHidden("select_modules", $_REQUEST['select_modules'])); + $form->addElement(new XoopsFormHidden("active_modules", "1")); + $form->addElement(new XoopsFormHidden("select_theme", $_REQUEST['select_theme'])); + $form->addElement(new XoopsFormHidden("op", "tpls_generate_surcharge")); + $form->addElement(new XoopsFormButton("", "submit", _SUBMIT, "submit")); + $xoopsTpl->assign('form', $form->render()); + } + break; + + // save + case 'tpls_save': + $path_file = $_REQUEST['path_file']; + if (isset($path_file)) { + // copy file + $copy_file = $path_file; + copy($copy_file, $path_file.'.back'); + // Save modif + if (isset($_REQUEST['templates'])) { + $open = fopen("".$path_file."","w+"); + if (!fwrite($open, utf8_encode(stripslashes($_REQUEST['templates'])))) { + redirect_header("admin.php?fct=tplsets", 2, _AM_SYSTEM_TEMPLATES_ERROR); + } + fclose($open); + } + } + redirect_header("admin.php?fct=tplsets", 2, _AM_SYSTEM_TEMPLATES_SAVE); + break; +} +// Call Footer +xoops_cp_footer(); Added: XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/admin/users/main.php =================================================================== --- XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/admin/users/main.php (rev 0) +++ XoopsCore/branches/2.5.x/2.5.8_timgno/htdocs/modules/system/admin/users/main.php 2015-02-15 10:02:48 UTC (rev 12979) @@ -0,0 +1,865 @@ +<?php +// $Id: main.php 12036 2013-09-14 04:58:55Z beckmi $ +// ------------------------------------------------------------------------ // +// XOOPS - PHP Content Management System // +// Copyright (c) 2000 XOOPS.org // +// <http://www.xoops.org/> // +// ------------------------------------------------------------------------ // +// This program is free software; you can redistribute it and/or modify // +// it under the terms of the GNU General Public License as published by // +// the Free Software Foundation; either version 2 of the License, or // +// (at your option) any later version. // +// // +// 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. See the // +// GNU General Public License for more details. // +// // +// You should have received a copy of the GNU General Public License // +// along with this program; if not, write to the Free Software // +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // +// ------------------------------------------------------------------------ // +// Author: Kazumi Ono (AKA onokazu) // +// URL: http://www.myweb.ne.jp/, http://www.xoops.org/, http://jp.xoops.org/ // +// Project: The XOOPS Project // +// ------------------------------------------------------------------------- // + +// Check users rights +if ( !is_object($xoopsUser) || !is_object($xoopsModule) || !$xoopsUser->isAdmin($xoopsModule->mid()) ) exit( _NOPERM ); + +include_once XOOPS_ROOT_PATH . "/modules/system/admin/users/users.php"; +// Get Action type +$op = system_CleanVars ( $_REQUEST, 'op', 'default', 'string' ); + +$member_handler =& xoops_gethandler('member', 'system'); +// Define main template +$xoopsOption['template_main'] = 'system_users.html'; +// Call Header +xoops_cp_header(); + +$myts =& MyTextSanitizer::getInstance(); +// Define Stylesheet +$xoTheme->addStylesheet( XOOPS_URL . '/modules/system/css/admin.css'); +$xoTheme->addStylesheet( XOOPS_URL . '/modules/system/css/ui/' . xoops_getModuleOption('jquery_theme', 'system') . '/ui.all.css'); +// Define scripts +$xoTheme->addScript('modules/system/js/admin.js'); +// Define Breadcrumb and tips +$xoBreadCrumb->addLink( _AM_SYSTEM_USERS_NAV_MAIN, system_adminVersion('users', 'adminpath') ); + +$uid = system_CleanVars($_REQUEST, 'uid', 0); +switch ($op) { + + // Edit user + case 'users_edit': + // Assign Breadcrumb menu + $xoBreadCrumb->addHelp( system_adminVersion('users', 'help') . '#edit' ); + $xoBreadCrumb->addLink( _AM_SYSTEM_USERS_NAV_EDIT_USER ); + $xoBreadCrumb->render(); + form_user(false, $uid); + break; + + // Add user + case 'users_add': + // Assign Breadcrumb menu + $xoBreadCrumb->addHelp( system_adminVersion('users', 'help') . '#add' ); + $xoBreadCrumb->addLink( _AM_SYSTEM_USERS_NAV_ADD_USER ); + $xoBreadCrumb->render(); + form_user(true); + break; + + // Delete user + case 'users_delete': + $xoBreadCrumb->render(); + $user =& $member_handler->getUser($uid); + if (isset($_REQUEST['ok']) && $_REQUEST['ok'] == 1) { + if (!$GLOBALS['xoopsSecurity']->check()) { + redirect_header("admin.php?fct=users", 3, implode('<br />', $GLOBALS['xoopsSecurity']->getErrors())); + } + + $groups = $user->getGroups(); + if (in_array(XOOPS_GROUP_ADMIN, $groups)) { + xoops_error( sprintf( _AM_SYSTEM_USERS_NO_ADMINSUPP, $user->getVar("uname")) ); + } elseif (!$member_handler->deleteUser($user)) { + xoops_error( sprintf( _AM_SYSTEM_USERS_NO_SUPP, $user->getVar("uname")) ); + } else { + $online_handler =& xoops_gethandler('online'); + $online_handler->destroy($uid); + // RMV-NOTIFY + xoops_notification_deletebyuser($uid); + redirect_header("admin.php?fct=users",1,_AM_SYSTEM_DBUPDATED); + } + } else { + //Assign Breadcrumb menu + $xoBreadCrumb->addHelp( system_adminVersion('users', 'help') . '#delete' ); + $xoBreadCrumb->addLink( _AM_SYSTEM_USERS_NAV_DELETE_USER ); + $xoBreadCrumb->render(); + xoops_confirm(array('ok' => 1, 'uid' => $uid, 'op' => 'users_delete'), $_SERVER['REQUEST_URI'], sprintf(_AM_SYSTEM_USERS_FORM_SURE_DEL, $user->getVar('uname'))); + } + break; + + // Delete users + case "action_group": + if ((@isset($_REQUEST['memberslist_id']) || @$_REQUEST['memberslist_id'] != '')) { + $xoBreadCrumb->render(); + $error = ''; + foreach ($_REQUEST['memberslist_id'] as $del) { + $del = intval($del); + $user =& $member_handler->getUser($del); + $groups = $user->getGroups(); + if (in_array(XOOPS_GROUP_ADMIN, $groups)) { + $error .= sprintf( _AM_SYSTEM_USERS_NO_ADMINSUPP, $user->getVar("uname")); + } elseif (!$member_handler->deleteUser($user)) { + $error .= sprintf( _AM_SYSTEM_USERS_NO_SUPP, $user->getVar("uname")); + } else { + $online_handler =& xoops_gethandler('online'); + $online_handler->destroy($del); + // RMV-NOTIFY + xoops_notification_deletebyuser($del); + } + } + if ($error != '') { + redirect_header("admin.php?fct=users", 3, sprintf( _AM_SYSTEM_USERS_ERROR,$error ) ); + } else { + redirect_header("admin.php?fct=users", 1, _AM_SYSTEM_DBUPDATED); + } + } + break; + + // Save user + case "users_save": + global $xoopsConfig, $xoopsModule, $xoopsUser; + + if (isset($_REQUEST['uid'])) { + //Update user + if (!$GLOBALS['xoopsSecurity']->check()) { + redirect_header("admin.php?fct=users", 3, implode('<br />', $GLOBALS['xoopsSecurity']->getErrors())); + } + // RMV-NOTIFY + $user_avatar = $theme = null; + if ( !isset( $_REQUEST['attachsig'] ) ) $attachsig = null; + if ( !isset( $_REQUEST['user_viewemail'] ) ) $user_viewemail = null; + + $edituser =& $member_handler->getUser($uid); + if ($edituser->getVar('uname', 'n') != $_REQUEST['username'] && $member_handler->getUserCount(new Criteria('uname', $myts->addSlashes($_REQUEST['username']))) > 0) { + xoops_cp_header(); + xoops_error( sprintf( _AM_SYSTEM_USERS_PSEUDO_ERROR, htmlspecialchars($_REQUEST['username'])) ); + xoops_cp_footer(); + } elseif ( $edituser->getVar('email', 'n') != $_REQUEST['email'] && $member_handler->getUserCount( new Criteria( 'email', $myts->addSlashes($_REQUEST['email']) ) ) > 0 ) { + xoops_cp_header(); + xoops_error( sprintf( _AM_SYSTEM_USERS_MAIL_ERROR, htmlspecialchars($_REQUEST['email'])) ); + xoops_cp_footer(); + } else { + $edituser->setVar("name", $_REQUEST['name']); + $edituser->setVar("uname", $_REQUEST['username']); + $edituser->setVar("email", $_REQUEST['email']); + $url = isset( $_REQUEST['url'] ) ? formatURL( $_REQUEST['url'] ) : ''; + $edituser->setVar( "url", $url ); + $edituser->setVar("user_icq", $_REQUEST['user_icq']); + $edituser->setVar("user_from", $_REQUEST['user_from']); + $edituser->setVar("user_sig", $_REQUEST['user_sig']); + $user_viewemail = (isset($_REQUEST['user_viewemail']) && $_REQUEST['user_viewemail'] == 1) ? 1 : 0; + $edituser->setVar("user_viewemail", $user_viewemail); + $edituser->setVar("user_aim", $_REQUEST['user_aim']); + $edituser->setVar("user_yim", $_REQUEST['user_yim']); + $edituser->setVar("user_msnm", $_REQUEST['user_msnm']); + $attachsig = ( isset( $_REQUEST['attachsig'] ) && $_REQUEST['attachsig'] == 1 ) ? 1 : 0; + $edituser->setVar("attachsig", $attachsig); + $edituser->setVar("timezone_offset", $_REQUEST['timezone_offset']); + $edituser->setVar("uorder", $_REQUEST['uorder']); + $edituser->setVar("umode", $_REQUEST['umode']); + // RMV-NOTIFY + $edituser->setVar("notify_method", $_REQUEST['notify_method']); + $edituser->setVar("notify_mode", $_REQUEST['notify_mode']); + $edituser->setVar("bio", $_REQUEST['bio']); + $edituser->setVar("rank", $_REQUEST['rank']); + $edituser->setVar("user_occ", $_REQUEST['user_occ']); + $edituser->setVar("user_intrest", $_REQUEST['user_intrest']); + $edituser->setVar('user_mailok', $_REQUEST['user_mailok']); + if ($_REQUEST['pass2'] != "") { + if ($_REQUEST['password'] != $_REQUEST['pass2']) { + xoops_cp_header(); + echo " + <strong>"._AM_SYSTEM_USERS_STNPDNM."</strong>"; + xoops_cp_footer(); + exit(); + } + $edituser->setVar("pass", md5($_REQUEST['password'])); + } + if (!$member_handler->insertUser($edituser)) { + xoops_cp_header(); + echo $edituser->getHtmlErrors(); + xoops_cp_footer(); + } else { + if ($_REQUEST['groups'] != array()) { + global $xoopsUser; + $oldgroups = $edituser->getGroups(); + //If the edited user is the current user and the current user WAS in the webmaster's group and is NOT in the new groups array + if ($edituser->getVar('uid') == $xoopsUser->getVar('uid') && (in_array(XOOPS_GROUP_ADMIN, $oldgroups)) && !(in_array(XOOPS_GROUP_ADMIN, $_REQUEST['groups']))) { + //Add the webmaster's group to the groups array to prevent accidentally removing oneself from the webmaster's group + array_push($_REQUEST['groups'], XOOPS_GROUP_ADMIN); + } + $member_handler =& xoops_gethandler('member'); + foreach ($oldgroups as $groupid) { + $member_handler->removeUsersFromGroup($groupid, array($edituser->getVar('uid'))); + } + foreach ($_REQUEST['groups'] as $groupid) { + $member_handler->addUserToGroup($groupid, $edituser->getVar('uid')); + } + } + redirect_header("admin.php?fct=users",1,_AM_SYSTEM_DBUPDATED); + } + } + exit(); + } else { + //Add user + if (!$GLOBALS['xoopsSecurity']->check()) { + redirect_header("admin.php?fct=users", 3, implode('<br />', $GLOBALS['xoopsSecurity']->getErrors())); + } + if (!$_REQUEST['username'] || !$_REQUEST['email'] || !$_REQUEST['password']) { + $adduser_errormsg = _AM_SYSTEM_USERS_YMCACF; + } else { + $member_handler =& xoops_gethandler('member'); + // make sure the username doesnt exist yet + if ($member_handler->getUserCount(new Criteria('uname', $myts->addSlashes($_REQUEST['username']))) > 0) { + $adduser_errormsg = 'User name '. htmlspecialchars($_REQUEST['username']) .' already exists'; + } else { + $newuser =& $member_handler->createUser(); + if ( isset($user_viewemail) ) { + $newuser->setVar("user_viewemail",$_REQUEST['user_viewemail']); + } + if ( isset($attachsig) ) { + $newuser->setVar("attachsig",$_REQUEST['attachsig']); + } + $newuser->setVar("name", $_REQUEST['name']); + $newuser->setVar("uname", $_REQUEST['username']); + $newuser->setVar("email", $_REQUEST['email']); + $newuser->setVar("url", formatURL($_REQUEST['url'])); + $newuser->setVar("user_avatar",'blank.gif'); + $newuser->setVar('user_regdate', time()); + $newuser->setVar("user_icq", $_REQUEST['user_icq']); + $newuser->setVar("user_from", $_REQUEST['user_from']); + $newuser->setVar("user_sig", $_REQUEST['user_sig']); + $newuser->setVar("user_aim", $_REQUEST['user_aim']); + $newuser->setVar("user_yim", $_REQUEST['user_yim']); + $newuser->setVar("user_msnm", $_REQUEST['user_msnm']); + if ($_REQUEST['pass2'] != "") { + if ($_REQUEST['password'] != $_REQUEST['pass2']) { + xoops_cp_header(); + echo "<strong>" . _AM_SYSTEM_USERS_STNPDNM . "</strong>"; + xoops_cp_footer(); + exit(); + } + $newuser->setVar("pass", md5($_REQUEST['password'])); + } + $newuser->setVar("timezone_offset", $_REQUEST['timezone_offset']); + $newuser->setVar("uorder", $_REQUEST['uorder']); + $newuser->setVar("umode", $_REQUEST['umode']); + // RMV-NOTIFY + $newuser->setVar("notify_method", $_REQUEST['notify_method']); + $newuser->setVar("notify_mode", $_REQUEST['notify_mode']); + $newuser->setVar("bio", $_REQUEST['bio']); + $newuser->setVar("rank", $_REQUEST['rank']); + $newuser->setVar("level", 1); + $newuser->setVar("user_occ", $_REQUEST['user_occ']); + $newuser->setVar("user_intrest", $_REQUEST['user_intrest']); + $newuser->setVar('user_mailok', $_REQUEST['user_mailok']); + if (!$member_handler->insertUser($newuser)) { + $adduser_errormsg = _AM_SYSTEM_USERS_CNRNU; + } else { + $groups_failed = array(); + foreach ($_REQUEST['groups'] as $group) { + $group = intval($group); + if (!$member_handler->addUserToGroup($group, $newuser->getVar('uid'))) { + $groups_failed[] = $group; + } + } + if (!empty($groups_failed)) { + $group_names = $member_handler->getGroupList(new Criteria('groupid', "(".implode(", ", $groups_failed).")", 'IN')); + $adduser_errormsg = sprintf(_AM_SYSTEM_USERS_CNRNU2, implode(", ", $group_names)); + } else { + xoops_load("XoopsUserUtility"); + XoopsUserUtility::sendWelcome($newuser); + redirect_header("admin.php?fct=users", 1, _AM_SYSTEM_DBUPDATED); + exit(); + } + } + } + } + xoops_error($adduser_errormsg); + } + break; + + // Activ member + case 'users_active': + if (isset($_REQUEST["uid"])) { + $obj =& $member_handler->getUser($uid); + //echo $_REQUEST["uid"]; + //print_r($obj); + } + $obj->setVar("level", 1); + if ($member_handler->insertUser($obj, true)) { + redirect_header("admin.php?fct=users", 1, _AM_SYSTEM_DBUPDATED); + } + echo $obj->getHtmlErrors(); + break; + + // Synchronize + case 'users_synchronize': + if (isset($_REQUEST['status']) && $_REQUEST['status'] == 1) { + synchronize($$uid, 'user'); + } elseif (isset($_REQUEST['status']) && $_REQUEST['status'] == 2) { + synchronize( '', 'all users'); + } + redirect_header("admin.php?fct=users", 1, _AM_SYSTEM_DBUPDATED); + break; + + default: + // Search and Display + // Define scripts + $xoTheme->addScript('browse.php?Frameworks/jquery/jquery.js'); + $xoTheme->addScript('browse.php?Frameworks/jquery/plugins/jquery.ui.js'); + //table sorting does not work with select boxes + //$xoTheme->addScript('browse.php?Frameworks/jquery/plugins/jquery.tablesorter.js'); + $xoTheme->addScript('modules/system/js/admin.js'); + //Recherche approfondie + + if (isset($_REQUEST['complet_search'])) { + // Assign Breadcrumb menu + $xoBreadCrumb->addLink( _AM_SYSTEM_USERS_NAV_ADVANCED_SEARCH ); + $xoBreadCrumb->addHelp( system_adminVersion('users', 'help') ); + $xoBreadCrumb->addTips( _AM_SYSTEM_USERS_NAV_TIPS ); + $xoBreadCrumb->render(); + + $acttotal = $member_handler->getUserCount(new Criteria('level', 0, '>')); + $inacttotal = $member_handler->getUserCount(new Criteria('level', 0)); + + //$group_select = new XoopsFormSelectGroup(_AM_SYSTEM_USERS_GROUPS, "selgroups", null, false, 1, false); + $group_select = new XoopsFormSelect(_AM_SYSTEM_USERS_GROUPS, "selgroups"); + + $group_handler =& xoops_gethandler('group'); + $group_arr = $group_handler->getObjects(); + $group_select->addOption("", "--------------"); + foreach (array_keys($group_arr) as $i) { + if($group_arr[$i]->getVar("groupid") != 3) + $group_select->addOption("".$group_arr[$i]->getVar("groupid")."", "".$group_arr[$i]->getVar("name").""); + } + + + $uname_text = new XoopsFormText("", "user_uname", 30, 60); + $uname_match = new XoopsFormSelectMatchOption("", "user_uname_match"); + $uname_tray = new XoopsFormElementTray(_AM_SYSTEM_USERS_UNAME, " "); + $uname_tray->addElement($uname_match); + $uname_tray->addElement($uname_text); + $name_text = new XoopsFormText("", "user_name", 30, 60); + $name_match = new XoopsFormSelectMatchOption("", "user_name_match"); + $name_tray = new XoopsFormElementTray(_AM_SYSTEM_USERS_REALNAME, " "); + $name_tray->addElement($name_match); + $name_tray->addElement($name_text); + $email_text = new XoopsFormText("", "user_email", 30, 60); + $email_match = new XoopsFormSelectMatchOption("", "user_email_match"); + $email_tray = new XoopsFormElementTray(_AM_SYSTEM_USERS_EMAIL, " "); + $email_tray->addElement($email_match); + $email_tray->addElement($email_text); + $url_text = new XoopsFormText(_AM_SYSTEM_USERS_URLC, "user_url", 30, 100); + $icq_text = new XoopsFormText("", "user_icq", 30, 100); + $icq_match = new XoopsFormSelectMatchOption("", "user_icq_match"); + $icq_tray = new XoopsFormElementTray(_AM_SYSTEM_USERS_ICQ, " "); + $icq_tray->addElement($icq_match); + $icq_tray->addElement($icq_text); + $aim_text = new XoopsFormText("", "user_aim", 30, 100); + $aim_match = new XoopsFormSelectMatchOption("", "user_aim_match"); + $aim_tray = new XoopsFormElementTray(_AM_SYSTEM_USERS_AIM, " "); + $aim_tray->addElement($aim_match); + $aim_tray->addElement($aim_text); + $yim_text = new XoopsFormText("", "user_yim", 30, 100); + $yim_match = new XoopsFormSelectMatchOption("", "user_yim_match"); + $yim_tray = new XoopsFormElementTray(_AM_SYSTEM_USERS_YIM, " "); + $yim_tray->addElement($yim_match); + $yim_tray->addElement($yim_text); + $msnm_text = new XoopsFormText("", "user_msnm", 30, 100); + $msnm_match = new XoopsFormSelectMatchOption("", "user_msnm_match"); + $msnm_tray = new XoopsFormElementTray(_AM_SYSTEM_USERS_MSNM, " "); + $msnm_tray->addElement($msnm_match); + $msnm_tray->addElement($msnm_text); + $location_text = new XoopsFormText(_AM_SYSTEM_USERS_LOCATIONC, "user_from", 30, 100); + $occupation_text = new XoopsFormText(_AM_SYSTEM_USERS_OCCUPATIONC, "user_occ", 30, 100); + $interest_text = new XoopsFormText(_AM_SYSTEM_USERS_INTERESTC, "user_intrest", 30, 100); + + $lastlog_more = new XoopsFormText(_AM_SYSTEM_USERS_LASTLOGMORE, "user_lastlog_more", 10, 5); + $lastlog_less = new XoopsFormText(_AM_SYSTEM_USERS_LASTLOGLESS, "user_lastlog_less", 10, 5); + $reg_more = new XoopsFormText(_AM_SYSTEM_USERS_REGMORE, "user_reg_more", 10, 5); + $reg_less = new XoopsFormText(_AM_SYSTEM_USERS_REGLESS, "user_reg_less", 10, 5); + $posts_more = new XoopsFormText(_AM_SYSTEM_USERS_POSTSMORE, "user_posts_more", 10, 5); + $posts_less = new XoopsFormText(_AM_SYSTEM_USERS_POSTSLESS, "user_posts_less", 10, 5); + $mailok_radio = new XoopsFormRadio(_AM_SYSTEM_USERS_SHOWMAILOK, "user_mailok", "both"); + $mailok_radio->addOptionArray(array("mailok"=>_AM_SYSTEM_USERS_MAILOK, "mailng"=>_AM_SYSTEM_USERS_MAILNG, "both"=>_AM_SYSTEM_USERS_BOTH)); + $type_radio = new XoopsFormRadio(_AM_SYSTEM_USERS_SHOWTYPE, "user_type", "actv"); + $type_radio->addOptionArray(array("actv"=>_AM_SYSTEM_USERS_ACTIVE, "inactv"=>_AM_SYSTEM_USERS_INACTIVE, "both"=>_AM_SYSTEM_USERS_BOTH)); + $sort_select = new XoopsFormSelect(_AM_SYSTEM_USERS_SORT, "user_sort"); + $sort_select->addOptionArray(array("uname"=>_AM_SYSTEM_USERS_UNAME,"email"=>_AM_SYSTEM_USERS_EMAIL,"last_login"=>_AM_SYSTEM_USERS_LASTLOGIN,"user_regdate"=>_AM_SYSTEM_USERS_REGDATE,"posts"=>_AM_SYSTEM_USERS_POSTS)); + $order_select = new XoopsFormSelect(_AM_SYSTEM_USERS_ORDER, "user_order"); + $order_select->addOptionArray(array("ASC"=>_AM_SYSTEM_USERS_ASC,"DESC"=>_AM_SYSTEM_USERS_DESC)); + $limit_text = new XoopsFormText(_AM_SYSTEM_USERS_LIMIT, "user_limit", 6, 2, 20); + $submit_button = new XoopsFormButton("", "user_submit", _SUBMIT, "submit"); + + $form = new XoopsThemeForm(_AM_SYSTEM_USERS_FINDUS, "uesr_findform", "admin.php?fct=users", 'post', true); + $form->addElement($uname_tray); + $form->addElement($name_tray); + $form->addElement($email_tray); + $form->addElement($group_select); + $form->addElement($icq_tray); + $form->addElement($aim_tray); + $form->addElement($yim_tray); + $form->addElement($msnm_tray); + $form->addElement($url_text); + $form->addElement($location_text); + $form->addElement($occupation_text); + $form->addElement($interest_text); + $form->addElement($lastlog_more); + $form->addElement($lastlog_less); + $form->addElement($reg_more); + $form->addElement($reg_less); + $form->addElement($posts_more); + $form->addElement($posts_less); + $form->addElement($mailok_radio); + $form->addElement($type_radio); + $form->addElement($sort_select); + $form->addElement($order_select); + $form->addElement($fct_hidden); + $form->addElement($limit_text); + $form->addElement($op_hidden); + + // if this is to find users for a specific group + if ( !empty($_GET['group']) && intval($_GET['group']) > 0 ) { + $group_hidden = new XoopsFormHidden("group", intval($_GET['group'])); + $form->addElement($group_hidden); + } + $form->addElement($submit_button); + $form->display(); + } else { + //Display data + // Assign Breadcrumb menu + $xoBreadCrumb->addHelp( system_adminVersion('users', 'help') ); + $xoBreadCrumb->addTips( _AM_SYSTEM_USERS_NAV_TIPS ); + $xoBreadCrumb->render(); + + $requete_search = '<br /><br /><strong>See search request: </strong><br /><br />'; + $requete_pagenav = ''; + + $criteria = new CriteriaCompo(); + if ( !empty($_REQUEST['user_uname']) ) { + $match = (!empty($_REQUEST['user_uname_match'])) ? intval($_REQUEST['user_uname_match']) : XOOPS_MATCH_START; + switch ($match) { + case XOOPS_MATCH_START: + $criteria->add(new Criteria('uname', $myts->addSlashes(trim($_REQUEST['user_uname'])).'%', 'LIKE')); + ... [truncated message content] |