コード例 #1
0
ファイル: index.php プロジェクト: rigidus/cobutilniki
         $bFlag404 = true;
         $nLevel--;
         break;
     } else {
         $nParent = $result['id'];
         $aProcess[$result['id']] = $result;
     }
 }
 // Versioning
 $aProcessVersions = array();
 foreach ($aProcess as $k => $v) {
     if ($v['draft'] == 0) {
         $aProcessVersions[$k] = $v;
     } else {
         $aTree = array();
         getSubVersionsRecursive($k);
         foreach ($aTree as $kk => $vv) {
             if ($vv['draft'] == 0) {
                 $aProcessVersions[$kk] = $vv;
                 break;
             }
         }
     }
 }
 $aProcess = $aProcessVersions;
 // Set Last Id
 end($aProcess);
 $bFlagLastModule = false;
 $nLastId = key($aProcess);
 reset($aProcess);
 // Debug KRNL info
コード例 #2
0
ファイル: default-nobr.php プロジェクト: rigidus/cobutilniki
} else {
    $tpl = $_t->fetchBlock('ContentBlock');
}
// CONTENT
$tpl->assign('title', $sTitle);
require_once FLGR_LIBS . '/StandartPreWrap.php';
$tpl->assign('content', StandartPreWrap($sText));
// ANNOTATIONS
$sql = $Db->sqlGetSelect(DB_PREFIX . DB_TBL_PAGES, array('id', 'key', 'title', 'annotation', 'draft')) . $Db->sqlGetWhere(array('parent' => $nId)) . " ORDER BY `order`";
$sql = "SELECT 'id', 'key', 'title', 'annotation', 'draft' \n\t\tFROM '" . DB_PREFIX . DB_TBL_PAGES . "' \n\t\tWHERE (parent = " . $nId . ")\n\t\tORDER BY 'order'";
$aPage = $Db->query($sql);
// Извлекаем текущую подверсию страницы, если надо
foreach ($aPage as $k => $v) {
    if ($v['draft'] == 1) {
        $aTree = array();
        getSubVersionsRecursive($v['id']);
        foreach ($aTree as $kk => $vv) {
            if ($vv['draft'] == 0) {
                $aPage[$k] = $vv;
                break;
            }
        }
    }
}
// Выводим
foreach ($aPage as $k => $v) {
    if ($v['draft'] == 0) {
        $tpl->assign('content', crbr('<div style="font-size: 90%; margin: 8px 0 8px 0;"><a href="' . $sRequest . '/' . $v['key'] . '">' . $v['title'] . '</a><br />' . $v['annotation'] . '</div>'));
    }
}
// CLOSE
コード例 #3
0
ファイル: rfunctions.php プロジェクト: rigidus/cobutilniki
function getPage($m)
{
    global $xmlrpcerruser;
    global $xmlrpcString;
    $file_uri = $m->getParam(0);
    $file_uri = $file_uri->scalarval();
    $aRequest = explode('/', $file_uri);
    // Processing
    $aProcess = array();
    $bFlag404 = false;
    $nParent = 0;
    foreach ($aRequest as $nLevel => $sKey) {
        $sql = "SELECT * FROM `" . DB_PREFIX . DB_TBL_PAGES . "` \n\t\t\t\tWHERE ( (`parent`={$nParent}) AND (`key`='{$aRequest[$nLevel]}') AND (`subversion` = 0) )";
        $sql = mysql_query($sql);
        if (false == $sql) {
            my_die();
        }
        $sql = mysql_fetch_assoc($sql);
        if (false === $sql) {
            $bFlag404 = true;
            $nLevel--;
            break;
        } else {
            $nParent = $sql['id'];
            $aProcess[$sql['id']] = $sql;
        }
    }
    // Versioning
    $aProcessVersions = array();
    foreach ($aProcess as $k => $v) {
        if ($v['draft'] == 0) {
            $aProcessVersions[$k] = $v;
        } else {
            $aTree = array();
            getSubVersionsRecursive($k);
            foreach ($aTree as $kk => $vv) {
                if ($vv['draft'] == 0) {
                    $aProcessVersions[$kk] = $vv;
                    break;
                }
            }
        }
    }
    $aProcess = $aProcessVersions;
    // Set Last Id
    end($aProcess);
    $bFlagLastModule = false;
    $nLastId = key($aProcess);
    reset($aProcess);
    if ($bFlag404) {
        return new xmlrpcresp(0, $xmlrpcerruser, 'page not found');
    }
    $response = base64_encode(serialize($aProcess[$nLastId]));
    return new xmlrpcresp(new xmlrpcval($response), $xmlrpcString);
}
コード例 #4
0
ファイル: common.php プロジェクト: rigidus/cobutilniki
function getSubVersionsRecursive($nId)
{
    global $aTree;
    if (!isset($aTree[$nId])) {
        $sql = "SELECT * FROM `" . DB_PREFIX . DB_TBL_PAGES . "` \n\t\tWHERE (`id` = '{$nId}')";
        $sql = mysql_query($sql);
        if (false == $sql) {
            my_die();
        }
        while ($row = mysql_fetch_assoc($sql)) {
            $aTree[$row['id']] = $row;
        }
    }
    $sql = "SELECT * FROM `" . DB_PREFIX . DB_TBL_PAGES . "` \n\t\t\tWHERE ((`parent` = '{$nId}') AND (`subversion` = 1)) \n\t\t\tORDER BY `order`";
    $sql = mysql_query($sql);
    if (false == $sql) {
        my_die();
    }
    while ($row = mysql_fetch_assoc($sql)) {
        $aTree[$nId]['childs'][] = $row['id'];
        $aTree[$row['id']] = $row;
        getSubVersionsRecursive($row['id']);
    }
}
コード例 #5
0
ファイル: edit.php プロジェクト: rigidus/cobutilniki
    $sql .= $edit_id;
} else {
    $sql .= $version_id;
}
$sql = mysql_query($sql);
if (false == $sql) {
    my_die();
}
$aEdit = mysql_fetch_assoc($sql);
if (empty($aEdit)) {
    $_t->assign('content', '<span style="color: red">Ошибка:</span> Этой страницы не существует!');
    return;
}
// Versioning Data
$aTree = array();
getSubVersionsRecursive($edit_id);
// POST
if (isset($_POST['act'])) {
    switch ($_POST['act']) {
        case 'edit':
            unset($_POST['act']);
            $_POST['changer'] = mysql_escape_string($_SESSION['user']['id']);
            if (!isset($_POST['hidden'])) {
                $_POST['hidden'] = 0;
            }
            if (!isset($_POST['hidden_menu'])) {
                $_POST['hidden_menu'] = 0;
            }
            $sql = "UPDATE `" . DB_PREFIX . DB_TBL_PAGES . "` SET ";
            foreach ($_POST as $k => $v) {
                $sql .= "\r\n `{$k}` = '" . mysql_escape_string($v) . "', ";