prepare($query); $sth->execute($fields); if ( $row = $sth->fetch(PDO::FETCH_ASSOC) ) { $currentpage = intval($row['currentpage']); } else { $currentpage = 0; } $data["startindex"] = $currentpage; if ( !is_dir($comicoutputfull) ) { mkdir($comicoutputfull, 0755, true); } $files = array(); if ( $ext == "cbz" ) { $zip = new ZipArchive(); $opened = $zip->open($comicfull); for ( $i=0; $i<$zip->numFiles; $i++ ) { $imgname = basename($zip->getNameIndex($i)); $myext = substr($imgname, -3); if ( ($myext == "jpg") || ($myext == "png") ) { $imgname = str_replace("#", "", $imgname); $imgcontents = $zip->getFromIndex($i); $written = file_put_contents($comicoutputfull . $imgname, $imgcontents); if ( $written ) $files[] = $imgname; } } } elseif ( $ext == "cbr" ) { $junk = `/usr/local/bin/rar e -ep -o+ "$comicfull" "$comicoutputfull"`; $fh = opendir($comicoutputfull); while ( false !== ($file = readdir($fh)) ) { $myfile = $comicoutputfull . $file; $mynewfile = $comicoutputfull . str_replace("#", "", $file); $myext = strtolower(substr($file, -3)); if ( ($myext == "jpg") || ($myext == "png") ) { rename($myfile, $mynewfile); $files[] = basename($mynewfile); } } closedir($fh); } else { exit(); } natsort($files); $images = array(); $captions = array(); $last = count($files); $count = 0; foreach ( $files as $file ) { $count++; $images[] = $comicoutputurl . $file; $captions[] = substr(basename($comicoutputurl), 0, -4) . ": {$count} of {$last}"; } $debug = (DEBUG_SHOWCOMICAJAX || DEBUG_ALL); $data["debug"] = $debug; $data["images"] = $images; $data["captions"] = $captions; header('Content-Type: application/json'); echo json_encode($data); exit(); // vim: set ts=3 sw=3 et: