Ejemplo n.º 1
0
/**
 * adds blog admin pages to the request handlers
 *
 * @return mixed
 */
function qa_get_request_content()
{
    $requestlower = strtolower(qa_request());
    $requestparts = qa_request_parts();
    $firstlower = strtolower(@$requestparts[0]);
    $secondlower = strtolower(@$requestparts[1]);
    $routing = qa_page_routing();
    $route_part = '';
    if (!empty($firstlower) && !empty($secondlower)) {
        $route_part = $firstlower . '/' . $secondlower . '/';
    }
    if (!isset($routing[$requestlower]) && $route_part === 'admin/donut-theme/') {
        //for loading the default setting file
        qa_set_template($firstlower);
        $qa_content = (require QA_INCLUDE_DIR . $routing[$route_part]);
        if ($firstlower == 'admin') {
            $_COOKIE['qa_admin_last'] = $requestlower;
            // for navigation tab now...
            setcookie('qa_admin_last', $_COOKIE['qa_admin_last'], 0, '/', QA_COOKIE_DOMAIN);
            // ...and in future
        }
    } else {
        //otherwise load the original qa_get_request_content function
        $qa_content = qa_get_request_content_base();
    }
    return $qa_content;
}
Ejemplo n.º 2
0
function qa_admin_is_slug_reserved($requestpart)
{
    $requestpart = trim(strtolower($requestpart));
    $routing = qa_page_routing();
    if (isset($routing[$requestpart]) || isset($routing[$requestpart . '/']) || is_numeric($requestpart)) {
        return true;
    }
    $pathmap = qa_get_request_map();
    foreach ($pathmap as $mappedrequest) {
        if (trim(strtolower($mappedrequest)) == $requestpart) {
            return true;
        }
    }
    switch ($requestpart) {
        case '':
        case 'qa':
        case 'feed':
        case 'install':
        case 'url':
        case 'image':
        case 'ajax':
            return true;
    }
    $pagemodules = qa_load_modules_with('page', 'match_request');
    foreach ($pagemodules as $pagemodule) {
        if ($pagemodule->match_request($requestpart)) {
            return true;
        }
    }
    return false;
}
Ejemplo n.º 3
0
/**
 *	Run the appropriate qa-page-*.php file for this request and return back the $qa_content it passed
 */
function qa_get_request_content()
{
    if (qa_to_override(__FUNCTION__)) {
        $args = func_get_args();
        return qa_call_override(__FUNCTION__, $args);
    }
    $requestlower = strtolower(qa_request());
    $requestparts = qa_request_parts();
    $firstlower = strtolower($requestparts[0]);
    $routing = qa_page_routing();
    if (isset($routing[$requestlower])) {
        qa_set_template($firstlower);
        $qa_content = (require QA_INCLUDE_DIR . $routing[$requestlower]);
    } elseif (isset($routing[$firstlower . '/'])) {
        qa_set_template($firstlower);
        $qa_content = (require QA_INCLUDE_DIR . $routing[$firstlower . '/']);
    } elseif (is_numeric($requestparts[0])) {
        qa_set_template('question');
        $qa_content = (require QA_INCLUDE_DIR . 'pages/question.php');
    } else {
        qa_set_template(strlen($firstlower) ? $firstlower : 'qa');
        // will be changed later
        $qa_content = (require QA_INCLUDE_DIR . 'pages/default.php');
        // handles many other pages, including custom pages and page modules
    }
    if ($firstlower == 'admin') {
        $_COOKIE['qa_admin_last'] = $requestlower;
        // for navigation tab now...
        setcookie('qa_admin_last', $_COOKIE['qa_admin_last'], 0, '/', QA_COOKIE_DOMAIN);
        // ...and in future
    }
    if (isset($qa_content)) {
        qa_set_form_security_key();
    }
    return $qa_content;
}
Ejemplo n.º 4
0
/**
 *	Run the appropriate qa-page-*.php file for this request and return back the $qa_content it passed
 */
function qa_get_request_content()
{
    if (qa_to_override(__FUNCTION__)) {
        $args = func_get_args();
        return qa_call_override(__FUNCTION__, $args);
    }
    $requestlower = strtolower(qa_request());
    $requestparts = qa_request_parts();
    $firstlower = strtolower($requestparts[0]);
    $routing = qa_page_routing();
    //AGGIUNTO DA BAFIO
    $favoritecategory = array();
    $userid = qa_get_logged_in_userid();
    if ($userid) {
        $categories = qa_db_select_with_pending(qa_db_user_favorite_categories_selectspec($userid));
        foreach ($categories as $cat) {
            $backpath = array_reverse(explode('/', $cat['backpath']));
            if (count($backpath) > 2) {
                array_push($favoritecategory, $backpath);
            }
            $backpath = null;
        }
    }
    if (isset($routing[$requestlower])) {
        qa_set_template($firstlower);
        $qa_content = (require QA_INCLUDE_DIR . $routing[$requestlower]);
    } elseif (isset($routing[$firstlower . '/'])) {
        qa_set_template($firstlower);
        $qa_content = (require QA_INCLUDE_DIR . $routing[$firstlower . '/']);
    } elseif (is_numeric($requestparts[0])) {
        qa_set_template('question');
        $qa_content = (require QA_INCLUDE_DIR . 'pages/question.php');
    } else {
        if (qa_get_logged_in_userid() && $requestparts[0] == '' && count($favoritecategory)) {
            qa_set_template(strlen($firstlower) ? $firstlower : 'qa');
            // will be changed later
            $qa_content = (require QA_INCLUDE_DIR . 'pages/login-default.php');
            // handles many other pages, including custom pages and page modules
        } else {
            qa_set_template(strlen($firstlower) ? $firstlower : 'qa');
            // will be changed later
            $qa_content = (require QA_INCLUDE_DIR . 'pages/default.php');
            // handles many other pages, including custom pages and page modules
        }
    }
    if ($firstlower == 'admin') {
        $_COOKIE['qa_admin_last'] = $requestlower;
        // for navigation tab now...
        setcookie('qa_admin_last', $_COOKIE['qa_admin_last'], 0, '/', QA_COOKIE_DOMAIN);
        // ...and in future
    }
    if (isset($qa_content)) {
        qa_set_form_security_key();
    }
    return $qa_content;
}
Ejemplo n.º 5
0
function useo_get_current_category_slug()
{
    global $useo_category_slug;
    if (isset($useo_category_slug)) {
        return $useo_category_slug;
    } else {
        // check if it's a category or not
        $requestparts = qa_request_parts();
        $requestlower = strtolower(qa_request());
        $firstlower = strtolower($requestparts[0]);
        $routing = qa_page_routing();
        // unanswered & questions pages may contain categories.
        unset($routing['activity/']);
        unset($routing['unanswered/']);
        unset($routing['questions/']);
        if (isset($routing[$requestlower]) or isset($routing[$firstlower . '/']) or is_numeric($requestparts[0])) {
            $useo_category_slug = false;
            return false;
        }
        $explicitqa = (strtolower($requestparts[0]) == 'qa' or strtolower($requestparts[0]) == 'unanswered' or strtolower($requestparts[0]) == 'questions' or strtolower($requestparts[0]) == 'activity');
        if ($explicitqa) {
            $useo_category_slug = array_slice($requestparts, 1);
        } elseif (strlen($requestparts[0])) {
            $useo_category_slug = $requestparts;
        } else {
            $useo_category_slug = false;
        }
        return $useo_category_slug;
    }
}