コード例 #1
0
ファイル: sitemap.google.php プロジェクト: rybal06/phpMyFAQ
    }
    if (!isset($changeFreq)) {
        $changeFreq = PMF_SITEMAP_GOOGLE_CHANGEFREQ_DAILY;
    }
    $node = '<url>' . '<loc>' . PMF_String::htmlspecialchars($location) . '</loc>' . '<lastmod>' . $lastmod . '</lastmod>' . '<changefreq>' . $changeFreq . '</changefreq>' . (isset($priority) ? '<priority>' . $priority . '</priority>' : '') . '</url>';
    return $node;
}
//
// Future improvements
// WHEN a User PMF Sitemap will be:
//   a. bigger than 10MB (!)
//   b. w/ more than 50K URLs (!)
// we'll manage this issue using a Sitemap Index Files produced by this PHP code
// including Sitemap URLs always produced by this same PHP code (see PMF_SITEMAP_GOOGLE_GET_INDEX)
//
PMF_Init::cleanRequest();
session_name(PMF_COOKIE_NAME_AUTH . trim($faqconfig->get('main.phpMyFAQToken')));
session_start();
$oFaq = new PMF_Faq();
// Load the faq
$items = $oFaq->getTopTenData(PMF_SITEMAP_GOOGLE_MAX_URLS - 1);
$visitsMax = 0;
$visitMin = 0;
if (count($items) > 0) {
    $visitsMax = $items[0]['visits'];
    $visitMin = $items[count($items) - 1]['visits'];
}
// Sitemap header
$sitemap = '<?xml version="1.0" encoding="UTF-8"?>' . '<urlset xmlns="http://www.google.com/schemas/sitemap/0.84"' . ' xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"' . ' xsi:schemaLocation="http://www.google.com/schemas/sitemap/0.84' . ' http://www.google.com/schemas/sitemap/0.84/sitemap.xsd">';
// 1st entry: the faq server itself
$sitemap .= buildSitemapNode(PMF_Link::getSystemUri('/sitemap.google.php'), PMF_Date::createISO8601Date($_SERVER['REQUEST_TIME'], false), PMF_SITEMAP_GOOGLE_CHANGEFREQ_DAILY, PMF_SITEMAP_GOOGLE_PRIORITY_MAX);
コード例 #2
0
ファイル: password.php プロジェクト: juliogallardo1326/proc
$_SERVER['HTTP_USER_AGENT'] = urlencode($_SERVER['HTTP_USER_AGENT']);
define('PMF_ROOT_DIR', dirname(dirname(__FILE__)));
/* read configuration */
require_once PMF_ROOT_DIR . "/inc/data.php";
require_once PMF_ROOT_DIR . "/inc/config.php";
require_once PMF_ROOT_DIR . "/inc/constants.php";
/* include classes and functions */
require_once PMF_ROOT_DIR . "/inc/db.php";
define("SQLPREFIX", $DB["prefix"]);
$db = db::db_select($DB["type"]);
$db->connect($DB["server"], $DB["user"], $DB["password"], $DB["db"]);
require_once PMF_ROOT_DIR . "/inc/category.php";
require_once PMF_ROOT_DIR . "/inc/idna_convert.class.php";
$IDN = new idna_convert();
// get language (default: english)
$pmf = new PMF_Init();
$LANGCODE = $pmf->setLanguage(isset($PMF_CONF['detection']) ? true : false, $PMF_CONF['language']);
if (isset($LANGCODE) && isset($languageCodes[strtoupper($LANGCODE)])) {
    require_once "../lang/language_" . $LANGCODE . ".php";
} else {
    $LANGCODE = "en";
    require_once "../lang/language_en.php";
}
/* header of the admin page */
require_once "header.php";
?>
</div>
<div id="bodyText">
<?php 
if (isset($_GET["action"]) && $_GET["action"] == "newpassword") {
} elseif (isset($_GET["action"]) && $_GET["action"] == "savenewpassword") {
コード例 #3
0
 */
require_once '../inc/functions.php';
require_once '../inc/init.php';
define('IS_VALID_PHPMYFAQ', null);
PMF_Init::cleanRequest();
require_once '../inc/constants.php';
require_once '../inc/config.php';
require_once '../inc/data.php';
require_once '../inc/db.php';
define('SQLPREFIX', $DB['prefix']);
$db = db::db_select($DB['type']);
$db->connect($DB['server'], $DB['user'], $DB['password'], $DB['db']);
require_once '../lang/language_en.php';
$auth_user = null;
$auth_pass = null;
if (isset($_GET['lang']) && PMF_Init::isASupportedLanguage($_GET['lang'])) {
    require_once '../lang/language_' . $_GET['lang'] . '.php';
}
if (isset($_GET['hash']) && $_GET['hash'] != '') {
    $pmf_hash = $db->escape_string($_GET['hash']);
    $auth_user_pass = explode(',', base64_decode($pmf_hash));
    if (is_array($auth_user_pass)) {
        $auth_user = $auth_user_pass[0];
        $auth_pass = $auth_user_pass[1];
    }
} else {
    header('Location: http://' . $_SERVER['SERVER_NAME'] . dirname($_SERVER['SCRIPT_NAME']));
    exit;
}
if (isset($_GET['uin']) && preg_match('/^(\\w{32})$/i', substr($_GET['uin'], 0, 32)) && !is_null($auth_user) && !is_null($auth_pass)) {
    $uin = $db->escape_string($_GET['uin']);
コード例 #4
0
ファイル: init.php プロジェクト: juliogallardo1326/proc
 /**
  * removeXSSGPC
  *
  * Removes xss from an array
  *
  * @param    array   $data
  * @return   array
  * @acces    private
  * @author   Thorsten Rinne <*****@*****.**>
  * @author   Johann-Peter Hartmann <*****@*****.**>
  */
 function removeXSSGPC($data)
 {
     $cleanData = array();
     foreach ($data as $key => $val) {
         $key = PMF_Init::basicXSSClean($key);
         if (is_array($val)) {
             $cleanData[$key] = PMF_Init::removeXSSGPC($val);
         } else {
             $cleanData[$key] = PMF_Init::basicXSSClean($val);
         }
     }
     return $cleanData;
 }
コード例 #5
0
ファイル: functions.php プロジェクト: juliogallardo1326/proc
/**
* This function generates an array with a specified number of most recent published records
*
* @param    string, int
* @return   array
* @access   public
* @author   Robin Wood <*****@*****.**>
* @since    2005-03-06
*/
function generateNewestData($language = '', $count = PMF_NUMBER_RECORDS_LATEST)
{
    global $db, $sids, $PMF_LANG, $PMF_CONF;
    $query = 'SELECT DISTINCT ' . SQLPREFIX . 'faqdata.id AS id, ' . SQLPREFIX . 'faqdata.lang AS lang, ' . SQLPREFIX . 'faqcategoryrelations.category_id AS category_id, ' . SQLPREFIX . 'faqdata.thema AS thema, ' . SQLPREFIX . 'faqdata.datum AS datum, ' . SQLPREFIX . 'faqvisits.visits AS visits FROM ' . SQLPREFIX . 'faqvisits, ' . SQLPREFIX . 'faqdata LEFT JOIN ' . SQLPREFIX . 'faqcategoryrelations ON ' . SQLPREFIX . 'faqdata.id = ' . SQLPREFIX . 'faqcategoryrelations.record_id AND ' . SQLPREFIX . 'faqdata.lang = ' . SQLPREFIX . 'faqcategoryrelations.record_lang WHERE ';
    if (isset($language) && PMF_Init::isASupportedLanguage($language)) {
        $query .= SQLPREFIX . 'faqdata.lang = \'' . $language . '\' AND ';
    }
    $query .= SQLPREFIX . 'faqdata.id = ' . SQLPREFIX . 'faqvisits.id AND ' . SQLPREFIX . 'faqdata.lang = ' . SQLPREFIX . 'faqvisits.lang AND ' . SQLPREFIX . 'faqdata.active = \'yes\' ORDER BY ' . SQLPREFIX . 'faqdata.datum DESC';
    $result = $db->query($query);
    $newestArray = array();
    $data = array();
    $i = 0;
    $oldId = 0;
    while (($row = $db->fetch_object($result)) && $i < $count) {
        if ($oldId != $row->id) {
            $data['datum'] = $row->datum;
            $data['thema'] = $row->thema;
            $data['visits'] = $row->visits;
            if (isset($PMF_CONF["mod_rewrite"]) && $PMF_CONF["mod_rewrite"] == "TRUE") {
                $data['url'] = $row->category_id . "_" . $row->id . "_" . $row->lang . ".html";
            } else {
                $data['url'] = $_SERVER["PHP_SELF"] . "?" . $sids . "action=artikel&amp;cat=" . $row->category_id . "&amp;id=" . $row->id . "&amp;artlang=" . $row->lang;
            }
            $newestArray[] = $data;
            $i++;
        }
        $oldId = $row->id;
    }
    return $newestArray;
}
コード例 #6
0
ファイル: translate.php プロジェクト: noon/phpMyFAQ
 *
 * Software distributed under the License is distributed on an "AS IS"
 * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
 * License for the specific language governing rights and limitations
 * under the License.
 */
if (!defined('IS_VALID_PHPMYFAQ')) {
    header('Location: http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['SCRIPT_NAME']));
    exit;
}
$captcha = new PMF_Captcha($sids);
if (!is_null($showCaptcha)) {
    $captcha->showCaptchaImg();
    exit;
}
$translationLanguage = PMF_Filter::filterInput(INPUT_POST, 'translation', FILTER_SANITIZE_STRING, $LANGCODE);
$faqSource['id'] = 'writeSourceFaqId';
$faqSource['lang'] = $translationLanguage;
$faqSource['title'] = 'writeSourceTitle';
$faqSource['content'] = 'writeSourceContent';
$faqSource['keywords'] = 'writeSourceKeywords';
$faqsession->userTracking('new_translation_entry', 0);
$id = PMF_Filter::filterInput(INPUT_GET, 'id', FILTER_VALIDATE_INT);
$srclang = PMF_Filter::filterInput(INPUT_GET, 'srclang', FILTER_SANITIZE_STRING);
if (!is_null($id) && !is_null($srclang) && PMF_Language::isASupportedLanguage($srclang)) {
    $oFaq = new PMF_Faq();
    $oFaq->getRecord($id);
    $faqSource = $oFaq->faqRecord;
}
$tpl->processTemplate('writeContent', array('writeSourceFaqId' => $faqSource['id'], 'writeSourceTitle' => $faqSource['title'], 'writeSourceContent' => $faqSource['content'], 'writeSourceKeywords' => $faqSource['keywords'], 'msgNewTranslationHeader' => $PMF_LANG['msgNewTranslationHeader'], 'msgNewTranslationAddon' => $PMF_LANG['msgNewTranslationAddon'], 'msgNewTransSourcePane' => $PMF_LANG['msgNewTransSourcePane'], 'msgNewTranslationPane' => $PMF_LANG['msgNewTranslationPane'], 'writeSendAdress' => '?' . $sids . 'action=save', 'defaultContentName' => $user ? $user->getUserData('display_name') : '', 'defaultContentMail' => $user ? $user->getUserData('email') : '', 'msgNewTranslationName' => $PMF_LANG['msgNewTranslationName'], 'msgNewTranslationMail' => $PMF_LANG['msgNewTranslationMail'], 'msgNewTranslationKeywords' => $PMF_LANG['msgNewTranslationKeywords'], 'writeTransFaqLanguage' => $translationLanguage, 'captchaFieldset' => printCaptchaFieldset($PMF_LANG['msgCaptcha'], $captcha->printCaptcha('translate'), $captcha->caplength), 'msgNewTranslationSubmit' => $PMF_LANG['msgNewTranslationSubmit'], 'tinyMCELanguage' => PMF_Init::isASupportedTinyMCELanguage($LANGCODE) ? $LANGCODE : 'en'));
$tpl->includeTemplate('writeContent', 'index');