Exemple #1
0
function editcat($showmenu = false, $categoryid = 0, $nb_subcats = 4, $categoryObj = null)
{
    global $xoopsDB, $smartsection_category_handler, $xoopsUser, $myts, $xoopsConfig, $xoopsModuleConfig, $xoopsModule;
    include_once XOOPS_ROOT_PATH . '/modules/smartsection/class/form-editcategory.php';
    // if there is a parameter, and the id exists, retrieve data: we're editing a category
    if ($categoryid != 0) {
        // Creating the category object for the selected category
        $categoryObj = $smartsection_category_handler->get($categoryid);
        if ($categoryObj->notLoaded()) {
            redirect_header("category.php", 1, _AM_SSECTION_NOCOLTOEDIT);
            exit;
        }
    } else {
        if (!$categoryObj) {
            $categoryObj = $smartsection_category_handler->create();
        }
    }
    if ($categoryid != 0) {
        if ($showmenu) {
            smartsection_adminMenu(1, _AM_SSECTION_CATEGORIES . " > " . _AM_SSECTION_EDITING);
        }
        echo "<br />\n";
        smartsection_collapsableBar('edittable', 'edittableicon', _AM_SSECTION_EDITCOL, _AM_SSECTION_CATEGORY_EDIT_INFO);
    } else {
        if ($showmenu) {
            smartsection_adminMenu(1, _AM_SSECTION_CATEGORIES . " > " . _AM_SSECTION_CREATINGNEW);
        }
        //echo "<br />\n";
        smartsection_collapsableBar('createtable', 'createtableicon', _AM_SSECTION_CATEGORY_CREATE, _AM_SSECTION_CATEGORY_CREATE_INFO);
    }
    $sform =& new SmartsectionForm_EditCategory($categoryObj, $nb_subcats);
    if (!$categoryid) {
        $sform->display();
        smartsection_close_collapsable('createtable', 'createtableicon');
    } else {
        $sform->display();
        smartsection_close_collapsable('edittable', 'edittableicon');
    }
    //Added by fx2024
    if ($categoryid) {
        include_once XOOPS_ROOT_PATH . "/modules/smartsection/include/displaysubcats.php";
        include_once XOOPS_ROOT_PATH . "/modules/smartsection/include/displayitems.php";
    }
    //end of fx2024 code
}
Exemple #2
0
     echo "<br />";
     if ($error == true) {
         $endMsg = _AM_SSECTION_IMPORT_ERROR;
     } else {
         $endMsg = _AM_SSECTION_IMPORT_SUCCESS;
     }
     echo $endMsg;
     echo "<br /><br />";
     echo "<a href='import.php'>" . _AM_SSECTION_IMPORT_BACK . "</a>";
     echo "<br /><br />";
     break;
 case "default":
 default:
     $importfile = 'none';
     smartsection_xoops_cp_header();
     smartsection_adminMenu(-1, _AM_SSECTION_IMPORT);
     smartsection_collapsableBar('import', 'importicon', _AM_SSECTION_IMPORT_TITLE, _AM_SSECTION_IMPORT_INFO);
     include_once XOOPS_ROOT_PATH . '/class/xoopsformloader.php';
     $module_handler =& xoops_gethandler('module');
     // WF-Section
     $moduleObj = $module_handler->getByDirname('wfsection');
     if ($moduleObj) {
         $from_module_version = round($moduleObj->getVar('version') / 100, 2);
         if ($from_module_version == 1.5 || $from_module_version == 1.04 || $from_module_version == 1.01 || $from_module_version == 2.07 || $from_module_version == 2.06) {
             $importfile_select_array["wfsection"] = "WF-Section " . $from_module_version;
             $wfs_version = $from_module_version;
         }
     }
     // News
     $moduleObj = $module_handler->getByDirname('news');
     if ($moduleObj) {
Exemple #3
0
    echo "<td width='40px' class='bg3' align='center'><b>" . _AM_SSECTION_ITEMID . "</b></td>";
    echo "<td width='100px' class='bg3' align='center'><b>" . _AM_SSECTION_ITEMCAT . "</b></td>";
    echo "<td class='bg3' align='center'><b>" . _AM_SSECTION_TITLE . "</b></td>";
    echo "<td width='90px' class='bg3' align='center'><b>" . _AM_SSECTION_CREATED . "</b></td>";
    echo "<td width='90px' class='bg3' align='center'><b>" . _AM_SSECTION_STATUS . "</b></td>";
    echo "<td width='90px' class='bg3' align='center'><b>" . _AM_SSECTION_ACTION . "</b></td>";
    echo "</tr>";
}
// Code for the page
include_once XOOPS_ROOT_PATH . "/class/xoopslists.php";
include_once XOOPS_ROOT_PATH . '/class/pagenav.php';
global $smartsection_category_handler, $smartsection_item_handler;
$startentry = isset($_GET['startentry']) ? intval($_GET['startentry']) : 0;
smartsection_xoops_cp_header();
global $xoopsUser, $xoopsConfig, $xoopsModuleConfig, $xoopsModule;
smartsection_adminMenu(0, _AM_SSECTION_INDEX);
// Total ITEMs -- includes everything on the table
$totalitems = $smartsection_item_handler->getItemsCount();
// Total categories
$totalcategories = $smartsection_category_handler->getCategoriesCount(-1);
// Total submitted ITEMs
$totalsubmitted = $smartsection_item_handler->getItemsCount(-1, array(_SSECTION_STATUS_SUBMITTED));
// Total published ITEMs
$totalpublished = $smartsection_item_handler->getItemsCount(-1, array(_SSECTION_STATUS_PUBLISHED));
// Total offline ITEMs
$totaloffline = $smartsection_item_handler->getItemsCount(-1, array(_SSECTION_STATUS_OFFLINE));
// Total rejected
$totalrejected = $smartsection_item_handler->getItemsCount(-1, array(_SSECTION_STATUS_REJECTED));
// Check Path Configuration
if (smartsection_admin_getPathStatus('root', true) < 0 || smartsection_admin_getPathStatus('images', true) < 0 || smartsection_admin_getPathStatus('images/category', true) < 0 || smartsection_admin_getPathStatus('images/item', true) < 0 || smartsection_admin_getPathStatus('content', true) < 0) {
    createDir();
    foreach (array_keys($block_arr) as $i) {
        $item_list[$block_arr[$i]->getVar("bid")] = $block_arr[$i]->getVar("title");
    }
    $form = new MyXoopsGroupPermForm(_MD_AM_ADGS, 1, 'block_read', '');
    if ($target_mid > 1) {
        $form->addAppendix('module_admin', $target_mid, $target_mname . ' ' . _AM_ACTIVERIGHTS);
        $form->addAppendix('module_read', $target_mid, $target_mname . ' ' . _AM_ACCESSRIGHTS);
    }
    foreach ($item_list as $item_id => $item_name) {
        $form->addItem($item_id, $item_name);
    }
    echo $form->render();
    smartsection_close_collapsable('groupstable', 'groupsicon');
}
if (!empty($_POST['submit'])) {
    if (!$xoopsGTicket->check(true, 'myblocksadmin')) {
        redirect_header(XOOPS_URL . '/', 3, $xoopsGTicket->getErrors());
    }
    include "mygroupperm.php";
    redirect_header(XOOPS_URL . "/modules/" . $xoopsModule->dirname() . "/admin/myblocksadmin.php{$query4redirect}", 1, _MD_AM_DBUPDATED);
}
smartsection_xoops_cp_header();
if (file_exists('./mymenu.php')) {
    include './mymenu.php';
}
smartsection_adminMenu(4, _AM_SSECTION_BLOCKSANDGROUPS);
if (!empty($block_arr)) {
    list_blocks();
}
list_groups();
xoops_cp_footer();
Exemple #5
0
* Author: The SmartFactory <www.smartfactory.ca>
* Licence: GNU
*/
include_once "admin_header.php";
include_once XOOPS_ROOT_PATH . '/class/xoopsform/grouppermform.php';
if (!$smartsection_isAdmin) {
    redirect_header("javascript:history.go(-1)", 1, _NOPERM);
    exit;
}
$op = '';
switch ($op) {
    case "default":
    default:
        global $xoopsDB, $xoopsModule;
        smartsection_xoops_cp_header();
        smartsection_adminMenu(3, _AM_SSECTION_PERMISSIONS);
        // View Categories permissions
        $item_list_view = array();
        $block_view = array();
        smartsection_collapsableBar('permissionstable', 'permissionsicon', _AM_SSECTION_PERMISSIONSVIEWMAN, _AM_SSECTION_VIEW_CATS);
        $result_view = $xoopsDB->query("SELECT categoryid, name FROM " . $xoopsDB->prefix("smartsection_categories") . " ");
        if ($xoopsDB->getRowsNum($result_view)) {
            while ($myrow_view = $xoopsDB->fetcharray($result_view)) {
                $item_list_view['cid'] = $myrow_view['categoryid'];
                $item_list_view['title'] = $myrow_view['name'];
                $form_view = new XoopsGroupPermForm("", $xoopsModule->getVar('mid'), "category_read", "");
                $block_view[] = $item_list_view;
                foreach ($block_view as $itemlists) {
                    $form_view->addItem($itemlists['cid'], $myts->displayTarea($itemlists['title']));
                }
            }
Exemple #6
0
}
switch ($op) {
    case 'replacepermissions':
        $categoriesObj = $smartsection_category_handler->getObjects();
        $groups_read = isset($_POST['groups_read']) ? $_POST['groups_read'] : array();
        foreach ($categoriesObj as $categoryObj) {
            smartsection_saveCategory_Permissions($groups_read, $categoryObj->categoryid(), 'category_read');
            smartsection_overrideItemsPermissions($groups_read, $categoryObj->categoryid());
        }
        redirect_header("index.php", 3, _AM_SSECTION_PERMISSIONS_UPDATED);
        exit;
        break;
    case "default":
    default:
        smartsection_xoops_cp_header();
        smartsection_adminMenu(-1, _AM_SSECTION_TOOLS);
        smartsection_collapsableBar('tools1', 'tools1icon', _AM_SSECTION_CONFIGURE_READ_PERMISSIONS, _AM_SSECTION_CONFIGURE_READ_PERMISSIONS_EXP);
        include_once XOOPS_ROOT_PATH . "/class/xoopsformloader.php";
        $sform = new XoopsThemeForm(_AM_SSECTION_FULLACCESS, "form", xoops_getenv('PHP_SELF'));
        $sform->setExtra('enctype="multipart/form-data"');
        // READ PERMISSIONS
        $groups_read_checkbox = new XoopsFormCheckBox(_AM_SSECTION_PERMISSIONS_CAT_READ, 'groups_read[]');
        $member_handler =& xoops_gethandler('member');
        foreach ($member_handler->getGroupList() as $group_id => $group_name) {
            if ($group_id != XOOPS_GROUP_ADMIN) {
                $groups_read_checkbox->addOption($group_id, $group_name);
            }
        }
        $sform->addElement($groups_read_checkbox);
        $button_tray = new XoopsFormElementTray('', '');
        $button_tray->addElement(new XoopsFormButton('', 'replacepermissions', _AM_SSECTION_REPLACE_PERMISSIONS, 'submit'));
Exemple #7
0
function upgradeDB()
{
    global $xoopsModule, $dbupdater;
    $xoopsDB =& Database::getInstance();
    //1. Determine previous release
    //   *** Update this in sql/mysql.sql for each release **
    if (!smartsection_TableExists('smartsection_meta')) {
        $ver = '0.93';
    } else {
        if (!($ver = smartsection_GetMeta('version'))) {
            exit(_AM_SSECTION_DB_VERSION_ERR);
        }
    }
    $mid = $xoopsModule->getVar('mid');
    xoops_cp_header();
    smartsection_adminMenu(-1, _AM_SSECTION_DB_UPDATE_DB);
    echo "<h2>" . _AM_SSECTION_DB_UPDATE_DB . "</h2>";
    $ret = true;
    //2. Do All Upgrades necessary to make current
    //   Break statements are omitted on purpose
    switch ($ver) {
        /// SMARTSECTION 0.93 ////////////////////////////////////////////////
        case '0.93':
            set_time_limit(60);
            printf("<h3>" . _AM_SSECTION_DB_UPDATE_TO . "</h3>", '1.0');
            echo "<ul>";
            // Create table smartsection_meta
            $table = new SmartsectionTable('smartsection_meta');
            $table->setStructure("CREATE TABLE %s (\n        \t\t\t\t\t\tmetakey varchar(50) NOT NULL default '',\n        \t\t\t\t\t\tmetavalue varchar(255) NOT NULL default '',\n        \t\t\t\t\t\tPRIMARY KEY (metakey))\n        \t\t\t\t\t\tTYPE=MyISAM;");
            $table->setData(sprintf("'version', %s", $xoopsDB->quoteString($ver)));
            $ret = $ret && $dbupdater->updateTable($table);
            unset($table);
            // Edit fields in smartsection_categories
            $table = new SmartsectionTable('smartsection_categories');
            $table->addAlteredField('categoryid', "`categoryid` INT( 11 ) NOT NULL AUTO_INCREMENT");
            $table->addAlteredField('parentid', "`parentid` INT( 11 ) DEFAULT '0' NOT NULL");
            $ret = $dbupdater->updateTable($table) && $ret;
            unset($table);
            // Edit fields in smartsection_items
            $table = new SmartsectionTable('smartsection_items');
            $table->addAlteredField('categoryid', "`categoryid` INT( 11 ) DEFAULT '0' NOT NULL");
            $table->addAlteredField('itemid', "`itemid` INT( 11 ) NOT NULL AUTO_INCREMENT");
            $ret = $dbupdater->updateTable($table) && $ret;
            unset($table);
            // Edit fields in smartsection_files
            $table = new SmartsectionTable('smartsection_files');
            $table->addAlteredField('itemid', "`itemid` INT( 11 ) DEFAULT '0' NOT NULL");
            $table->addAlteredField('fileid', "`fileid` INT( 11 )  NOT NULL AUTO_INCREMENT");
            $ret = $dbupdater->updateTable($table) && $ret;
            unset($table);
            echo "</ul>";
            /// SMARTSECTION 1.0 ////////////////////////////////////////////////
        /// SMARTSECTION 1.0 ////////////////////////////////////////////////
        case '1.0':
            set_time_limit(60);
            printf("<h3>" . _AM_SSECTION_DB_UPDATE_TO . "</h3>", '1.01');
            echo "<ul>";
            // Edit fields in smartsection_items
            $table = new SmartsectionTable('smartsection_items');
            $table->addAlteredField('body', "`body` LONGTEXT NOT NULL");
            $ret = $dbupdater->updateTable($table) && $ret;
            unset($table);
            echo "</ul>";
            /// SMARTSECTION 1.0.1 ////////////////////////////////////////////////
        /// SMARTSECTION 1.0.1 ////////////////////////////////////////////////
        case '1.01':
            set_time_limit(60);
            printf("<h3>" . _AM_SSECTION_DB_UPDATE_TO . "</h3>", '1.02');
            echo "<ul>";
            // Create table smartsection_mimetypes
            $table = new SmartsectionTable('smartsection_mimetypes');
            $table->setStructure("CREATE TABLE %s (\n  \t\t\t\t\t\t\t  mime_id int(11) NOT NULL auto_increment,\n  \t\t\t\t\t\t\t  mime_ext varchar(60) NOT NULL default '',\n  \t\t\t\t\t\t\t  mime_types text NOT NULL,\n  \t\t\t\t\t\t\t  mime_name varchar(255) NOT NULL default '',\n  \t\t\t\t\t\t\t  mime_admin int(1) NOT NULL default '1',\n  \t\t\t\t\t\t\t  mime_user int(1) NOT NULL default '0',\n  \t\t\t\t\t\t\t  KEY mime_id (mime_id)\n  \t\t\t\t\t\t\t  ) TYPE=MyISAM;");
            $table->setData("1, 'bin', 'application/octet-stream', 'Binary File/Linux Executable', 0, 0");
            $table->setData("2, 'dms', 'application/octet-stream', 'Amiga DISKMASHER Compressed Archive', 0, 0");
            $table->setData("3, 'class', 'application/octet-stream', 'Java Bytecode', 0, 0");
            $table->setData("4, 'so', 'application/octet-stream', 'UNIX Shared Library Function', 0, 0");
            $table->setData("5, 'dll', 'application/octet-stream', 'Dynamic Link Library', 0, 0");
            $table->setData("6, 'hqx', 'application/binhex application/mac-binhex application/mac-binhex40', 'Macintosh BinHex 4 Compressed Archive', 0, 0");
            $table->setData("7, 'cpt', 'application/mac-compactpro application/compact_pro', 'Compact Pro Archive', 0, 0");
            $table->setData("8, 'lha', 'application/lha application/x-lha application/octet-stream application/x-compress application/x-compressed application/maclha', 'Compressed Archive File', 0, 0");
            $table->setData("9, 'lzh', 'application/lzh application/x-lzh application/x-lha application/x-compress application/x-compressed application/x-lzh-archive zz-application/zz-winassoc-lzh application/maclha application/octet-stream', 'Compressed Archive File', 0, 0");
            $table->setData("10, 'sh', 'application/x-shar', 'UNIX shar Archive File', 0, 0");
            $table->setData("11, 'shar', 'application/x-shar', 'UNIX shar Archive File', 0, 0");
            $table->setData("12, 'tar', 'application/tar application/x-tar applicaton/x-gtar multipart/x-tar application/x-compress application/x-compressed', 'Tape Archive File', 0, 0");
            $table->setData("13, 'gtar', 'application/x-gtar', 'GNU tar Compressed File Archive', 0, 0");
            $table->setData("14, 'ustar', 'application/x-ustar multipart/x-ustar', 'POSIX tar Compressed Archive', 0, 0");
            $table->setData("15, 'zip', 'application/zip application/x-zip application/x-zip-compressed application/octet-stream application/x-compress application/x-compressed multipart/x-zip', 'Compressed Archive File', 0, 0");
            $table->setData("16, 'exe', 'application/exe application/x-exe application/dos-exe application/x-winexe application/msdos-windows application/x-msdos-program', 'Executable File', 0, 0");
            $table->setData("17, 'wmz', 'application/x-ms-wmz', 'Windows Media Compressed Skin File', 0, 0");
            $table->setData("18, 'wmd', 'application/x-ms-wmd', 'Windows Media Download File', 0, 0");
            $table->setData("19, 'doc', 'application/msword application/doc appl/text application/vnd.msword application/vnd.ms-word application/winword application/word application/x-msw6 application/x-msword', 'Word Document', 1, 1");
            $table->setData("20, 'pdf', 'application/pdf application/acrobat application/x-pdf applications/vnd.pdf text/pdf', 'Acrobat Portable Document Format', 1, 1");
            $table->setData("21, 'eps', 'application/eps application/postscript application/x-eps image/eps image/x-eps', 'Encapsulated PostScript', 0, 0");
            $table->setData("22, 'ps', 'application/postscript application/ps application/x-postscript application/x-ps text/postscript', 'PostScript', 0, 0");
            $table->setData("23, 'smi', 'application/smil', 'SMIL Multimedia', 0, 0");
            $table->setData("24, 'smil', 'application/smil', 'Synchronized Multimedia Integration Language', 0, 0");
            $table->setData("25, 'wmlc', 'application/vnd.wap.wmlc ', 'Compiled WML Document', 0, 0");
            $table->setData("26, 'wmlsc', 'application/vnd.wap.wmlscriptc', 'Compiled WML Script', 0, 0");
            $table->setData("27, 'vcd', 'application/x-cdlink', 'Virtual CD-ROM CD Image File', 0, 0");
            $table->setData("28, 'pgn', 'application/formstore', 'Picatinny Arsenal Electronic Formstore Form in TIFF Format', 0, 0");
            $table->setData("29, 'cpio', 'application/x-cpio', 'UNIX CPIO Archive', 0, 0");
            $table->setData("30, 'csh', 'application/x-csh', 'Csh Script', 0, 0");
            $table->setData("31, 'dcr', 'application/x-director', 'Shockwave Movie', 0, 0");
            $table->setData("32, 'dir', 'application/x-director', 'Macromedia Director Movie', 0, 0");
            $table->setData("33, 'dxr', 'application/x-director application/vnd.dxr', 'Macromedia Director Protected Movie File', 0, 0");
            $table->setData("34, 'dvi', 'application/x-dvi', 'TeX Device Independent Document', 0, 0");
            $table->setData("35, 'spl', 'application/x-futuresplash', 'Macromedia FutureSplash File', 0, 0");
            $table->setData("36, 'hdf', 'application/x-hdf', 'Hierarchical Data Format File', 0, 0");
            $table->setData("37, 'js', 'application/x-javascript text/javascript', 'JavaScript Source Code', 0, 0");
            $table->setData("38, 'skp', 'application/x-koan application/vnd-koan koan/x-skm application/vnd.koan', 'SSEYO Koan Play File', 0, 0");
            $table->setData("39, 'skd', 'application/x-koan application/vnd-koan koan/x-skm application/vnd.koan', 'SSEYO Koan Design File', 0, 0");
            $table->setData("40, 'skt', 'application/x-koan application/vnd-koan koan/x-skm application/vnd.koan', 'SSEYO Koan Template File', 0, 0");
            $table->setData("41, 'skm', 'application/x-koan application/vnd-koan koan/x-skm application/vnd.koan', 'SSEYO Koan Mix File', 0, 0");
            $table->setData("42, 'latex', 'application/x-latex text/x-latex', 'LaTeX Source Document', 0, 0");
            $table->setData("43, 'nc', 'application/x-netcdf text/x-cdf', 'Unidata netCDF Graphics', 0, 0");
            $table->setData("44, 'cdf', 'application/cdf application/x-cdf application/netcdf application/x-netcdf text/cdf text/x-cdf', 'Channel Definition Format', 0, 0");
            $table->setData("45, 'swf', 'application/x-shockwave-flash application/x-shockwave-flash2-preview application/futuresplash image/vnd.rn-realflash', 'Macromedia Flash Format File', 0, 0");
            $table->setData("46, 'sit', 'application/stuffit application/x-stuffit application/x-sit', 'StuffIt Compressed Archive File', 0, 0");
            $table->setData("47, 'tcl', 'application/x-tcl', 'TCL/TK Language Script', 0, 0");
            $table->setData("48, 'tex', 'application/x-tex', 'LaTeX Source', 0, 0");
            $table->setData("49, 'texinfo', 'application/x-texinfo', 'TeX', 0, 0");
            $table->setData("50, 'texi', 'application/x-texinfo', 'TeX', 0, 0");
            $table->setData("51, 't', 'application/x-troff', 'TAR Tape Archive Without Compression', 0, 0");
            $table->setData("52, 'tr', 'application/x-troff', 'Unix Tape Archive = TAR without compression (tar)', 0, 0");
            $table->setData("53, 'src', 'application/x-wais-source', 'Sourcecode', 0, 0");
            $table->setData("54, 'xhtml', 'application/xhtml+xml', 'Extensible HyperText Markup Language File', 0, 0");
            $table->setData("55, 'xht', 'application/xhtml+xml', 'Extensible HyperText Markup Language File', 0, 0");
            $table->setData("56, 'au', 'audio/basic audio/x-basic audio/au audio/x-au audio/x-pn-au audio/rmf audio/x-rmf audio/x-ulaw audio/vnd.qcelp audio/x-gsm audio/snd', 'ULaw/AU Audio File', 0, 0");
            $table->setData("57, 'XM', 'audio/xm audio/x-xm audio/module-xm audio/mod audio/x-mod', 'Fast Tracker 2 Extended Module', 0, 0");
            $table->setData("58, 'snd', 'audio/basic', 'Macintosh Sound Resource', 0, 0");
            $table->setData("59, 'mid', 'audio/mid audio/m audio/midi audio/x-midi application/x-midi audio/soundtrack', 'Musical Instrument Digital Interface MIDI-sequention Sound', 0, 0");
            $table->setData("60, 'midi', 'audio/mid audio/m audio/midi audio/x-midi application/x-midi', 'Musical Instrument Digital Interface MIDI-sequention Sound', 0, 0");
            $table->setData("61, 'kar', 'audio/midi audio/x-midi audio/mid x-music/x-midi', 'Karaoke MIDI File', 0, 0");
            $table->setData("62, 'mpga', 'audio/mpeg audio/mp3 audio/mgp audio/m-mpeg audio/x-mp3 audio/x-mpeg audio/x-mpg video/mpeg', 'Mpeg-1 Layer3 Audio Stream', 0, 0");
            $table->setData("63, 'mp2', 'video/mpeg audio/mpeg', 'MPEG Audio Stream, Layer II', 0, 0");
            $table->setData("64, 'mp3', 'audio/mpeg audio/x-mpeg audio/mp3 audio/x-mp3 audio/mpeg3 audio/x-mpeg3 audio/mpg audio/x-mpg audio/x-mpegaudio', 'MPEG Audio Stream, Layer III', 0, 0");
            $table->setData("65, 'aif', 'audio/aiff audio/x-aiff sound/aiff audio/rmf audio/x-rmf audio/x-pn-aiff audio/x-gsm audio/x-midi audio/vnd.qcelp', 'Audio Interchange File', 0, 0");
            $table->setData("66, 'aiff', 'audio/aiff audio/x-aiff sound/aiff audio/rmf audio/x-rmf audio/x-pn-aiff audio/x-gsm audio/mid audio/x-midi audio/vnd.qcelp', 'Audio Interchange File', 0, 0");
            $table->setData("67, 'aifc', 'audio/aiff audio/x-aiff audio/x-aifc sound/aiff audio/rmf audio/x-rmf audio/x-pn-aiff audio/x-gsm audio/x-midi audio/mid audio/vnd.qcelp', 'Audio Interchange File', 0, 0");
            $table->setData("68, 'm3u', 'audio/x-mpegurl audio/mpeg-url application/x-winamp-playlist audio/scpls audio/x-scpls', 'MP3 Playlist File', 0, 0");
            $table->setData("69, 'ram', 'audio/x-pn-realaudio audio/vnd.rn-realaudio audio/x-pm-realaudio-plugin audio/x-pn-realvideo audio/x-realaudio video/x-pn-realvideo text/plain', 'RealMedia Metafile', 0, 0");
            $table->setData("70, 'rm', 'application/vnd.rn-realmedia audio/vnd.rn-realaudio audio/x-pn-realaudio audio/x-realaudio audio/x-pm-realaudio-plugin', 'RealMedia Streaming Media', 0, 0");
            $table->setData("71, 'rpm', 'audio/x-pn-realaudio audio/x-pn-realaudio-plugin audio/x-pnrealaudio-plugin video/x-pn-realvideo-plugin audio/x-mpegurl application/octet-stream', 'RealMedia Player Plug-in', 0, 0");
            $table->setData("72, 'ra', 'audio/vnd.rn-realaudio audio/x-pn-realaudio audio/x-realaudio audio/x-pm-realaudio-plugin video/x-pn-realvideo', 'RealMedia Streaming Media', 0, 0");
            $table->setData("73, 'wav', 'audio/wav audio/x-wav audio/wave audio/x-pn-wav', 'Waveform Audio', 0, 0");
            $table->setData("74, 'wax', ' audio/x-ms-wax', 'Windows Media Audio Redirector', 0, 0");
            $table->setData("75, 'wma', 'audio/x-ms-wma video/x-ms-asf', 'Windows Media Audio File', 0, 0");
            $table->setData("76, 'bmp', 'image/bmp image/x-bmp image/x-bitmap image/x-xbitmap image/x-win-bitmap image/x-windows-bmp image/ms-bmp image/x-ms-bmp application/bmp application/x-bmp application/x-win-bitmap application/preview', 'Windows OS/2 Bitmap Graphics', 1, 1");
            $table->setData("77, 'gif', 'image/gif image/x-xbitmap image/gi_', 'Graphic Interchange Format', 1, 1");
            $table->setData("78, 'ief', 'image/ief', 'Image File - Bitmap graphics', 0, 0");
            $table->setData("79, 'jpeg', 'image/jpeg image/jpg image/jpe_ image/pjpeg image/vnd.swiftview-jpeg', 'JPEG/JIFF Image', 1, 1");
            $table->setData("80, 'jpg', 'image/jpeg image/jpg image/jp_ application/jpg application/x-jpg image/pjpeg image/pipeg image/vnd.swiftview-jpeg image/x-xbitmap', 'JPEG/JIFF Image', 1, 1");
            $table->setData("81, 'jpe', 'image/jpeg', 'JPEG/JIFF Image', 1, 1");
            $table->setData("82, 'png', 'image/png application/png application/x-png', 'Portable (Public) Network Graphic', 1, 1");
            $table->setData("83, 'tiff', 'image/tiff', 'Tagged Image Format File', 1, 1");
            $table->setData("84, 'tif', 'image/tif image/x-tif image/tiff image/x-tiff application/tif application/x-tif application/tiff application/x-tiff', 'Tagged Image Format File', 1, 1");
            $table->setData("85, 'ico', 'image/ico image/x-icon application/ico application/x-ico application/x-win-bitmap image/x-win-bitmap application/octet-stream', 'Windows Icon', 0, 0");
            $table->setData("86, 'wbmp', 'image/vnd.wap.wbmp', 'Wireless Bitmap File Format', 0, 0");
            $table->setData("87, 'ras', 'application/ras application/x-ras image/ras', 'Sun Raster Graphic', 0, 0");
            $table->setData("88, 'pnm', 'image/x-portable-anymap', 'PBM Portable Any Map Graphic Bitmap', 0, 0");
            $table->setData("89, 'pbm', 'image/portable bitmap image/x-portable-bitmap image/pbm image/x-pbm', 'UNIX Portable Bitmap Graphic', 0, 0");
            $table->setData("90, 'pgm', 'image/x-portable-graymap image/x-pgm', 'Portable Graymap Graphic', 0, 0");
            $table->setData("91, 'ppm', 'image/x-portable-pixmap application/ppm application/x-ppm image/x-p image/x-ppm', 'PBM Portable Pixelmap Graphic', 0, 0");
            $table->setData("92, 'rgb', 'image/rgb image/x-rgb', 'Silicon Graphics RGB Bitmap', 0, 0");
            $table->setData("93, 'xbm', 'image/x-xpixmap image/x-xbitmap image/xpm image/x-xpm', 'X Bitmap Graphic', 0, 0");
            $table->setData("94, 'xpm', 'image/x-xpixmap', 'BMC Software Patrol UNIX Icon File', 0, 0");
            $table->setData("95, 'xwd', 'image/x-xwindowdump image/xwd image/x-xwd application/xwd application/x-xwd', 'X Windows Dump', 0, 0");
            $table->setData("96, 'igs', 'model/iges application/iges application/x-iges application/igs application/x-igs drawing/x-igs image/x-igs', 'Initial Graphics Exchange Specification Format', 0, 0");
            $table->setData("97, 'css', 'application/css-stylesheet text/css', 'Hypertext Cascading Style Sheet', 0, 0");
            $table->setData("98, 'html', 'text/html text/plain', 'Hypertext Markup Language', 0, 0");
            $table->setData("99, 'htm', 'text/html', 'Hypertext Markup Language', 0, 0");
            $table->setData("100, 'txt', 'text/plain application/txt browser/internal', 'Text File', 1, 1");
            $table->setData("101, 'rtf', 'application/rtf application/x-rtf text/rtf text/richtext application/msword application/doc application/x-soffice', 'Rich Text Format File', 1, 1");
            $table->setData("102, 'wml', 'text/vnd.wap.wml text/wml', 'Website META Language File', 0, 0");
            $table->setData("103, 'wmls', 'text/vnd.wap.wmlscript', 'WML Script', 0, 0");
            $table->setData("104, 'etx', 'text/x-setext', 'SetText Structure Enhanced Text', 0, 0");
            $table->setData("105, 'xml', 'text/xml application/xml application/x-xml', 'Extensible Markup Language File', 0, 0");
            $table->setData("106, 'xsl', 'text/xml', 'XML Stylesheet', 0, 0");
            $table->setData("107, 'php', 'text/php application/x-httpd-php application/php magnus-internal/shellcgi application/x-php', 'PHP Script', 0, 0");
            $table->setData("108, 'php3', 'text/php3 application/x-httpd-php', 'PHP Script', 0, 0");
            $table->setData("109, 'mpeg', 'video/mpeg', 'MPEG Movie', 0, 0");
            $table->setData("110, 'mpg', 'video/mpeg video/mpg video/x-mpg video/mpeg2 application/x-pn-mpg video/x-mpeg video/x-mpeg2a audio/mpeg audio/x-mpeg image/mpg', 'MPEG 1 System Stream', 0, 0");
            $table->setData("111, 'mpe', 'video/mpeg', 'MPEG Movie Clip', 0, 0");
            $table->setData("112, 'qt', 'video/quicktime audio/aiff audio/x-wav video/flc', 'QuickTime Movie', 0, 0");
            $table->setData("113, 'mov', 'video/quicktime video/x-quicktime image/mov audio/aiff audio/x-midi audio/x-wav video/avi', 'QuickTime Video Clip', 0, 0");
            $table->setData("114, 'avi', 'video/avi video/msvideo video/x-msvideo image/avi video/xmpg2 application/x-troff-msvideo audio/aiff audio/avi', 'Audio Video Interleave File', 0, 0");
            $table->setData("115, 'movie', 'video/sgi-movie video/x-sgi-movie', 'QuickTime Movie', 0, 0");
            $table->setData("116, 'asf', 'audio/asf application/asx video/x-ms-asf-plugin application/x-mplayer2 video/x-ms-asf application/vnd.ms-asf video/x-ms-asf-plugin video/x-ms-wm video/x-ms-wmx', 'Advanced Streaming Format', 0, 0");
            $table->setData("117, 'asx', 'video/asx application/asx video/x-ms-asf-plugin application/x-mplayer2 video/x-ms-asf application/vnd.ms-asf video/x-ms-asf-plugin video/x-ms-wm video/x-ms-wmx video/x-la-asf', 'Advanced Stream Redirector File', 0, 0");
            $table->setData("118, 'wmv', 'video/x-ms-wmv', 'Windows Media File', 0, 0");
            $table->setData("119, 'wvx', 'video/x-ms-wvx', 'Windows Media Redirector', 0, 0");
            $table->setData("120, 'wm', 'video/x-ms-wm', 'Windows Media A/V File', 0, 0");
            $table->setData("121, 'wmx', 'video/x-ms-wmx', 'Windows Media Player A/V Shortcut', 0, 0");
            $table->setData("122, 'ice', 'x-conference-xcooltalk', 'Cooltalk Audio', 0, 0");
            $table->setData("123, 'rar', 'application/octet-stream', 'WinRAR Compressed Archive', 0, 0");
            $ret = $ret && $dbupdater->updateTable($table);
            unset($table);
            echo "</ul>";
            /// SMARTSECTION 1.0.2 ////////////////////////////////////////////////
        /// SMARTSECTION 1.0.2 ////////////////////////////////////////////////
        case '1.02':
            set_time_limit(60);
            printf("<h3>" . _AM_SSECTION_DB_UPDATE_TO . "</h3>", '1.03');
            echo "<ul>";
            // Add field Address in items table
            $table = new SmartsectionTable('smartsection_items');
            $table->addNewField('address', "varchar(255) NOT NULL default ''");
            $ret = $ret && $dbupdater->updateTable($table);
            unset($table);
            echo "</ul>";
            /// SMARTSECTION 1.0.3 ////////////////////////////////////////////////
        /// SMARTSECTION 1.0.3 ////////////////////////////////////////////////
        case '1.03':
            set_time_limit(60);
            printf("<h3>" . _AM_SSECTION_DB_UPDATE_TO . "</h3>", '1.04');
            echo "<ul>";
            // Drop field adress in items table
            $table = new SmartsectionTable('smartsection_items');
            $table->addDropedField('address');
            $ret = $ret && $dbupdater->updateTable($table);
            unset($table);
            echo "</ul>";
            /// SMARTSECTION 1.0.4 ////////////////////////////////////////////////
        /// SMARTSECTION 1.0.4 ////////////////////////////////////////////////
        case '1.04':
            set_time_limit(60);
            printf("<h3>" . _AM_SSECTION_DB_UPDATE_TO . "</h3>", '1.05');
            echo "<ul>";
            echo "<li>No database changes are needed</li>";
            echo "</ul>";
            /// SMARTSECTION 1.0.5 ////////////////////////////////////////////////
        /// SMARTSECTION 1.0.5 ////////////////////////////////////////////////
        case '1.05':
            set_time_limit(60);
            printf("<h3>" . _AM_SSECTION_DB_UPDATE_TO . "</h3>", '1.1');
            echo "<ul>";
            echo "<li>No database changes are needed</li>";
            echo "</ul>";
            /// SMARTSECTION 1.1 ////////////////////////////////////////////////
        /// SMARTSECTION 1.1 ////////////////////////////////////////////////
        case '1.1':
            set_time_limit(60);
            printf("<h3>" . _AM_SSECTION_DB_UPDATE_TO . "</h3>", '2.0');
            echo "<ul>";
            // Add field template
            $table = new SmartsectionTable('smartsection_categories');
            $table->addNewField('template', "varchar(255) NOT NULL default ''");
            $ret = $ret && $dbupdater->updateTable($table);
            unset($table);
            // Create mimetypes table if not already created
            if (!smartsection_TableExists('smartsection_mimetypes')) {
                // Create table smartsection_mimetypes
                $table = new SmartsectionTable('smartsection_mimetypes');
                $table->setStructure("CREATE TABLE %s (\n\t  \t\t\t\t\t\t\t  mime_id int(11) NOT NULL auto_increment,\n\t  \t\t\t\t\t\t\t  mime_ext varchar(60) NOT NULL default '',\n\t  \t\t\t\t\t\t\t  mime_types text NOT NULL,\n\t  \t\t\t\t\t\t\t  mime_name varchar(255) NOT NULL default '',\n\t  \t\t\t\t\t\t\t  mime_admin int(1) NOT NULL default '1',\n\t  \t\t\t\t\t\t\t  mime_user int(1) NOT NULL default '0',\n\t  \t\t\t\t\t\t\t  KEY mime_id (mime_id)\n\t  \t\t\t\t\t\t\t  ) TYPE=MyISAM;");
                $table->setData("1, 'bin', 'application/octet-stream', 'Binary File/Linux Executable', 0, 0");
                $table->setData("2, 'dms', 'application/octet-stream', 'Amiga DISKMASHER Compressed Archive', 0, 0");
                $table->setData("3, 'class', 'application/octet-stream', 'Java Bytecode', 0, 0");
                $table->setData("4, 'so', 'application/octet-stream', 'UNIX Shared Library Function', 0, 0");
                $table->setData("5, 'dll', 'application/octet-stream', 'Dynamic Link Library', 0, 0");
                $table->setData("6, 'hqx', 'application/binhex application/mac-binhex application/mac-binhex40', 'Macintosh BinHex 4 Compressed Archive', 0, 0");
                $table->setData("7, 'cpt', 'application/mac-compactpro application/compact_pro', 'Compact Pro Archive', 0, 0");
                $table->setData("8, 'lha', 'application/lha application/x-lha application/octet-stream application/x-compress application/x-compressed application/maclha', 'Compressed Archive File', 0, 0");
                $table->setData("9, 'lzh', 'application/lzh application/x-lzh application/x-lha application/x-compress application/x-compressed application/x-lzh-archive zz-application/zz-winassoc-lzh application/maclha application/octet-stream', 'Compressed Archive File', 0, 0");
                $table->setData("10, 'sh', 'application/x-shar', 'UNIX shar Archive File', 0, 0");
                $table->setData("11, 'shar', 'application/x-shar', 'UNIX shar Archive File', 0, 0");
                $table->setData("12, 'tar', 'application/tar application/x-tar applicaton/x-gtar multipart/x-tar application/x-compress application/x-compressed', 'Tape Archive File', 0, 0");
                $table->setData("13, 'gtar', 'application/x-gtar', 'GNU tar Compressed File Archive', 0, 0");
                $table->setData("14, 'ustar', 'application/x-ustar multipart/x-ustar', 'POSIX tar Compressed Archive', 0, 0");
                $table->setData("15, 'zip', 'application/zip application/x-zip application/x-zip-compressed application/octet-stream application/x-compress application/x-compressed multipart/x-zip', 'Compressed Archive File', 0, 0");
                $table->setData("16, 'exe', 'application/exe application/x-exe application/dos-exe application/x-winexe application/msdos-windows application/x-msdos-program', 'Executable File', 0, 0");
                $table->setData("17, 'wmz', 'application/x-ms-wmz', 'Windows Media Compressed Skin File', 0, 0");
                $table->setData("18, 'wmd', 'application/x-ms-wmd', 'Windows Media Download File', 0, 0");
                $table->setData("19, 'doc', 'application/msword application/doc appl/text application/vnd.msword application/vnd.ms-word application/winword application/word application/x-msw6 application/x-msword', 'Word Document', 1, 1");
                $table->setData("20, 'pdf', 'application/pdf application/acrobat application/x-pdf applications/vnd.pdf text/pdf', 'Acrobat Portable Document Format', 1, 1");
                $table->setData("21, 'eps', 'application/eps application/postscript application/x-eps image/eps image/x-eps', 'Encapsulated PostScript', 0, 0");
                $table->setData("22, 'ps', 'application/postscript application/ps application/x-postscript application/x-ps text/postscript', 'PostScript', 0, 0");
                $table->setData("23, 'smi', 'application/smil', 'SMIL Multimedia', 0, 0");
                $table->setData("24, 'smil', 'application/smil', 'Synchronized Multimedia Integration Language', 0, 0");
                $table->setData("25, 'wmlc', 'application/vnd.wap.wmlc ', 'Compiled WML Document', 0, 0");
                $table->setData("26, 'wmlsc', 'application/vnd.wap.wmlscriptc', 'Compiled WML Script', 0, 0");
                $table->setData("27, 'vcd', 'application/x-cdlink', 'Virtual CD-ROM CD Image File', 0, 0");
                $table->setData("28, 'pgn', 'application/formstore', 'Picatinny Arsenal Electronic Formstore Form in TIFF Format', 0, 0");
                $table->setData("29, 'cpio', 'application/x-cpio', 'UNIX CPIO Archive', 0, 0");
                $table->setData("30, 'csh', 'application/x-csh', 'Csh Script', 0, 0");
                $table->setData("31, 'dcr', 'application/x-director', 'Shockwave Movie', 0, 0");
                $table->setData("32, 'dir', 'application/x-director', 'Macromedia Director Movie', 0, 0");
                $table->setData("33, 'dxr', 'application/x-director application/vnd.dxr', 'Macromedia Director Protected Movie File', 0, 0");
                $table->setData("34, 'dvi', 'application/x-dvi', 'TeX Device Independent Document', 0, 0");
                $table->setData("35, 'spl', 'application/x-futuresplash', 'Macromedia FutureSplash File', 0, 0");
                $table->setData("36, 'hdf', 'application/x-hdf', 'Hierarchical Data Format File', 0, 0");
                $table->setData("37, 'js', 'application/x-javascript text/javascript', 'JavaScript Source Code', 0, 0");
                $table->setData("38, 'skp', 'application/x-koan application/vnd-koan koan/x-skm application/vnd.koan', 'SSEYO Koan Play File', 0, 0");
                $table->setData("39, 'skd', 'application/x-koan application/vnd-koan koan/x-skm application/vnd.koan', 'SSEYO Koan Design File', 0, 0");
                $table->setData("40, 'skt', 'application/x-koan application/vnd-koan koan/x-skm application/vnd.koan', 'SSEYO Koan Template File', 0, 0");
                $table->setData("41, 'skm', 'application/x-koan application/vnd-koan koan/x-skm application/vnd.koan', 'SSEYO Koan Mix File', 0, 0");
                $table->setData("42, 'latex', 'application/x-latex text/x-latex', 'LaTeX Source Document', 0, 0");
                $table->setData("43, 'nc', 'application/x-netcdf text/x-cdf', 'Unidata netCDF Graphics', 0, 0");
                $table->setData("44, 'cdf', 'application/cdf application/x-cdf application/netcdf application/x-netcdf text/cdf text/x-cdf', 'Channel Definition Format', 0, 0");
                $table->setData("45, 'swf', 'application/x-shockwave-flash application/x-shockwave-flash2-preview application/futuresplash image/vnd.rn-realflash', 'Macromedia Flash Format File', 0, 0");
                $table->setData("46, 'sit', 'application/stuffit application/x-stuffit application/x-sit', 'StuffIt Compressed Archive File', 0, 0");
                $table->setData("47, 'tcl', 'application/x-tcl', 'TCL/TK Language Script', 0, 0");
                $table->setData("48, 'tex', 'application/x-tex', 'LaTeX Source', 0, 0");
                $table->setData("49, 'texinfo', 'application/x-texinfo', 'TeX', 0, 0");
                $table->setData("50, 'texi', 'application/x-texinfo', 'TeX', 0, 0");
                $table->setData("51, 't', 'application/x-troff', 'TAR Tape Archive Without Compression', 0, 0");
                $table->setData("52, 'tr', 'application/x-troff', 'Unix Tape Archive = TAR without compression (tar)', 0, 0");
                $table->setData("53, 'src', 'application/x-wais-source', 'Sourcecode', 0, 0");
                $table->setData("54, 'xhtml', 'application/xhtml+xml', 'Extensible HyperText Markup Language File', 0, 0");
                $table->setData("55, 'xht', 'application/xhtml+xml', 'Extensible HyperText Markup Language File', 0, 0");
                $table->setData("56, 'au', 'audio/basic audio/x-basic audio/au audio/x-au audio/x-pn-au audio/rmf audio/x-rmf audio/x-ulaw audio/vnd.qcelp audio/x-gsm audio/snd', 'ULaw/AU Audio File', 0, 0");
                $table->setData("57, 'XM', 'audio/xm audio/x-xm audio/module-xm audio/mod audio/x-mod', 'Fast Tracker 2 Extended Module', 0, 0");
                $table->setData("58, 'snd', 'audio/basic', 'Macintosh Sound Resource', 0, 0");
                $table->setData("59, 'mid', 'audio/mid audio/m audio/midi audio/x-midi application/x-midi audio/soundtrack', 'Musical Instrument Digital Interface MIDI-sequention Sound', 0, 0");
                $table->setData("60, 'midi', 'audio/mid audio/m audio/midi audio/x-midi application/x-midi', 'Musical Instrument Digital Interface MIDI-sequention Sound', 0, 0");
                $table->setData("61, 'kar', 'audio/midi audio/x-midi audio/mid x-music/x-midi', 'Karaoke MIDI File', 0, 0");
                $table->setData("62, 'mpga', 'audio/mpeg audio/mp3 audio/mgp audio/m-mpeg audio/x-mp3 audio/x-mpeg audio/x-mpg video/mpeg', 'Mpeg-1 Layer3 Audio Stream', 0, 0");
                $table->setData("63, 'mp2', 'video/mpeg audio/mpeg', 'MPEG Audio Stream, Layer II', 0, 0");
                $table->setData("64, 'mp3', 'audio/mpeg audio/x-mpeg audio/mp3 audio/x-mp3 audio/mpeg3 audio/x-mpeg3 audio/mpg audio/x-mpg audio/x-mpegaudio', 'MPEG Audio Stream, Layer III', 0, 0");
                $table->setData("65, 'aif', 'audio/aiff audio/x-aiff sound/aiff audio/rmf audio/x-rmf audio/x-pn-aiff audio/x-gsm audio/x-midi audio/vnd.qcelp', 'Audio Interchange File', 0, 0");
                $table->setData("66, 'aiff', 'audio/aiff audio/x-aiff sound/aiff audio/rmf audio/x-rmf audio/x-pn-aiff audio/x-gsm audio/mid audio/x-midi audio/vnd.qcelp', 'Audio Interchange File', 0, 0");
                $table->setData("67, 'aifc', 'audio/aiff audio/x-aiff audio/x-aifc sound/aiff audio/rmf audio/x-rmf audio/x-pn-aiff audio/x-gsm audio/x-midi audio/mid audio/vnd.qcelp', 'Audio Interchange File', 0, 0");
                $table->setData("68, 'm3u', 'audio/x-mpegurl audio/mpeg-url application/x-winamp-playlist audio/scpls audio/x-scpls', 'MP3 Playlist File', 0, 0");
                $table->setData("69, 'ram', 'audio/x-pn-realaudio audio/vnd.rn-realaudio audio/x-pm-realaudio-plugin audio/x-pn-realvideo audio/x-realaudio video/x-pn-realvideo text/plain', 'RealMedia Metafile', 0, 0");
                $table->setData("70, 'rm', 'application/vnd.rn-realmedia audio/vnd.rn-realaudio audio/x-pn-realaudio audio/x-realaudio audio/x-pm-realaudio-plugin', 'RealMedia Streaming Media', 0, 0");
                $table->setData("71, 'rpm', 'audio/x-pn-realaudio audio/x-pn-realaudio-plugin audio/x-pnrealaudio-plugin video/x-pn-realvideo-plugin audio/x-mpegurl application/octet-stream', 'RealMedia Player Plug-in', 0, 0");
                $table->setData("72, 'ra', 'audio/vnd.rn-realaudio audio/x-pn-realaudio audio/x-realaudio audio/x-pm-realaudio-plugin video/x-pn-realvideo', 'RealMedia Streaming Media', 0, 0");
                $table->setData("73, 'wav', 'audio/wav audio/x-wav audio/wave audio/x-pn-wav', 'Waveform Audio', 0, 0");
                $table->setData("74, 'wax', ' audio/x-ms-wax', 'Windows Media Audio Redirector', 0, 0");
                $table->setData("75, 'wma', 'audio/x-ms-wma video/x-ms-asf', 'Windows Media Audio File', 0, 0");
                $table->setData("76, 'bmp', 'image/bmp image/x-bmp image/x-bitmap image/x-xbitmap image/x-win-bitmap image/x-windows-bmp image/ms-bmp image/x-ms-bmp application/bmp application/x-bmp application/x-win-bitmap application/preview', 'Windows OS/2 Bitmap Graphics', 1, 1");
                $table->setData("77, 'gif', 'image/gif image/x-xbitmap image/gi_', 'Graphic Interchange Format', 1, 1");
                $table->setData("78, 'ief', 'image/ief', 'Image File - Bitmap graphics', 0, 0");
                $table->setData("79, 'jpeg', 'image/jpeg image/jpg image/jpe_ image/pjpeg image/vnd.swiftview-jpeg', 'JPEG/JIFF Image', 1, 1");
                $table->setData("80, 'jpg', 'image/jpeg image/jpg image/jp_ application/jpg application/x-jpg image/pjpeg image/pipeg image/vnd.swiftview-jpeg image/x-xbitmap', 'JPEG/JIFF Image', 1, 1");
                $table->setData("81, 'jpe', 'image/jpeg', 'JPEG/JIFF Image', 1, 1");
                $table->setData("82, 'png', 'image/png application/png application/x-png', 'Portable (Public) Network Graphic', 1, 1");
                $table->setData("83, 'tiff', 'image/tiff', 'Tagged Image Format File', 1, 1");
                $table->setData("84, 'tif', 'image/tif image/x-tif image/tiff image/x-tiff application/tif application/x-tif application/tiff application/x-tiff', 'Tagged Image Format File', 1, 1");
                $table->setData("85, 'ico', 'image/ico image/x-icon application/ico application/x-ico application/x-win-bitmap image/x-win-bitmap application/octet-stream', 'Windows Icon', 0, 0");
                $table->setData("86, 'wbmp', 'image/vnd.wap.wbmp', 'Wireless Bitmap File Format', 0, 0");
                $table->setData("87, 'ras', 'application/ras application/x-ras image/ras', 'Sun Raster Graphic', 0, 0");
                $table->setData("88, 'pnm', 'image/x-portable-anymap', 'PBM Portable Any Map Graphic Bitmap', 0, 0");
                $table->setData("89, 'pbm', 'image/portable bitmap image/x-portable-bitmap image/pbm image/x-pbm', 'UNIX Portable Bitmap Graphic', 0, 0");
                $table->setData("90, 'pgm', 'image/x-portable-graymap image/x-pgm', 'Portable Graymap Graphic', 0, 0");
                $table->setData("91, 'ppm', 'image/x-portable-pixmap application/ppm application/x-ppm image/x-p image/x-ppm', 'PBM Portable Pixelmap Graphic', 0, 0");
                $table->setData("92, 'rgb', 'image/rgb image/x-rgb', 'Silicon Graphics RGB Bitmap', 0, 0");
                $table->setData("93, 'xbm', 'image/x-xpixmap image/x-xbitmap image/xpm image/x-xpm', 'X Bitmap Graphic', 0, 0");
                $table->setData("94, 'xpm', 'image/x-xpixmap', 'BMC Software Patrol UNIX Icon File', 0, 0");
                $table->setData("95, 'xwd', 'image/x-xwindowdump image/xwd image/x-xwd application/xwd application/x-xwd', 'X Windows Dump', 0, 0");
                $table->setData("96, 'igs', 'model/iges application/iges application/x-iges application/igs application/x-igs drawing/x-igs image/x-igs', 'Initial Graphics Exchange Specification Format', 0, 0");
                $table->setData("97, 'css', 'application/css-stylesheet text/css', 'Hypertext Cascading Style Sheet', 0, 0");
                $table->setData("98, 'html', 'text/html text/plain', 'Hypertext Markup Language', 0, 0");
                $table->setData("99, 'htm', 'text/html', 'Hypertext Markup Language', 0, 0");
                $table->setData("100, 'txt', 'text/plain application/txt browser/internal', 'Text File', 1, 1");
                $table->setData("101, 'rtf', 'application/rtf application/x-rtf text/rtf text/richtext application/msword application/doc application/x-soffice', 'Rich Text Format File', 1, 1");
                $table->setData("102, 'wml', 'text/vnd.wap.wml text/wml', 'Website META Language File', 0, 0");
                $table->setData("103, 'wmls', 'text/vnd.wap.wmlscript', 'WML Script', 0, 0");
                $table->setData("104, 'etx', 'text/x-setext', 'SetText Structure Enhanced Text', 0, 0");
                $table->setData("105, 'xml', 'text/xml application/xml application/x-xml', 'Extensible Markup Language File', 0, 0");
                $table->setData("106, 'xsl', 'text/xml', 'XML Stylesheet', 0, 0");
                $table->setData("107, 'php', 'text/php application/x-httpd-php application/php magnus-internal/shellcgi application/x-php', 'PHP Script', 0, 0");
                $table->setData("108, 'php3', 'text/php3 application/x-httpd-php', 'PHP Script', 0, 0");
                $table->setData("109, 'mpeg', 'video/mpeg', 'MPEG Movie', 0, 0");
                $table->setData("110, 'mpg', 'video/mpeg video/mpg video/x-mpg video/mpeg2 application/x-pn-mpg video/x-mpeg video/x-mpeg2a audio/mpeg audio/x-mpeg image/mpg', 'MPEG 1 System Stream', 0, 0");
                $table->setData("111, 'mpe', 'video/mpeg', 'MPEG Movie Clip', 0, 0");
                $table->setData("112, 'qt', 'video/quicktime audio/aiff audio/x-wav video/flc', 'QuickTime Movie', 0, 0");
                $table->setData("113, 'mov', 'video/quicktime video/x-quicktime image/mov audio/aiff audio/x-midi audio/x-wav video/avi', 'QuickTime Video Clip', 0, 0");
                $table->setData("114, 'avi', 'video/avi video/msvideo video/x-msvideo image/avi video/xmpg2 application/x-troff-msvideo audio/aiff audio/avi', 'Audio Video Interleave File', 0, 0");
                $table->setData("115, 'movie', 'video/sgi-movie video/x-sgi-movie', 'QuickTime Movie', 0, 0");
                $table->setData("116, 'asf', 'audio/asf application/asx video/x-ms-asf-plugin application/x-mplayer2 video/x-ms-asf application/vnd.ms-asf video/x-ms-asf-plugin video/x-ms-wm video/x-ms-wmx', 'Advanced Streaming Format', 0, 0");
                $table->setData("117, 'asx', 'video/asx application/asx video/x-ms-asf-plugin application/x-mplayer2 video/x-ms-asf application/vnd.ms-asf video/x-ms-asf-plugin video/x-ms-wm video/x-ms-wmx video/x-la-asf', 'Advanced Stream Redirector File', 0, 0");
                $table->setData("118, 'wmv', 'video/x-ms-wmv', 'Windows Media File', 0, 0");
                $table->setData("119, 'wvx', 'video/x-ms-wvx', 'Windows Media Redirector', 0, 0");
                $table->setData("120, 'wm', 'video/x-ms-wm', 'Windows Media A/V File', 0, 0");
                $table->setData("121, 'wmx', 'video/x-ms-wmx', 'Windows Media Player A/V Shortcut', 0, 0");
                $table->setData("122, 'ice', 'x-conference-xcooltalk', 'Cooltalk Audio', 0, 0");
                $table->setData("123, 'rar', 'application/octet-stream', 'WinRAR Compressed Archive', 0, 0");
                $ret = $ret && $dbupdater->updateTable($table);
                unset($table);
            }
            // Add header template in categories
            $table = new SmartsectionTable('smartsection_categories');
            $table->addNewField('header', "TEXT NOT NULL");
            $ret = $ret && $dbupdater->updateTable($table);
            unset($table);
            echo "</ul>";
            /// SMARTSECTION 2.0 ////////////////////////////////////////////////
        /// SMARTSECTION 2.0 ////////////////////////////////////////////////
        case '2.0':
            set_time_limit(60);
            printf("<h3>" . _AM_SSECTION_DB_UPDATE_TO . "</h3>", '2.1');
            echo "<ul>";
            // Add fields in smartsection_categories
            $table = new SmartsectionTable('smartsection_categories');
            $table->addNewField('meta_keywords', "TEXT NOT NULL");
            $table->addNewField('meta_description', "TEXT NOT NULL");
            $table->addNewField('short_url', "VARCHAR(255) NOT NULL");
            $ret = $dbupdater->updateTable($table);
            unset($table);
            // Add fields in smartsection_items
            $table = new SmartsectionTable('smartsection_items');
            $table->addNewField('meta_keywords', "TEXT NOT NULL");
            $table->addNewField('meta_description', "TEXT NOT NULL");
            $table->addNewField('short_url', "VARCHAR(255) NOT NULL");
            $ret = $dbupdater->updateTable($table);
            unset($table);
            // Automatically create meta tag infos
            global $smartsection_category_handler, $smartsection_item_handler;
            $categoriesObj = $smartsection_category_handler->getObjects();
            foreach ($categoriesObj as $categoryObj) {
                $categoryObj->store();
                echo "<li>Meta tags info automatically generated for category '<em>" . $categoryObj->name() . "</em>'</li>";
            }
            $itemsObj = $smartsection_item_handler->getObjects();
            foreach ($itemsObj as $itemObj) {
                $itemObj->store();
                echo "<li>Meta tags info automatically generated for article '<em>" . $itemObj->title() . "</em>'</li>";
            }
            echo "</ul>";
        case '2.1':
            set_time_limit(60);
            printf("<h3>" . _AM_SSECTION_DB_UPDATE_TO . "</h3>", '2.11');
            echo "<ul>";
            // Add fields in smartsection_items
            $table = new SmartsectionTable('smartsection_items');
            $table->addNewField('partial_view', "int(1) NOT NULL default '0'");
            $ret = $dbupdater->updateTable($table);
            unset($table);
            echo "</ul>";
    }
    $newversion = round($xoopsModule->getVar('version') / 100, 2);
    //if successful, update smartsection_meta table with new ver
    if ($ret) {
        printf(_AM_SSECTION_DB_UPDATE_OK, $newversion);
        $ret = smartsection_SetMeta('version', $newversion);
    } else {
        printf(_AM_SSECTION_DB_UPDATE_ERR, $newversion);
    }
    smart_xoops_cp_footer();
}
Exemple #8
0
function editfile($showmenu = false, $fileid = 0, $itemid = 0)
{
    global $smartsection_file_handler, $xoopsModule;
    include_once XOOPS_ROOT_PATH . '/class/xoopsformloader.php';
    // if there is a parameter, and the id exists, retrieve data: we're editing a file
    if ($fileid != 0) {
        // Creating the File object
        $fileObj = new smartsectionfile($fileid);
        if ($fileObj->notLoaded()) {
            redirect_header("javascript:history.go(-1)", 1, _AM_SSECTION_NOFILESELECTED);
            exit;
        }
        if ($showmenu) {
            smartsection_adminMenu(2, _AM_SSECTION_FILE . " > " . _AM_SSECTION_EDITING);
        }
        echo "<br />\n";
        echo "<span style='color: #2F5376; font-weight: bold; font-size: 16px; margin: 6px 06 0 0; '>" . _AM_SSECTION_FILE_EDITING . "</span>";
        echo "<span style=\"color: #567; margin: 3px 0 12px 0; font-size: small; display: block; \">" . _AM_SSECTION_FILE_EDITING_DSC . "</span>";
        smartsection_collapsableBar('editfile', 'editfileicon', _AM_SSECTION_FILE_INFORMATIONS);
    } else {
        // there's no parameter, so we're adding an item
        $fileObj =& $smartsection_file_handler->create();
        $fileObj->setVar('itemid', $itemid);
        if ($showmenu) {
            smartsection_adminMenu(2, _AM_SSECTION_FILE . " > " . _AM_SSECTION_FILE_ADD);
        }
        echo "<span style='color: #2F5376; font-weight: bold; font-size: 16px; margin: 6px 06 0 0; '>" . _AM_SSECTION_FILE_ADDING . "</span>";
        echo "<span style=\"color: #567; margin: 3px 0 12px 0; font-size: small; display: block; \">" . _AM_SSECTION_FILE_ADDING_DSC . "</span>";
        smartsection_collapsableBar('addfile', 'addfileicon', _AM_SSECTION_FILE_INFORMATIONS);
    }
    // FILES UPLOAD FORM
    $files_form = new XoopsThemeForm(_AM_SSECTION_UPLOAD_FILE, "files_form", xoops_getenv('PHP_SELF'));
    $files_form->setExtra("enctype='multipart/form-data'");
    // NAME
    $name_text = new XoopsFormText(_AM_SSECTION_FILE_NAME, 'name', 50, 255, $fileObj->name());
    $name_text->setDescription(_AM_SSECTION_FILE_NAME_DSC);
    $files_form->addElement($name_text, true);
    // DESCRIPTION
    $description_text = new XoopsFormTextArea(_AM_SSECTION_FILE_DESCRIPTION, 'description', $fileObj->description());
    $description_text->setDescription(_AM_SSECTION_FILE_DESCRIPTION_DSC);
    $files_form->addElement($description_text, 7, 60);
    // FILE TO UPLOAD
    if ($fileid == 0) {
        $file_box = new XoopsFormFile(_AM_SSECTION_FILE_TO_UPLOAD, "userfile", 0);
        $file_box->setExtra("size ='50'");
        $files_form->addElement($file_box);
    }
    $status_select = new XoopsFormRadioYN(_AM_SSECTION_FILE_STATUS, 'file_status', $fileObj->status());
    $status_select->setDescription(_AM_SSECTION_FILE_STATUS_DSC);
    $files_form->addElement($status_select);
    $files_button_tray = new XoopsFormElementTray('', '');
    $files_hidden = new XoopsFormHidden('op', 'uploadfile');
    $files_button_tray->addElement($files_hidden);
    if ($fileid == 0) {
        $files_butt_create = new XoopsFormButton('', '', _AM_SSECTION_UPLOAD, 'submit');
        $files_butt_create->setExtra('onclick="this.form.elements.op.value=\'uploadfile\'"');
        $files_button_tray->addElement($files_butt_create);
        $files_butt_another = new XoopsFormButton('', '', _AM_SSECTION_FILE_UPLOAD_ANOTHER, 'submit');
        $files_butt_another->setExtra('onclick="this.form.elements.op.value=\'uploadanother\'"');
        $files_button_tray->addElement($files_butt_another);
    } else {
        $files_butt_create = new XoopsFormButton('', '', _AM_SSECTION_MODIFY, 'submit');
        $files_butt_create->setExtra('onclick="this.form.elements.op.value=\'modify\'"');
        $files_button_tray->addElement($files_butt_create);
    }
    $files_butt_clear = new XoopsFormButton('', '', _AM_SSECTION_CLEAR, 'reset');
    $files_button_tray->addElement($files_butt_clear);
    $butt_cancel = new XoopsFormButton('', '', _AM_SSECTION_CANCEL, 'button');
    $butt_cancel->setExtra('onclick="history.go(-1)"');
    $files_button_tray->addElement($butt_cancel);
    $files_form->addElement($files_button_tray);
    // fileid
    $files_form->addElement(new XoopsFormHidden('fileid', $fileid));
    // itemid
    $files_form->addElement(new XoopsFormHidden('itemid', $itemid));
    $files_form->display();
    if ($fileid != 0) {
        smartsection_close_collapsable('editfile', 'editfileicon');
    } else {
        smartsection_close_collapsable('addfile', 'addfileicon');
    }
}
Exemple #9
0
<?php

/**
* $Id: pagewrap.php 331 2007-12-23 16:01:11Z malanciault $
* Module: SmartSection
* Author: The SmartFactory <www.smartfactory.ca>
* Credits : TinyContent developped by Tobias Liegl (AKA CHAPI) (http://www.chapi.de)
* Licence: GNU
*/
include_once "admin_header.php";
smartsection_xoops_cp_header();
smartsection_adminMenu(-1, _AM_SSECTION_ITEMS . " > " . _AM_SSECTION_PAGEWRAP);
smartsection_collapsableBar('pagewraptable', 'pagewrapicon', _AM_SSECTION_PAGEWRAP, _AM_SSECTION_PAGEWRAPDSC);
$dir = smartsection_getUploadDir(true, 'content');
if (!eregi("777", decoct(fileperms($dir)))) {
    echo "<font color='FF0000'><h4>" . _AM_SSECTION_PERMERROR . "</h4></font>";
}
// Upload File
echo "<form name='form_name2' id='form_name2' action='pw_upload_file.php' method='post' enctype='multipart/form-data'>";
echo "<table cellspacing='1' width='100%' class='outer'>";
echo "<tr><th colspan='2'>" . _AM_SSECTION_UPLOAD_FILE . "</th></tr>";
echo "<tr valign='top' align='left'><td class='head'>" . _AM_SSECTION_SEARCH . "</td><td class='even'><input type='file' name='fileupload' id='fileupload' size='30' /></td></tr>";
echo "<tr valign='top' align='left'><td class='head'><input type='hidden' name='MAX_FILE_SIZE' id='op' value='500000' /></td><td class='even'><input type='submit' name='submit' value='" . _AM_SSECTION_UPLOAD . "' /></td></tr>";
echo "</table>";
echo "</form>";
// Delete File
$form = new XoopsThemeForm(_AM_SSECTION_DELETEFILE, "form_name", "pw_delete_file.php");
$pWrap_select = new XoopsFormSelect(smartsection_getUploadDir(true, 'content'), "address");
$folder = dir($dir);
while ($file = $folder->read()) {
    if ($file != "." && $file != "..") {
Exemple #10
0
function search()
{
    global $oAdminButton, $hMime, $limit, $start, $imagearray, $aSearchBy, $aOrderBy, $aLimitBy, $aSortBy;
    if (isset($_POST['deleteMimes'])) {
        $aMimes = $_POST['mimes'];
        $crit = new Criteria('mime_id', "(" . implode($aMimes, ',') . ")", "IN");
        if ($hMime->deleteAll($crit)) {
            header("Location: " . SMARTSECTION_ADMIN_URL . "/mimetypes.php?limit={$limit}&start={$start}");
        } else {
            redirect_header(SMARTSECTION_ADMIN_URL . "/mimetypes.php?limit={$limit}&start={$start}", 3, _AM_SSECTION_MESSAGE_DELETE_MIME_ERROR);
        }
    }
    if (isset($_POST['add_mime'])) {
        header("Location: " . SMARTSECTION_ADMIN_URL . "/mimetypes.php?op=add&start={$start}&limit={$limit}");
        exit;
    }
    if (isset($_REQUEST['order'])) {
        $order = $_REQUEST['order'];
    } else {
        $order = "ASC";
    }
    if (isset($_REQUEST['sort'])) {
        $sort = $_REQUEST['sort'];
    } else {
        $sort = "mime_name";
    }
    smartsection_xoops_cp_header();
    smartsection_adminMenu(4, _AM_SSECTION_MIMETYPES . " > " . _AM_SSECTION_BUTTON_SEARCH);
    smartsection_collapsableBar('mimemsearchtable', 'mimesearchicon', _AM_SSECTION_MIME_SEARCH);
    if (!isset($_REQUEST['mime_search'])) {
        echo "<form action='mimetypes.php?op=search' method='post'>";
        echo "<table width='100%' cellspacing='1' class='outer'>";
        echo "<tr><th colspan='2'>" . _AM_SSECTION_TEXT_SEARCH_MIME . "</th></tr>";
        echo "<tr><td class='head' width='20%'>" . _AM_SSECTION_TEXT_SEARCH_BY . "</td>\n                  <td class='even'>\n                      <select name='search_by'>";
        foreach ($aSortBy as $value => $text) {
            echo "<option value='{$value}'>{$text}</option>";
        }
        echo "</select>\n                  </td>\n              </tr>";
        echo "<tr><td class='head'>" . _AM_SSECTION_TEXT_SEARCH_TEXT . "</td>\n                  <td class='even'>\n                      <input type='text' name='search_text' id='search_text' value='' />\n                  </td>\n              </tr>";
        echo "<tr class='foot'>\n                  <td colspan='2'>\n                      <input type='submit' name='mime_search' id='mime_search' value='" . _AM_SSECTION_BUTTON_SEARCH . "' />\n                  </td>\n              </tr>";
        echo "</table></form>";
    } else {
        $search_field = $_REQUEST['search_by'];
        $search_text = $_REQUEST['search_text'];
        $crit = new Criteria($search_field, "%{$search_text}%", 'LIKE');
        $crit->setSort($sort);
        $crit->setOrder($order);
        $crit->setLimit($limit);
        $crit->setStart($start);
        $mime_count =& $hMime->getCount($crit);
        $mimetypes =& $hMime->getObjects($crit);
        $nav = new XoopsPageNav($mime_count, $limit, $start, 'start', "op=search&amp;limit={$limit}&amp;order={$order}&amp;sort={$sort}&amp;mime_search=1&amp;search_by={$search_field}&amp;search_text={$search_text}");
        // Display results
        echo '<script type="text/javascript" src="' . SMARTSECTION_URL . '/include/functions.js"></script>';
        echo "<table width='100%' cellspacing='1' class='outer'>";
        echo "<tr><td colspan='6' align='right'>";
        echo "<form action='" . SMARTSECTION_ADMIN_URL . "/mimetypes.php?op=search' style='margin:0; padding:0;' method='post'>";
        echo "<table>";
        echo "<tr>";
        echo "<td align='right'>" . _AM_SSECTION_TEXT_SEARCH_BY . "</td>";
        echo "<td align='left'><select name='search_by'>";
        foreach ($aSearchBy as $value => $text) {
            $search_field == $value ? $selected = "selected='selected'" : ($selected = '');
            echo "<option value='{$value}' {$selected}>{$text}</option>";
        }
        echo "</select></td>";
        echo "<td align='right'>" . _AM_SSECTION_TEXT_SEARCH_TEXT . "</td>";
        echo "<td align='left'><input type='text' name='search_text' id='search_text' value='{$search_text}' /></td>";
        echo "<td><input type='submit' name='mime_search' id='mime_search' value='" . _AM_SSECTION_BUTTON_SEARCH . "' /></td>";
        echo "</tr></table></form></td></tr>";
        echo "<tr><td colspan='6'>";
        echo "<form action='" . SMARTSECTION_ADMIN_URL . "/mimetypes.php?op=search' style='margin:0; padding:0;' method='post'>";
        echo "<table width='100%'>";
        echo "<tr><td align='right'>" . _AM_SSECTION_TEXT_SORT_BY . " \n                  <select name='sort'>";
        foreach ($aSortBy as $value => $text) {
            $sort == $value ? $selected = "selected='selected'" : ($selected = '');
            echo "<option value='{$value}' {$selected}>{$text}</option>";
        }
        echo "</select>\n                &nbsp;&nbsp;&nbsp;\n                  " . _AM_SSECTION_TEXT_ORDER_BY . "\n                  <select name='order'>";
        foreach ($aOrderBy as $value => $text) {
            $order == $value ? $selected = "selected='selected'" : ($selected = '');
            echo "<option value='{$value}' {$selected}>{$text}</option>";
        }
        echo "</select>\n                  &nbsp;&nbsp;&nbsp;\n                  " . _AM_SSECTION_TEXT_NUMBER_PER_PAGE . "\n                  <select name='limit'>";
        foreach ($aLimitBy as $value => $text) {
            $limit == $value ? $selected = "selected='selected'" : ($selected = '');
            echo "<option value='{$value}' {$selected}>{$text}</option>";
        }
        echo "</select>\n                  <input type='submit' name='mime_sort' id='mime_sort' value='" . _AM_SSECTION_BUTTON_SUBMIT . "' />\n                  <input type='hidden' name='mime_search' id='mime_search' value='1' />\n                  <input type='hidden' name='search_by' id='search_by' value='{$search_field}' />\n                  <input type='hidden' name='search_text' id='search_text' value='{$search_text}' />\n              </td>\n          </tr>";
        echo "</table>";
        echo "</td></tr>";
        if (count($mimetypes) > 0) {
            echo "<tr><th colspan='6'>" . _AM_SSECTION_TEXT_SEARCH_MIME . "</th></tr>";
            echo "<tr class='head'>\n                      <td>" . _AM_SSECTION_MIME_ID . "</td>\n                      <td>" . _AM_SSECTION_MIME_NAME . "</td>\n                      <td>" . _AM_SSECTION_MIME_EXT . "</td>\n                      <td>" . _AM_SSECTION_MIME_ADMIN . "</td>\n                      <td>" . _AM_SSECTION_MIME_USER . "</td>\n                      <td>" . _AM_SSECTION_MINDEX_ACTION . "</td>\n                  </tr>";
            foreach ($mimetypes as $mime) {
                echo "<tr class='even'>\n                          <td><input type='checkbox' name='mimes[]' value='" . $mime->getVar('mime_id') . "' />" . $mime->getVar('mime_id') . "</td>\n                          <td>" . $mime->getVar('mime_name') . "</td>\n                          <td>" . $mime->getVar('mime_ext') . "</td>\n                          <td>\n                              <a href='" . SMARTSECTION_ADMIN_URL . "/mimetypes.php?op=updateMimeValue&amp;id=" . $mime->getVar('mime_id') . "&amp;mime_admin=" . $mime->getVar('mime_admin') . "&amp;limit=" . $limit . "&amp;start=" . $start . "'>\n                              " . ($mime->getVar('mime_admin') ? $imagearray['online'] : $imagearray['offline']) . "</a>\n                          </td>\n                          <td>\n                              <a href='" . SMARTSECTION_ADMIN_URL . "/mimetypes.php?op=updateMimeValue&amp;id=" . $mime->getVar('mime_id') . "&amp;mime_user="******"&amp;limit=" . $limit . "&amp;start=" . $start . "'>\n                              " . ($mime->getVar('mime_user') ? $imagearray['online'] : $imagearray['offline']) . "</a>\n                          </td>\n                          <td>\n                              <a href='" . SMARTSECTION_ADMIN_URL . "/mimetypes.php?op=edit&amp;id=" . $mime->getVar('mime_id') . "&amp;limit=" . $limit . "&amp;start=" . $start . "'>" . $imagearray['editimg'] . "</a>\n                              <a href='" . SMARTSECTION_ADMIN_URL . "/mimetypes.php?op=delete&amp;id=" . $mime->getVar('mime_id') . "&amp;limit=" . $limit . "&amp;start=" . $start . "'>" . $imagearray['deleteimg'] . "</a>\n                          </td>\n                      </tr>";
            }
            echo "<tr class='foot'>\n                      <td colspan='6' valign='top'>\n                          <a href='http://www.filext.com' style='float: right' target='_blank'>" . _AM_SSECTION_MIME_FINDMIMETYPE . "</a>\n                          <input type='checkbox' name='checkAllMimes' value='0' onclick='selectAll(this.form,\"mimes[]\",this.checked);' />\n                          <input type='submit' name='deleteMimes' id='deleteMimes' value='" . _AM_SSECTION_BUTTON_DELETE . "' />\n                          <input type='submit' name='add_mime' id='add_mime' value='" . _AM_SSECTION_MIME_CREATEF . "' class='formButton' />\n                      </td>\n                  </tr>";
        } else {
            echo "<tr><th>" . _AM_SSECTION_TEXT_SEARCH_MIME . "</th></tr>";
            echo "<tr class='even'>\n                      <td>" . _AM_SSECTION_TEXT_NO_RECORDS . "</td>\n                  </tr>";
        }
        echo "</table>";
        echo "<div id='pagenav'>" . $nav->renderNav() . "</div>";
    }
    smartsection_close_collapsable('mimesearchtable', 'mimesearchicon');
    xoops_cp_footer();
}
Exemple #11
0
function edititem($showmenu = false, $itemid = 0, $clone = false)
{
    global $smartsection_current_page, $smartsection_file_handler, $smartsection_item_handler, $smartsection_category_handler, $xoopsUser, $xoopsModule, $xoopsConfig, $xoopsDB;
    include_once XOOPS_ROOT_PATH . '/class/xoopsformloader.php';
    include_once SMARTSECTION_ROOT_PATH . '/class/formdatetime.php';
    // if there is a parameter, and the id exists, retrieve data: we're editing a item
    if ($itemid != 0) {
        // Creating the ITEM object
        $itemObj = $smartsection_item_handler->get($itemid);
        if (!$itemObj) {
            redirect_header("item.php", 1, _AM_SSECTION_NOITEMSELECTED);
            exit;
        }
        if ($clone) {
            $itemObj->setNew();
            $itemObj->setVar('status', _SSECTION_STATUS_NOTSET);
            $itemObj->setVar('datesub', time());
        }
        switch ($itemObj->status()) {
            case _SSECTION_STATUS_SUBMITTED:
                $breadcrumb_action1 = _AM_SSECTION_SUBMITTED;
                $breadcrumb_action2 = _AM_SSECTION_APPROVING;
                $page_title = _AM_SSECTION_SUBMITTED_TITLE;
                $page_info = _AM_SSECTION_SUBMITTED_INFO;
                $button_caption = _AM_SSECTION_APPROVE;
                $new_status = _SSECTION_STATUS_PUBLISHED;
                break;
            case _SSECTION_STATUS_PUBLISHED:
                $breadcrumb_action1 = _AM_SSECTION_PUBLISHED;
                $breadcrumb_action2 = _AM_SSECTION_EDITING;
                $page_title = _AM_SSECTION_PUBLISHEDEDITING;
                $page_info = _AM_SSECTION_PUBLISHEDEDITING_INFO;
                $button_caption = _AM_SSECTION_MODIFY;
                $new_status = _SSECTION_STATUS_PUBLISHED;
                break;
            case _SSECTION_STATUS_OFFLINE:
                $breadcrumb_action1 = _AM_SSECTION_OFFLINE;
                $breadcrumb_action2 = _AM_SSECTION_EDITING;
                $page_title = _AM_SSECTION_OFFLINEEDITING;
                $page_info = _AM_SSECTION_OFFLINEEDITING_INFO;
                $button_caption = _AM_SSECTION_MODIFY;
                $new_status = _SSECTION_STATUS_OFFLINE;
                break;
            case _SSECTION_STATUS_REJECTED:
                $breadcrumb_action1 = _AM_SSECTION_REJECTED;
                $breadcrumb_action2 = _AM_SSECTION_REJECTED;
                $page_title = _AM_SSECTION_REJECTED_EDIT;
                $page_info = _AM_SSECTION_REJECTED_EDIT_INFO;
                $button_caption = _AM_SSECTION_MODIFY;
                $new_status = _SSECTION_STATUS_REJECTED;
                break;
            case _SSECTION_STATUS_NOTSET:
                // Then it's a clone...
                $breadcrumb_action1 = _AM_SSECTION_ITEMS;
                $breadcrumb_action2 = _AM_SSECTION_CLONE_NEW;
                $button_caption = _AM_SSECTION_CREATE;
                $new_status = _SSECTION_STATUS_PUBLISHED;
                $page_title = _AM_SSECTION_ITEM_DUPLICATING;
                $page_info = _AM_SSECTION_ITEM_DUPLICATING_DSC;
                break;
            case "default":
            default:
                $breadcrumb_action1 = _AM_SSECTION_ITEMS;
                $breadcrumb_action2 = _AM_SSECTION_EDITING;
                $page_title = _AM_SSECTION_PUBLISHEDEDITING;
                $page_info = _AM_SSECTION_PUBLISHEDEDITING_INFO;
                $button_caption = _AM_SSECTION_MODIFY;
                $new_status = _SSECTION_STATUS_PUBLISHED;
                break;
        }
        $categoryObj = $itemObj->category();
        if ($showmenu) {
            smartsection_adminMenu(2, $breadcrumb_action1 . " > " . $breadcrumb_action2);
        }
        echo "<br />\n";
        smartsection_collapsableBar('edititemtable', 'edititemicon', $page_title, $page_info);
        if (!$clone) {
            echo "<form><div style=\"margin-bottom: 10px;\">";
            echo "<input type='button' name='button' onclick=\"location='item.php?op=clone&itemid=" . $itemObj->itemid() . "'\" value='" . _AM_SSECTION_CLONE_ITEM . "'>&nbsp;&nbsp;";
            echo "</div></form>";
        }
    } else {
        // there's no parameter, so we're adding an item
        $itemObj =& $smartsection_item_handler->create();
        $itemObj->setVar('uid', $xoopsUser->uid());
        $categoryObj =& $smartsection_category_handler->create();
        $breadcrumb_action1 = _AM_SSECTION_ITEMS;
        $breadcrumb_action2 = _AM_SSECTION_CREATINGNEW;
        $button_caption = _AM_SSECTION_CREATE;
        $new_status = _SSECTION_STATUS_PUBLISHED;
        if ($showmenu) {
            smartsection_adminMenu(2, $breadcrumb_action1 . " > " . $breadcrumb_action2);
        }
        $sel_categoryid = isset($_GET['categoryid']) ? $_GET['categoryid'] : 0;
        $categoryObj->setVar('categoryid', $sel_categoryid);
        smartsection_collapsableBar('createitemtable', 'createitemicon', _AM_SSECTION_ITEM_CREATING, _AM_SSECTION_ITEM_CREATING_DSC);
    }
    // ITEM FORM
    $sform = new XoopsThemeForm(_AM_SSECTION_ITEMS, "op", xoops_getenv('PHP_SELF'));
    $sform->setExtra('enctype="multipart/form-data"');
    // CATEGORY
    $mytree = new XoopsTree($xoopsDB->prefix("smartsection_categories"), "categoryid", "parentid");
    ob_start();
    //$sform->addElement(new XoopsFormHidden('categoryid', $categoryObj->categoryid()));
    $mytree->makeMySelBox("name", "weight", $categoryObj->categoryid());
    $category_label = new XoopsFormLabel(_AM_SSECTION_CATEGORY, ob_get_contents());
    $category_label->setDescription(_AM_SSECTION_CATEGORY_DSC);
    $sform->addElement($category_label);
    ob_end_clean();
    // TITLE
    $title_text = new XoopsFormText(_AM_SSECTION_TITLE, 'title', 50, 255, $itemObj->title(0, 'e'));
    $sform->addElement($title_text, true);
    if (SMARTSECTION_LEVEL >= 5) {
        // SUMMARY
        $summary_text = smartsection_getEditor(_AM_SSECTION_SUMMARY, 'summary', $itemObj->getVar('summary', 'e'));
        $summary_text->setDescription(_AM_SSECTION_SUMMARY_DSC);
        $sform->addElement($summary_text, false);
        // DISPLAY_SUMMARY
        $display_summary_radio = new XoopsFormRadioYN(_AM_SSECTION_DISPLAY_SUMMARY, 'display_summary', $itemObj->display_summary(), ' ' . _AM_SSECTION_YES . '', ' ' . _AM_SSECTION_NO . '');
        $sform->addElement($display_summary_radio);
    }
    // BODY
    /*if ($itemObj->address()) {
    		// Main body : pagewrap
    		$address_select = new XoopsFormSelect(_AM_SSECTION_BODY_SELECTFILE, "address", $itemObj->address());
    		$address_select->setDescription(_AM_SSECTION_BODY_SELECTFILE_DSC);
    	    $dir = smartsection_getUploadDir(true, 'content');
    		$folder = dir($dir);
    		while($file = $folder->read()) {
    	      if ($file != "." && $file != "..") {
    		     $address_select->addOption($file, "".$file."");
    		  }
    		}
    	    $folder->close();
    		$sform->addElement($address_select);
    
    		$sform->addElement(new XoopsFormHidden('body', ''));
    	} else {*/
    $body_text = smartsection_getEditor(_AM_SSECTION_BODY, 'body', $itemObj->getVar('body', 'e'));
    if (SMARTSECTION_LEVEL >= 5) {
        $body_text->setDescription(sprintf(_AM_SSECTION_BODY_DSC, SMARTSECTION_URL . "/admin/pagewrap_lookup.php"));
    }
    $sform->addElement($body_text);
    //}
    if (SMARTSECTION_LEVEL >= 5) {
        // Available pages to wrap
        $wrap_pages = XoopsLists::getHtmlListAsArray(smartsection_getUploadDir(true, 'content'));
        $available_wrap_pages_text = array();
        foreach ($wrap_pages as $page) {
            $available_wrap_pages_text[] = "<span onclick='smartsectionPageWrap(\"body\", \"[pagewrap={$page}] \");' onmouseover='style.cursor=\"pointer\"'>{$page}</span>";
        }
        $available_wrap_pages = new XoopsFormLabel(_AM_SSECTION_AVAILABLE_PAGE_WRAP, implode(', ', $available_wrap_pages_text));
        $available_wrap_pages->setDescription(_AM_SSECTION_AVAILABLE_PAGE_WRAP_DSC);
        $sform->addElement($available_wrap_pages);
        // Tags
        if (smartsection_tag_module_included()) {
            include_once XOOPS_ROOT_PATH . "/modules/tag/include/formtag.php";
            $text_tags = new XoopsFormTag("item_tag", 60, 255, $itemObj->getVar('item_tag', 'e'), 0);
            $sform->addElement($text_tags);
        }
        // IMAGE
        $image_array = XoopsLists::getImgListAsArray(smartsection_getImageDir('item'));
        $image_select = new XoopsFormSelect('', 'image', $itemObj->image());
        //$image_select -> addOption ('-1', '---------------');
        $image_select->addOptionArray($image_array);
        $image_select->setExtra("onchange='showImgSelected(\"image3\", \"image\", \"" . 'uploads/smartsection/images/item/' . "\", \"\", \"" . XOOPS_URL . "\")'");
        $image_tray = new XoopsFormElementTray(_AM_SSECTION_IMAGE_ITEM, '&nbsp;');
        $image_tray->addElement($image_select);
        $image_tray->addElement(new XoopsFormLabel('', "<br /><br /><img src='" . smartsection_getImageDir('item', false) . $itemObj->image() . "' name='image3' id='image3' alt='' />"));
        $image_tray->setDescription(_AM_SSECTION_IMAGE_ITEM_DSC);
        $sform->addElement($image_tray);
        // IMAGE UPLOAD
        $max_size = 5000000;
        $image_file_box = new XoopsFormFile(_AM_SSECTION_IMAGE_UPLOAD, "image_file", $max_size);
        $image_file_box->setExtra("size ='50'");
        $image_file_box->setDescription(_AM_SSECTION_IMAGE_UPLOAD_ITEM_DSC);
        $sform->addElement($image_file_box);
    }
    // File upload UPLOAD
    $file_box = new XoopsFormFile(smartsection_new_feature_tag() . _AM_SSECTION_ITEM_UPLOAD_FILE, "userfile", 0);
    $file_box->setDescription(_AM_SSECTION_ITEM_UPLOAD_FILE_DSC . smartsection_new_feature_tag());
    $file_box->setExtra("size ='50'");
    $sform->addElement($file_box);
    // Uid
    /*  We need to retreive the users manually because for some reason, on the frxoops.org server,
    	    the method users::getobjects encounters a memory error
    	*/
    $uid = $itemObj->uid();
    $uid_select = new XoopsFormSelect(_AM_SSECTION_UID, 'uid', $uid, 1, false);
    $uid_select->setDescription(_AM_SSECTION_UID_DSC);
    $sql = "SELECT uid, uname FROM " . $xoopsDB->prefix('users') . " ORDER BY uname ASC";
    $result = $xoopsDB->query($sql);
    $users_array = array();
    $users_array[0] = $xoopsConfig['anonymous'];
    while ($myrow = $xoopsDB->fetchArray($result)) {
        $users_array[$myrow['uid']] = $myrow['uname'];
    }
    $uid_select->addOptionArray($users_array);
    $sform->addElement($uid_select);
    // Datesub
    $datesub = $itemObj->getVar('datesub') == 0 ? time() : $itemObj->getVar('datesub');
    $datesub_datetime = new SmartsectionFormDateTime(_AM_SSECTION_DATESUB, 'datesub', $size = 15, $datesub);
    $datesub_datetime->setDescription(_AM_SSECTION_DATESUB_DSC);
    $sform->addElement($datesub_datetime);
    // STATUS
    $options = array(_SSECTION_STATUS_PUBLISHED => _AM_SSECTION_PUBLISHED, _SSECTION_STATUS_OFFLINE => _AM_SSECTION_OFFLINE, _SSECTION_STATUS_SUBMITTED => _AM_SSECTION_SUBMITTED, _SSECTION_STATUS_REJECTED => _AM_SSECTION_REJECTED);
    $status_select = new XoopsFormSelect(_AM_SSECTION_STATUS, 'status', $new_status);
    $status_select->addOptionArray($options);
    $status_select->setDescription(_AM_SSECTION_STATUS_DSC);
    $sform->addElement($status_select);
    if (SMARTSECTION_LEVEL > 0) {
        // Short url
        $text_short_url = new XoopsFormText(_AM_SSECTION_ITEM_SHORT_URL, 'short_url', 50, 255, $itemObj->short_url('e'));
        $text_short_url->setDescription(_AM_SSECTION_ITEM_SHORT_URL_DSC);
        $sform->addElement($text_short_url);
        // Meta Keywords
        $text_meta_keywords = new XoopsFormTextArea(_AM_SSECTION_ITEM_META_KEYWORDS, 'meta_keywords', $itemObj->meta_keywords('e'), 7, 60);
        $text_meta_keywords->setDescription(_AM_SSECTION_ITEM_META_KEYWORDS_DSC);
        $sform->addElement($text_meta_keywords);
        // Meta Description
        $text_meta_description = new XoopsFormTextArea(_AM_SSECTION_ITEM_META_DESCRIPTION, 'meta_description', $itemObj->meta_description('e'), 7, 60);
        $text_meta_description->setDescription(_AM_SSECTION_ITEM_META_DESCRIPTION_DSC);
        $sform->addElement($text_meta_description);
    }
    // WEIGHT
    $sform->addElement(new XoopsFormText(_AM_SSECTION_WEIGHT, 'weight', 5, 5, $itemObj->weight()), true);
    if (SMARTSECTION_LEVEL >= 5) {
        // COMMENTS
        $addcomments_radio = new XoopsFormRadioYN(_AM_SSECTION_ALLOWCOMMENTS, 'cancomment', $itemObj->cancomment(), ' ' . _AM_SSECTION_YES . '', ' ' . _AM_SSECTION_NO . '');
        $sform->addElement($addcomments_radio);
    }
    // PER ITEM PERMISSIONS
    $member_handler =& xoops_gethandler('member');
    $group_list = $member_handler->getGroupList();
    $groups_checkbox = new XoopsFormCheckBox(_AM_SSECTION_PERMISSIONS_ITEM, 'groups[]', $itemObj->getGroups_read());
    $groups_checkbox->setDescription(_AM_SSECTION_PERMISSIONS_ITEM_DSC);
    foreach ($group_list as $group_id => $group_name) {
        if ($group_id != XOOPS_GROUP_ADMIN) {
            $groups_checkbox->addOption($group_id, $group_name);
        }
    }
    $sform->addElement($groups_checkbox);
    $p_view_checkbox = new XoopsFormCheckBox(_AM_SSECTION_PARTIAL_VIEW, 'partial_view[]', $itemObj->partial_view());
    $p_view_checkbox->setDescription(_AM_SSECTION_PARTIAL_VIEWDSC);
    foreach ($group_list as $group_id => $group_name) {
        if ($group_id != XOOPS_GROUP_ADMIN) {
            $p_view_checkbox->addOption($group_id, $group_name);
        }
    }
    $sform->addElement($p_view_checkbox);
    /*$partial_view_radio = new XoopsFormRadioYN(_AM_SSECTION_PARTIAL_VIEW, 'partial_view', $itemObj->partial_view(), ' ' . _AM_SSECTION_YES . '', ' ' . _AM_SSECTION_NO . '');
    	$partial_view_radio->setDescription(_AM_SSECTION_PARTIAL_VIEWDSC);
    	$sform->addElement($partial_view_radio);*/
    if (SMARTSECTION_LEVEL >= 5) {
        // VARIOUS OPTIONS
        $options_tray = new XoopsFormElementTray(_AM_SSECTION_OPTIONS, '<br />');
        $html_checkbox = new XoopsFormCheckBox('', 'dohtml', $itemObj->dohtml());
        $html_checkbox->addOption(1, _AM_SSECTION_DOHTML);
        $options_tray->addElement($html_checkbox);
        $smiley_checkbox = new XoopsFormCheckBox('', 'dosmiley', $itemObj->dosmiley());
        $smiley_checkbox->addOption(1, _AM_SSECTION_DOSMILEY);
        $options_tray->addElement($smiley_checkbox);
        $xcodes_checkbox = new XoopsFormCheckBox('', 'doxcode', $itemObj->doxcode());
        $xcodes_checkbox->addOption(1, _AM_SSECTION_DOXCODE);
        $options_tray->addElement($xcodes_checkbox);
        $images_checkbox = new XoopsFormCheckBox('', 'doimage', $itemObj->doimage());
        $images_checkbox->addOption(1, _AM_SSECTION_DOIMAGE);
        $options_tray->addElement($images_checkbox);
        $linebreak_checkbox = new XoopsFormCheckBox('', 'dobr', $itemObj->dobr());
        $linebreak_checkbox->addOption(1, _AM_SSECTION_DOLINEBREAK);
        $options_tray->addElement($linebreak_checkbox);
        $sform->addElement($options_tray);
    }
    // item ID
    if ($clone) {
        $itemid = 0;
    }
    $sform->addElement(new XoopsFormHidden('itemid', $itemid));
    $button_tray = new XoopsFormElementTray('', '');
    $hidden = new XoopsFormHidden('op', 'additem');
    $button_tray->addElement($hidden);
    if (!$itemid) {
        // there's no itemid? Then it's a new item
        // $button_tray -> addElement( new XoopsFormButton( '', 'mod', _AM_SSECTION_CREATE, 'submit' ) );
        $butt_create = new XoopsFormButton('', '', _AM_SSECTION_CREATE, 'submit');
        $butt_create->setExtra('onclick="this.form.elements.op.value=\'additem\'"');
        $button_tray->addElement($butt_create);
        $butt_clear = new XoopsFormButton('', '', _AM_SSECTION_CLEAR, 'reset');
        $button_tray->addElement($butt_clear);
        $butt_cancel = new XoopsFormButton('', '', _AM_SSECTION_CANCEL, 'button');
        $butt_cancel->setExtra('onclick="history.go(-1)"');
        $button_tray->addElement($butt_cancel);
        $sform->addElement($button_tray);
        $sform->display();
        smartsection_close_collapsable('createitemtable', 'createitemicon');
    } else {
        // else, we're editing an existing item
        // $button_tray -> addElement( new XoopsFormButton( '', 'mod', _AM_SSECTION_MODIFY, 'submit' ) );
        $butt_create = new XoopsFormButton('', '', $button_caption, 'submit');
        $butt_create->setExtra('onclick="this.form.elements.op.value=\'additem\'"');
        $button_tray->addElement($butt_create);
        $butt_cancel = new XoopsFormButton('', '', _AM_SSECTION_CANCEL, 'button');
        $butt_cancel->setExtra('onclick="history.go(-1)"');
        $button_tray->addElement($butt_cancel);
        $sform->addElement($button_tray);
        $sform->display();
        smartsection_close_collapsable('edititemtable', 'edititemicon');
    }
    if (SMARTSECTION_LEVEL >= 5) {
        smartsection_collapsableBar('pagewraptable', 'pagewrapicon', _AM_SSECTION_PAGEWRAP, _AM_SSECTION_PAGEWRAPDSC);
        $dir = smartsection_getUploadDir(true, 'content');
        if (!eregi("777", decoct(fileperms($dir)))) {
            echo "<font color='FF0000'><h4>" . _AM_SSECTION_PERMERROR . "</h4></font>";
        }
        // Upload File
        echo "<form name='form_name2' id='form_name2' action='pw_upload_file.php' method='post' enctype='multipart/form-data'>";
        echo "<table cellspacing='1' width='100%' class='outer'>";
        echo "<tr><th colspan='2'>" . _AM_SSECTION_UPLOAD_FILE . "</th></tr>";
        echo "<tr valign='top' align='left'><td class='head'>" . _AM_SSECTION_SEARCH_PW . "</td><td class='even'><input type='file' name='fileupload' id='fileupload' size='30' /></td></tr>";
        echo "<tr valign='top' align='left'><td class='head'><input type='hidden' name='MAX_FILE_SIZE' id='op' value='500000' /></td><td class='even'><input type='submit' name='submit' value='" . _AM_SSECTION_UPLOAD . "' /></td></tr>";
        echo "<input type='hidden' name='backto' value='{$smartsection_current_page}'/>";
        echo "</table>";
        echo "</form>";
        // Delete File
        $form = new XoopsThemeForm(_AM_SSECTION_DELETEFILE, "form_name", "pw_delete_file.php");
        $pWrap_select = new XoopsFormSelect(smartsection_getUploadDir(true, 'content'), "address");
        $folder = dir($dir);
        while ($file = $folder->read()) {
            if ($file != "." && $file != "..") {
                $pWrap_select->addOption($file, $file);
            }
        }
        $folder->close();
        $form->addElement($pWrap_select);
        $delfile = "delfile";
        $form->addElement(new XoopsFormHidden('op', $delfile));
        $submit = new XoopsFormButton("", "submit", _AM_SSECTION_BUTTON_DELETE, "submit");
        $form->addElement($submit);
        $form->addElement(new XoopsFormHidden('backto', $smartsection_current_page));
        $form->display();
        smartsection_close_collapsable('pagewraptable', 'pagewrapicon');
    }
    unset($hidden);
    if ($itemid != 0) {
        showfiles($itemObj);
    }
}