Example #1
0
function b_ams_spotlight_edit($options)
{
    include_once XOOPS_ROOT_PATH . "/class/xoopsformloader.php";
    include_once XOOPS_ROOT_PATH . "/modules/AMS/include/functions.inc.php";
    global $xoopsModule;
    AMS_updateCache();
    if (!isset($xoopsModule) || $xoopsModule->getVar('dirname') != "AMS") {
        $module_handler =& xoops_gethandler('module');
        $module =& $module_handler->getByDirname("AMS");
    } else {
        $module =& $xoopsModule;
    }
    $config_handler =& xoops_gethandler('config');
    $moduleConfig =& $config_handler->getConfigsByCat(0, $module->getVar('mid'));
    $templates_list = array_flip($moduleConfig['spotlight_template']);
    //fix template list value lost after module update
    foreach ($templates_list as $k => $v) {
        $templates_list[$k] = substr($k, 20, strlen($k) - 25);
    }
    $form = new XoopsFormElementTray('', '<br/><br />');
    $numarticles_select = new XoopsFormText(_AMS_MB_SPOT_NUMARTICLES, 'options[0]', 10, 10, $options[0]);
    $form->addElement($numarticles_select);
    $form->addElement(new XoopsFormRadioYN(_AMS_MB_SPOT_SHOWMINISTATS, 'options[1]', $options[1]));
    //spotlight template selection
    $template_select = new XoopsFormSelect(_AMS_MB_SPOTLIGHT_TEMPLATE, 'options[2]', $options[2]);
    $template_select->addOptionArray($templates_list);
    $template_select->setExtra("onchange='showImgSelected(\"template_preview\", \"options[2]\", \"" . '/modules/AMS/images/spotlight_preview' . "\", \".jpg\", \"" . XOOPS_URL . "\")'");
    $template_select->setDescription(_AMS_MB_SPOTLIGHT_TEMPLATE_DESC);
    $form->addElement($template_select);
    //spotlight preview image
    $imgpath = sprintf('', "modules/AMS/images/spotlight_preview/");
    $form->addElement(new XoopsFormLabel('', "<br /><img src='" . XOOPS_URL . "/modules/AMS/images/spotlight_preview/" . $options[2] . ".jpg' name='template_preview' id='template_preview' alt='' />"));
    return $form->render();
}
Example #2
0
function addTopic()
{
    global $xoopsDB, $xoopsModule, $xoopsModuleConfig;
    $topicpid = isset($_POST['topic_pid']) ? intval($_POST['topic_pid']) : 0;
    $xt = new AmsTopic($xoopsDB->prefix("ams_topics"));
    if (!$xt->topicExists($topicpid, $_POST['topic_title'])) {
        $xt->setTopicPid($topicpid);
        if (empty($_POST['topic_title']) || trim($_POST['topic_title']) == '') {
            redirect_header("index.php?op=topicsmanager", 2, _AMS_AM_ERRORTOPICNAME);
        }
        $xt->setTopicTitle($_POST['topic_title']);
        if (isset($_POST['topic_imgurl']) && $_POST['topic_imgurl'] != "") {
            $xt->setTopicImgurl($_POST['topic_imgurl']);
        }
        if (isset($_POST['xoops_upload_file'])) {
            $fldname = $_FILES[$_POST['xoops_upload_file'][0]];
            $fldname = get_magic_quotes_gpc() ? stripslashes($fldname['name']) : $fldname['name'];
            if (trim($fldname != '')) {
                $sfiles = new sFiles();
                $dstpath = XOOPS_ROOT_PATH . "/modules/" . $xoopsModule->dirname() . '/images/topics';
                $destname = $sfiles->createUploadName($dstpath, $fldname, true);
                $permittedtypes = array('image/gif', 'image/jpeg', 'image/pjpeg', 'image/x-png', 'image/png');
                $uploader = new XoopsMediaUploader($dstpath, $permittedtypes, $xoopsModuleConfig['maxuploadsize']);
                $uploader->setTargetFileName($destname);
                if ($uploader->fetchMedia($_POST['xoops_upload_file'][0])) {
                    if ($uploader->upload()) {
                        $xt->setTopicImgurl(basename($destname));
                    } else {
                        echo _AMS_AM_UPLOAD_ERROR;
                    }
                } else {
                    echo $uploader->getErrors();
                }
            }
        }
        $xt->banner_inherit = isset($_POST['banner_inherit']) ? 1 : 0;
        $xt->banner = $_POST['banner'];
        $xt->forum_id = isset($_POST['forum_id']) ? intval($_POST['forum_id']) : 0;
        if ($xt->store()) {
            //This will set default audience
            global $xoopsModule;
            $allTopics = $xt->getAllTopics();
            $totaltopics = count($allTopics);
            if ($totaltopics = 1) {
                //Make sure xoopsModule is AMS.
                if (!isset($xoopsModule) || $xoopsModule->getVar('dirname') != "AMS") {
                    $mod_handler =& xoops_gethandler('module');
                    $amsModule =& $mod_handler->getByDirname('AMS');
                } else {
                    $amsModule =& $xoopsModule;
                }
                // Check audience, and set default value if not yet exist
                if (!ams_isaudiencesetup($amsModule->getVar('mid'))) {
                    $gperm_handler =& xoops_gethandler('groupperm');
                    $member_handler =& xoops_gethandler('member');
                    $group_id_ref =& $member_handler->getGroups(null, true);
                    //insert all groups into default audience
                    foreach (array_keys($group_id_ref) as $i) {
                        $gperm_handler->addRight("ams_audience", 1, intval($group_id_ref[$i]->getVar('groupid')), intval($amsModule->getVar('mid')));
                    }
                }
            }
            //Added in AMS 2.50 Final. Use News 1.62 permission style
            // Permissions
            $gperm_handler =& xoops_gethandler('groupperm');
            if (isset($_POST['groups_AMS_can_approve'])) {
                foreach ($_POST['groups_AMS_can_approve'] as $onegroup_id) {
                    $gperm_handler->addRight('ams_approve', $xt->topic_id(), $onegroup_id, $xoopsModule->getVar('mid'));
                }
            }
            if (isset($_POST['groups_AMS_can_submit'])) {
                foreach ($_POST['groups_AMS_can_submit'] as $onegroup_id) {
                    $gperm_handler->addRight('ams_submit', $xt->topic_id(), $onegroup_id, $xoopsModule->getVar('mid'));
                }
            }
            if (isset($_POST['groups_AMS_can_view'])) {
                foreach ($_POST['groups_AMS_can_view'] as $onegroup_id) {
                    $gperm_handler->addRight('ams_view', $xt->topic_id(), $onegroup_id, $xoopsModule->getVar('mid'));
                }
            }
            AMS_updateCache();
            $notification_handler =& xoops_gethandler('notification');
            $tags = array();
            $tags['TOPIC_NAME'] = $_POST['topic_title'];
            $notification_handler->triggerEvent('global', 0, 'new_category', $tags);
            redirect_header('index.php?op=topicsmanager', 1, _AMS_AM_DBUPDATED);
            exit;
        }
    } else {
        redirect_header('index.php?op=topicsmanager', 2, _AMS_AM_ADD_TOPIC_ERROR);
        exit;
    }
}
Example #3
0
include_once XOOPS_ROOT_PATH . "/class/xoopsformloader.php";
include_once XOOPS_ROOT_PATH . "/modules/AMS/include/functions.inc.php";
global $xoopsModule;
if (!isset($xoopsModule) || $xoopsModule->getVar('dirname') != "AMS") {
    $mod_handler =& xoops_gethandler('module');
    $amsModule =& $mod_handler->getByDirname('AMS');
} else {
    $amsModule =& $xoopsModule;
}
xoops_cp_header();
adminmenu(-1);
//load AMS SEO class
$SEO_handler =& xoops_getmodulehandler('seo', 'AMS');
//if process form submitted
if (isset($_POST['submit'])) {
    AMS_updateCache();
    $myts =& MyTextSanitizer::getInstance();
    $SEO_is_Enable = intval($_POST['friendlyurl_enable']);
    $SEO_URL_Template = '[XOOPS_URL]/' . $myts->htmlSpecialChars($_POST['urltemplate']);
    //Save setting into cache
    $thisSEO = $SEO_handler->save_setting(array('friendlyurl_enable' => $SEO_is_Enable, 'urltemplate' => $SEO_URL_Template));
} else {
}
//load AMS SEO setting from cache
$thisSEO = $SEO_handler->read_setting();
$pattern = "/\\[XOOPS_URL\\]\\//";
$rep_pat = "";
$thisSEO['urltemplate'] = preg_replace($pattern, $rep_pat, $thisSEO['urltemplate']);
$sform = new XoopsThemeForm(_AMS_AM_SEO_SUBMITFORM, "seoform", XOOPS_URL . '/modules/' . $amsModule->getVar('dirname') . '/admin/seo.php');
$friendly_url_tray = new XoopsFormElementTray(_AMS_AM_SEO_FRIENDLYURL, '<br />');
$friendly_url_tray->addElement(new XoopsFormRadioYN(_AMS_AM_SEO_ENABLE, 'friendlyurl_enable', $thisSEO['friendlyurl_enable'], _AMS_AM_YES, _AMS_AM_NO));