/**
  * Set an FaqAdapter class
  *
  * @return BOOL true (success) / false (failure)
  */
 function setFaqAdapter($name)
 {
     // Step 1 - check that $name is a valid adapter
     $isValid = xhelpFaqAdapterFactory::_adapterValid($name);
     // Step 2 - store in xhelp_meta table
     $ret = false;
     if ($isValid) {
         $ret = xhelpSetMeta('faq_adapter', $name);
     }
     // Step 3 - return true/false
     return $ret;
 }
示例#2
0
function updateActive()
{
    if (!isset($_POST['modname'])) {
        redirect_header(XHELP_ADMIN_URL . "/faqAdapter.php", 3, _AM_XHELP_MESSAGE_NO_NAME);
    } else {
        $modname = $_POST['modname'];
    }
    $currentAdapter = xhelpGetMeta('faq_adapter');
    if ($currentAdapter == $modname) {
        // Deactivate current adapter?
        $ret = xhelpDeleteMeta('faq_adapter');
    } else {
        $ret = xhelpFaqAdapterFactory::setFaqAdapter($modname);
    }
    if ($ret) {
        header("Location: " . XHELP_ADMIN_URL . "/faqAdapter.php");
    } else {
        redirect_header(XHELP_ADMIN_URL . "/faqAdapter.php", 3, _AM_XHELP_MSG_INSTALL_MODULE);
    }
}
示例#3
0
function addFaq_action()
{
    global $xoopsUser, $_eventsrv;
    $hTicket =& xhelpGetHandler('ticket');
    // Retrieve ticket information
    $ticketid = $_POST['ticketid'];
    $ticket =& $hTicket->get($ticketid);
    $adapter =& xhelpFaqAdapterFactory::getFaqAdapter();
    $faq =& $adapter->createFaq();
    // @todo - Make subject user editable
    $faq->setVar('subject', $_POST['subject']);
    $faq->setVar('problem', $_POST['problem']);
    $faq->setVar('solution', $_POST['solution']);
    // BTW - XOBJ_DTYPE_ARRAY vars must be serialized prior to calling setVar in XOOPS 2.0
    $faq->setVar('categories', serialize($_POST['categories']));
    if ($adapter->storeFaq($faq)) {
        // Todo: Run events here
        $_eventsrv->trigger('new_faq', array(&$ticket, &$faq));
        redirect_header(XHELP_BASE_URL . "/ticket.php?id={$ticketid}", 3, _XHELP_MESSAGE_ADD_FAQ);
    } else {
        redirect_header(XHELP_BASE_URL . "/ticket.php?id={$ticketid}", 3, _XHELP_MESSAGE_ERR_ADD_FAQ);
    }
}