亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? cvs.php

?? PhpWiki是sourceforge的一個開源項目
?? PHP
?? 第 1 頁 / 共 3 頁
字號:
    function rename_page($pagename, $to)     {        $this->_cvsDebug( "rename_page [$pagename,$to]") ;	$data = get_pagedata($pagename);	if (isset($data['pagename']))	  $data['pagename'] = $to;	//$version = $this->get_latest_version($pagename);	//$vdata = get_versiondata($pagename, $version, 1);        //$data[CMD_CONTENT] = $vdata[CMD_CONTENT];	$this->delete_page($pagename);	$this->update_pagedata($to, $data);	return true;    }    function delete_versiondata($pagename, $version)     {        // TODO: Not Implemented.        // TODO: This is, for CVS, difficult because it implies removing a        // TODO: revision somewhere in the middle of a revision tree, and        // TODO: this is basically not possible!        trigger_error("delete_versiondata: Not Implemented", E_USER_WARNING);    }    function set_versiondata($pagename, $version, $data)     {        // TODO: Not Implemented.        // TODO: requires changing the log(commit) message for a particular        // TODO: version and this can't be done??? (You can edit the repository        // TODO: file directly but i don't know of a way of doing it via        // TODO: the cvs tools).        trigger_error("set_versiondata: Not Implemented", E_USER_WARNING);    }    function update_versiondata($pagename, $version, $newdata)     {        // TODO: same problem as set_versiondata        trigger_error("set_versiondata: Not Implemented", E_USER_WARNING);    }    function set_links($pagename, $links)     {        // TODO: needs to be tested ....        $megaHash = get_pagedata( $pagename );        $megaHash[CMD_LINK_ATT] = $links;        $this->_writeMetaInfo( $pagename, $megaHash );    }    function get_links($pagename, $reversed=true, $include_empty=false,                       $sortby=false, $limit=false, $exclude=false)    {        // TODO: ignores the $reversed argument and returns        // TODO: the value of _links_ attribute of the meta information        // TODO: to implement a reversed version, i guess, we going to        // TODO: need to do a grep on all files for the pagename in         // TODO: in question and return all those page names that contained        // TODO: the required pagename!        $megaHash = get_pagedata( $pagename );        return $megaHash[CMD_LINK_ATT];    }    /* function get_all_revisions($pagename) {        // TODO: should replace this with something more efficient        include_once('lib/WikiDB/backend/dumb/AllRevisionsIter.php');        return new WikiDB_backend_dumb_AllRevisionsIter($this, $pagename);    } */    function get_all_pages($include_empty=false, $sortby=false, $limit=false)     {        // FIXME: this ignores the parameters.        return new Cvs_Backend_Array_Iterator(                              $this->_getAllFileNamesInDir( $this->_docDir ));    }    function text_search($search = '', $fullsearch = false)     {        if ( $fullsearch ) {            return new Cvs_Backend_Full_Search_Iterator(                               $this->_getAllFileNamesInDir( $this->_docDir ),                                $search,                                $this->_docDir );        } else {            return new Cvs_Backend_Title_Search_Iterator(                               $this->_getAllFileNamesInDir( $this->_docDir ),                               $search);        }    }    function most_popular($limit, $sortby='') {        // TODO: needs to be tested ...        $mp = $this->_getMostPopular();        if ($limit < 0){            asort ($mp, SORT_NUMERIC);            $limit = -$limit;        } else {            arsort( $mp, SORT_NUMERIC );        }        $returnVal = array();                while ( (list($key, $val) = each($a)) && $limit > 0 ) {            $returnVal[] = $key;            $limit--;        }        return $returnVal;    }    /**     * This only accepts the 'since' and 'limit' attributes, everything     * else is ignored.     */    function most_recent($params)     {        // TODO: needs to be tested ...        // most recent are those pages with the highest time value ...        $mr = $this->_getMostRecent();        $rev = false;        $returnVal = array();        if ( isset( $params['limit'] ) ) {            $limit = $params['limit'];            $rev = $limit < 0;        }        if ($rev){            arsort( $mr, SORT_NUMERIC );        } else {            asort( $mr, SORT_NUMERIC );        }        if ( isset( $limit ) ) {            while ( (list($key, $val) = each($a)) && $limit > 0 ) {                $returnVal[] = $key;                $limit--;            }        } else if ( isset( $params['since'] ) ) {            while ( (list($key, $val) = each($a)) ) {                                if ( $val > $params['since'] ) {                    $returnVal[] = $key;                }            }        }        return new Cvs_Backend_Array_Iterator( $returnVal );    }    function lock($write_lock = true)     {        // TODO: to be implemented        trigger_error("lock: Not Implemented", E_USER_WARNING);    }    function unlock($force = false)     {        // TODO: to be implemented        trigger_error("unlock: Not Implemented", E_USER_WARNING);    }    function close ()     {    }    function sync()     {    }    function optimize()     {    }    /**     * What we do here is take a listing of the documents directory and     * check that each page has metadata file. If not, then a metadata     * file is created for the page.     *     * This can happen if rebuild() was called and someone has added     * files to the CVS repository not via PhpWiki. These files are      * added to the document directory but without any metadata files.     */    function check()     {        // TODO:        // TODO: test this .... i.e. add test to unit test file.        // TODO:        $page_names = $this->_getAllFileNamesInDir($this->_docDir);        $meta_names = $this->_getAllFileNamesInDir($this->_docDir . "/CVS");        array_walk( $meta_names, '_strip_leading_underscore' );        reset( $meta_names );        $no_meta_files = array_diff( $page_names, $meta_names );        array_walk( $no_meta_files, '_create_meta_file', $this );        return true;    }    /**     * Do an update of the CVS repository      */    function rebuild()     {        // TODO:        // TODO: test this .... i.e. add test to unit test file.        // TODO:        $cmdLine = sprintf( "cd %s; cvs update -d 2>&1", $this->_docDir );        $this->_execCommand( $cmdLine, $cmdOutput, true );        return true;    }        //     // ..-.-..-.-..-.-.. .--..-......-.--. --.-....----.....    // The rest are all internal methods, not to be used     // directly.    // ..-.-..-.-..-.-.. .--..-......-.--. --.-....----.....    //    function _create_meta_file( $page_name, $key, &$backend )    {        // this is used as part of an array walk and therefore takes        // the backend argument        $backend->_cvsDebug(sprintf("Creating meta file for [%s]", $page_name));        $backend->update_pagedata( $page_name, array() );    }    function _strip_leading_underscore( &$item )     {        $item = ereg_replace( "^_", "", $item );    }    /**     * update the most popular information by incrementing the count     * for the following page. If the page was not defined, it is entered     * with a value of 1.     */    function _updateMostPopular( $pagename )    {        $mp = $this->_getMostPopular();        if ( isset( $mp[$pagename] ) ) {            $mp[$pagename]++;        } else {            $mp[$pagename] = 1;        }        $this->_writeFileWithPath( $this->_docDir . "/CVS/" . CVS_MP_FILE,                                    serialize( $mp ) );    }    /**     * Returns an array containing the most popular information. This     * creates the most popular file if it does not exist.     */    function _getMostPopular()    {        $mostPopular = $this->_docDir . "/CVS/" . CVS_MP_FILE;        if ( !file_exists( $mostPopular ) ) {            $this->_writeFileWithPath( $mostPopular, serialize( array() ) );        }        return unserialize(join( '',$this->_readFileWithPath($mostPopular)));    }    function _getMostRecent()    {        $mostRecent = $this->_docDir . "/CVS/" . CVS_MR_FILE;        if ( !file_exists( $mostRecent ) ) {            $this->_writeFileWithPath( $mostRecent, serialize( array() ) );        }        return unserialize(join( '',$this->_readFileWithPath($mostRecent)));    }    function _updateMostRecent( $pagename )    {        $mr = $this->_getMostRecent();        $mr[$pagename] = time();        $this->_writeFileWithPath( $this->_docDir . "/CVS/" . CVS_MR_FILE,                                    serialize( $mr ) );    }    function _writeMetaInfo( $pagename, $hashInfo )    {        $this->_writeFileWithPath( $this->_docDir . "/CVS/_" . $pagename,                                    serialize( $hashInfo ) );    }    function _writePage( $pagename, $content )    {        $this->_writeFileWithPath( $this->_docDir . "/". $pagename, $content );    }    function _removePage( $pagename )    {        $cmdLine = sprintf("cd %s; cvs remove %s 2>&1; cvs commit -m '%s' "                           ."%s 2>&1", $this->_docDir, $pagename,                            "remove page", $pagename );                $this->_execCommand( $cmdLine, $cmdRemoveOutput, true );    }    /**     * this returns the new version number of the file.     */    function _commitPage( $pagename, &$meta_data )    {        $cmdLine = sprintf( "cd %s; cvs commit -m \"%s\" %s 2>&1",                             $this->_docDir,                             escapeshellcmd( serialize( $meta_data ) ),                            $pagename );        $this->_execCommand( $cmdLine, $cmdOutput, true );        $cmdOutput = implode( "\n", $cmdOutput );        $revInfo = array();        ereg( "\nnew revision: 1[.]([0-9]+); previous revision: ", $cmdOutput,              $revInfo );        $this->_cvsDebug( "CP: revInfo 0: $revInfo[0]" );        $this->_cvsDebug( "CP: $cmdOutput" );        if ( isset( $revInfo[1] ) ) {            $this->_cvsDebug( "CP: got revision information" );            return $revInfo[1];        } else {            ereg( "\ninitial revision: 1[.]([0-9]+)", $cmdOutput, $revInfo );            if ( isset( $revInfo[1] ) ) {                $this->_cvsDebug( "CP: is initial release" );                return 1;            }            $this->_cvsDebug( "CP: returning old version" );            return $meta_data[CMD_VERSION];        }    }    function _addPage( $pagename )    {        // TODO: need to add a check for the mimetype so that binary        // TODO: files are added as binary files        $cmdLine = sprintf("cd %s; cvs add %s 2>&1", $this->_docDir,                            $pagename );        $this->_execCommand( $cmdLine, $cmdAddOutput, true );    }    /**     * Returns an array containing all the names of files contained     * in a particular directory. The list is sorted according the      * string representation of the filenames.     */    function _getAllFileNamesInDir( $dirName )     {        $namelist = array();        $d = opendir( $dirName );        while ( $entry = readdir( $d ) ) {            $namelist[] = $entry;        }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
波多野结衣在线aⅴ中文字幕不卡| 日本va欧美va欧美va精品| 欧美一区二区三级| 欧洲精品一区二区| 色94色欧美sute亚洲线路一久| av在线一区二区三区| 成人白浆超碰人人人人| 成人午夜激情影院| 91亚洲午夜精品久久久久久| 成人av小说网| 99久久婷婷国产| 欧美影院精品一区| 4438x成人网最大色成网站| 欧美精品丝袜中出| 日韩免费看网站| 久久久99精品免费观看| 国产精品三级在线观看| 亚洲日韩欧美一区二区在线| 一区二区三区美女视频| 亚洲电影欧美电影有声小说| 蜜臀av性久久久久蜜臀aⅴ| 激情久久久久久久久久久久久久久久| 另类小说一区二区三区| 粉嫩高潮美女一区二区三区 | 欧美日韩一区高清| 91精品福利在线一区二区三区| 欧美一二三在线| 国产日韩欧美高清| 亚洲综合成人在线| 精东粉嫩av免费一区二区三区 | 国产目拍亚洲精品99久久精品| 日本一区二区三区四区| 亚洲一区二区三区三| 狠狠色丁香久久婷婷综| 91视视频在线观看入口直接观看www | 亚洲精品精品亚洲| 美腿丝袜一区二区三区| 91在线国内视频| 欧美xingq一区二区| 中文字幕一区日韩精品欧美| 天堂久久久久va久久久久| 国产不卡一区视频| 欧美精品一二三区| 中文字幕日韩一区二区| 日本美女一区二区| 91一区二区在线| 欧美r级在线观看| 亚洲国产精品久久久久婷婷884 | 国产欧美一区二区在线观看| 一区二区免费在线播放| 国产精品系列在线播放| 欧美精品久久天天躁| 中文字幕视频一区二区三区久| 麻豆国产精品一区二区三区| 欧美无砖砖区免费| 亚洲欧美自拍偷拍色图| 色婷婷综合久久久中文字幕| 久久综合国产精品| 天天做天天摸天天爽国产一区| 97se亚洲国产综合自在线观| 久久精品夜色噜噜亚洲aⅴ| 日韩中文字幕av电影| 欧美性视频一区二区三区| 国产精品色噜噜| 成人av在线播放网址| 国产人成亚洲第一网站在线播放 | 久草热8精品视频在线观看| 91福利在线看| 亚洲精品一二三区| 91在线精品一区二区| 亚洲欧洲成人自拍| 91丨porny丨中文| 有坂深雪av一区二区精品| 色综合色狠狠综合色| 亚洲三级电影全部在线观看高清| 成人福利视频网站| 亚洲欧美国产高清| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 一区二区三区毛片| 在线观看三级视频欧美| 亚洲精品高清在线| 欧美三级一区二区| 亚洲一区二区三区精品在线| 在线免费av一区| 亚洲成人免费视频| 91.com视频| 极品少妇xxxx精品少妇| 国产亚洲精品中文字幕| 懂色一区二区三区免费观看| 亚洲欧洲一区二区在线播放| 91成人在线精品| 奇米色一区二区三区四区| 精品少妇一区二区三区日产乱码 | 国产乱码精品一区二区三区忘忧草| 欧美一区二区三区在线视频| 精品一区二区三区香蕉蜜桃| 26uuu另类欧美亚洲曰本| 成人黄页毛片网站| 亚洲va韩国va欧美va| 欧美电影免费观看高清完整版在线 | 亚洲欧美日韩久久| 欧美色图片你懂的| 黄色成人免费在线| 国产精品国产自产拍在线| 欧洲精品在线观看| 国精产品一区一区三区mba视频| 国产欧美一区二区三区鸳鸯浴 | 国产一区二区精品久久91| 欧美国产日韩精品免费观看| 色婷婷亚洲婷婷| 麻豆免费看一区二区三区| 国产精品美女久久久久久| 欧美日韩在线观看一区二区 | 国产精品国产a| 欧美日韩日本视频| 国产精品一线二线三线精华| 亚洲欧美精品午睡沙发| 精品国产制服丝袜高跟| 色噜噜夜夜夜综合网| 国产一区久久久| 夜夜嗨av一区二区三区中文字幕 | 午夜一区二区三区视频| 国产亚洲一区字幕| 337p亚洲精品色噜噜噜| 成人精品视频一区二区三区| 久久国产精品99久久人人澡| 亚洲激情av在线| 国产精品网站在线播放| 欧美videos大乳护士334| 欧美日韩亚洲综合| 色婷婷av一区二区三区软件 | 欧美二区乱c少妇| heyzo一本久久综合| 国产一区二区在线视频| 日本视频一区二区三区| 亚洲精选视频在线| 自拍偷拍欧美精品| 国产精品美女久久久久aⅴ| 日韩欧美精品三级| 日韩欧美美女一区二区三区| 在线不卡欧美精品一区二区三区| 91色在线porny| 99久久99精品久久久久久| 国产麻豆视频一区二区| 九九视频精品免费| 精品一区二区三区av| 琪琪久久久久日韩精品| 日本vs亚洲vs韩国一区三区| 丝袜脚交一区二区| 亚洲成av人片一区二区梦乃 | 日韩欧美一二区| 日韩一级完整毛片| 日韩视频免费直播| 欧美一级一级性生活免费录像| 7777精品伊人久久久大香线蕉经典版下载 | 99久免费精品视频在线观看| 国产精品一区二区果冻传媒| 激情综合网最新| 国产精品一区二区三区网站| 国产乱码精品一区二区三区五月婷| 久久99热这里只有精品| 国产一区二区久久| 99久久久国产精品| 一本一本久久a久久精品综合麻豆| 色域天天综合网| 欧美日韩国产一区二区三区地区| 欧美日韩在线三级| 亚洲欧洲精品天堂一级 | 国产真实乱偷精品视频免| 久久99精品国产麻豆婷婷| 精品一区二区三区免费观看| 国产乱淫av一区二区三区| 成人av资源站| 欧美亚洲高清一区二区三区不卡| 91精品婷婷国产综合久久性色 | 久久综合色一综合色88| 国产欧美日韩在线看| 亚洲天堂中文字幕| 亚洲不卡av一区二区三区| 老司机精品视频一区二区三区| 国产一区二区三区在线观看精品 | 亚洲国产精品一区二区www在线| 日韩黄色小视频| 风流少妇一区二区| 日本高清不卡一区| 欧美成人精品1314www| 亚洲国产成人一区二区三区| 亚洲综合激情小说| 国产伦精品一区二区三区免费迷| 成人99免费视频| 欧美精品久久久久久久多人混战 | 欧日韩精品视频| 精品日韩成人av| 日韩国产欧美在线视频| 精品一区二区三区在线播放| 91久久精品网| 久久精品视频在线看| 午夜欧美视频在线观看 | 欧美日韩aaaaa| 国产精品毛片久久久久久久|