Skip to content

Commit

Permalink
ver 5.1.8
Browse files Browse the repository at this point in the history
  • Loading branch information
dercsyong committed Jun 4, 2022
1 parent f7f23a0 commit e37f093
Show file tree
Hide file tree
Showing 5 changed files with 280 additions and 389 deletions.
21 changes: 10 additions & 11 deletions API.php
Expand Up @@ -39,7 +39,7 @@

$now = getDocumentNow($API_SETTINGS['namespace'], $API_SETTINGS['title']);
if($now['status']!="success"&&$now['status']!="not found"){
die("<script> alert('DB 접속 오류'); </script>");
// mongo error
}
$arr4 = getACL($API_SETTINGS['full_title'], 'ALL', 'document');

Expand Down Expand Up @@ -158,11 +158,11 @@
$dumpArray = array(200302, 190312);
}
foreach($dumpArray as $currentDump){
$arr2 = $mongo->executeQuery('thewiki.docData'.$currentDump, $query);
$arr2 = dumpCheck($API_SETTINGS['namespace'], $API_SETTINGS['title'], $currentDump);

foreach($arr2 as $value){
$raw = $value->text;
$contribution = implode('\\n',$value->contributors);
if($arr2['return']){
$raw = $arr2['text'];
$contribution = implode('\\n',$arr2['contributors']);
break;
}

Expand All @@ -178,11 +178,11 @@
$dumpArray = array(200302, 190312);
}
foreach($dumpArray as $currentDump){
$arr2 = $mongo->executeQuery('thewiki.docData'.$currentDump, $query);
$arr2 = dumpCheck($API_SETTINGS['namespace'], $API_SETTINGS['title'], $currentDump);

foreach($arr2 as $value){
$raw = $value->text;
$contribution = implode('\\n',$value->contributors);
if($arr2['return']){
$raw = $arr2['text'];
$contribution = implode('\\n',$arr2['contributors']);
break;
}

Expand All @@ -196,8 +196,7 @@
if(empty($raw)){
$API_RETURN = array('status'=>'error', 'reason'=>'empty document');
} else {
$arr = $mongo->executeCommand('thewiki', new MongoDB\Driver\Command(["count"=>"docData".$settings_api['docVersion']]))->toArray();
$AllPage = $arr[0]->n;
$AllPage = getpagecount();
$API_RETURN = array('status'=>'success', 'type'=>'raw', 'data'=>$raw, 'contribution'=>$contribution, 'count'=>$AllPage);
}
} catch (MongoDB\Driver\Exception\Exception $e){
Expand Down
84 changes: 28 additions & 56 deletions build/complete.php
Expand Up @@ -5,67 +5,39 @@
include $_SERVER['DOCUMENT_ROOT'].'/config.php';

try{
if($THEWIKI_NOW_NAMESPACE==5||$THEWIKI_NOW_NAMESPACE==10||$THEWIKI_NOW_NAMESPACE==11){
//
} else if($THEWIKI_NOW_NAMESPACE>0&&$settings['docVersion']>=200302){
$settings['docVersion'] = 200302;
}
if($THEWIKI_NOW_NAMESPACE==2||$THEWIKI_NOW_NAMESPACE==3||$THEWIKI_NOW_NAMESPACE==4){
if($settings['docVersion']!='180925'&&$settings['docVersion']>=180326){
$settings['docVersion'] = 170327;
if($THEWIKI_NOW_NAMESPACE==2){
while(substr($THEWIKI_NOW_TITLE_REAL, 0, 1)==" "){
$THEWIKI_NOW_TITLE_REAL = substr($THEWIKI_NOW_TITLE_REAL, 1);
}
} else {
if($settings['docVersion']=='180925'&&!empty($THEWIKI_NOW_NAMESPACE_FAKE)){
$THEWIKI_NOW_NAMESPACE = $THEWIKI_NOW_NAMESPACE_FAKE;
$query = new MongoDB\Driver\Query(array('title' => array('$regex'=>"^분류:".str_replace(array("(", ")"), array("\\(", "\\)"), $THEWIKI_NOW_TITLE_REAL))), array('limit' => 10 ));
$arr = $mongo->executeQuery('search.category', $query);
foreach($arr as $doc){
$data[] = $doc->title;
}
} else if($THEWIKI_NOW_NAMESPACE==3){
$ext = strtolower(end(explode(".", $THEWIKI_NOW_TITLE_REAL)));
if($ext=="jpg"||$ext=="png"||$ext=="gif"||$ext=="svg"){
$fileName = bin2hex($THEWIKI_NOW_TITLE_REAL).".".end(explode(".", $THEWIKI_NOW_TITLE_REAL));
} else {
$fileName = bin2hex($THEWIKI_NOW_TITLE_REAL);
}
while(substr($fileName, 0, 2)=="20"){
$fileName = substr($fileName, 2);
}

$query = new MongoDB\Driver\Query(array('title' => array('$regex'=>"^".$fileName)), array('limit' => 10 ));
$arr = $mongo->executeQuery('search.images', $query);
foreach($arr as $doc){
$data[] = $doc->text;
}
}
if(!$mongo){
$mongo = mongoDBconnect();
}

if($settings['docVersion']>=210301){
$THEWIKI_NOW_NAMESPACE = 0;
} else {
$THEWIKI_NOW_NAMESPACE = (int)$THEWIKI_NOW_NAMESPACE;
}

if(!empty($THEWIKI_NOW_TITLE_REAL)){
$query = new MongoDB\Driver\Query(array('namespace' => $THEWIKI_NOW_NAMESPACE, 'title' => array('$regex'=>"^".str_replace(array("(", ")"), array("\\(", "\\)"), $THEWIKI_NOW_TITLE_REAL))), array('limit' => 10 ));
} else {
if(!empty($THEWIKI_NOW_TITLE_FULL)){
$query = new MongoDB\Driver\Query(array('namespace' => $THEWIKI_NOW_NAMESPACE), array('limit' => 10 ));
$query = new MongoDB\Driver\Query(array('namespace' => (int)$THEWIKI_NOW_NAMESPACE, 'title' => array('$regex'=>"^".str_replace(array("(", ")"), array("\\(", "\\)"), $THEWIKI_NOW_TITLE_REAL))), array('limit' => 10 ));
$arr = $mongo->executeQuery('search.db', $query);
if(!empty($THEWIKI_NOW_NAMESPACE_NAME)){
$THEWIKI_NOW_NAMESPACE_NAME = $THEWIKI_NOW_NAMESPACE_NAME.":";
}
}
$arr = $mongo->executeQuery('thewiki.docData'.$settings['docVersion'], $query);
if(!empty($THEWIKI_NOW_NAMESPACE_NAME)){
$THEWIKI_NOW_NAMESPACE_NAME = $THEWIKI_NOW_NAMESPACE_NAME.":";
}
$data = array();
foreach($arr as $doc){
$data[] = $THEWIKI_NOW_NAMESPACE_NAME.$doc->title;
}

if(empty($data)){
$query = new MongoDB\Driver\Query(array('$text'=>array('$search'=>$THEWIKI_NOW_TITLE_FULL)), array('limit' => 10 ));
$arr = $mongo->executeQuery('thewiki.docData'.$settingsref['docVersion'], $query);
foreach($arr as $doc){
$trigger = false;
if($doc->namespace>0){
$find = "SELECT * FROM wiki_contents_namespace WHERE code = '$doc->namespace' OR fake = '$doc->namespace'";
$findres = mysqli_query($wiki_db, $find);
$findarr = mysqli_fetch_array($findres);

if($findarr){
$docTitle = $doc->title;
$doc->title = $findarr[3].":".$doc->title;
if($findarr[2]==$doc->namespace){
if($findarr[4]!=$settings['docVersion']){
$doc->title = $docTitle;
}
}
}
}
$data[] = $doc->title;
$data[] = $THEWIKI_NOW_NAMESPACE_NAME.$doc->title;
}
}

Expand Down
6 changes: 5 additions & 1 deletion build/raw.php
Expand Up @@ -34,7 +34,11 @@
} else if($api_result->reason=='empty document'){
$api_result->data = '';
} else if($api_result->reason=='reversion error'){
$api_result->data = '';
if($api_result->isDump){
die('<script> alert("잘못된 버전입니다. 덤프데이터는 r0 판으로 조회해야 합니다."); history.go(-1); </script>');
} else {
$api_result->data = '';
}
} else {
die('<script> alert("API에 문제가 발생했습니다."); </script>');
}
Expand Down

0 comments on commit e37f093

Please sign in to comment.