add pdfserver
This commit is contained in:
@@ -3,8 +3,7 @@
|
|||||||
"require": {
|
"require": {
|
||||||
"php":">=5.3.0",
|
"php":">=5.3.0",
|
||||||
"masterforweb/kuri":"dev-master",
|
"masterforweb/kuri":"dev-master",
|
||||||
"masterforweb/db_lite":"dev-master",
|
"masterforweb/db_lite":"dev-master"
|
||||||
"mikehaertl/php-pdftk": "^0.8.0"
|
|
||||||
},
|
},
|
||||||
"repositories":[
|
"repositories":[
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
ini_set('display_errors', 1);
|
ini_set('display_errors', 0);
|
||||||
ini_set('display_startup_errors', 1);
|
ini_set('display_startup_errors', 0);
|
||||||
|
|
||||||
|
|
||||||
if (isset($_SERVER['HTTP_HOST']))
|
if (isset($_SERVER['HTTP_HOST']))
|
||||||
@@ -14,11 +14,15 @@ else
|
|||||||
|
|
||||||
define('PDFDIR', '/vhosts/anpdf/app/pub/files/pdf/');
|
define('PDFDIR', '/vhosts/anpdf/app/pub/files/pdf/');
|
||||||
define('PGDIR', '/vhosts/anpdf/app/pub/files/pages/');
|
define('PGDIR', '/vhosts/anpdf/app/pub/files/pages/');
|
||||||
|
define('PDFURL', 'pub/files/pdf/');
|
||||||
|
define('PGURL', 'pub/files/pages/');
|
||||||
|
|
||||||
define('APPPATH', SITEPATH);
|
define('APPPATH', SITEPATH);
|
||||||
define('VIEWPATH', SITEPATH.'views/');
|
define('VIEWPATH', SITEPATH.'views/');
|
||||||
define('API', 'http://api.argumenti.ru/');
|
define('API', 'http://api.argumenti.ru/');
|
||||||
define('IMGSRV', 'https://imgurl.argumenti.ru/');
|
define('IMGSRV', 'https://imgurl.argumenti.ru/');
|
||||||
|
|
||||||
|
|
||||||
db_config('argumentiru', 'mysql:host=mysql;dbname=argumentiru', 'newser', 'Chjk90yuiREY');
|
db_config('argumentiru', 'mysql:host=mysql;dbname=argumentiru', 'newser', 'Chjk90yuiREY');
|
||||||
db_config('reader', 'mysql:host=mysql;dbname=argumentiru', 'reader', 'ghjyjkUIOhg56Fh');
|
db_config('reader', 'mysql:host=mysql;dbname=argumentiru', 'reader', 'ghjyjkUIOhg56Fh');
|
||||||
db_config('writer', 'mysql:host=mysql;dbname=argumentiru', 'chitatel', 'hjYu78kl*90Uio');
|
db_config('writer', 'mysql:host=mysql;dbname=argumentiru', 'chitatel', 'hjYu78kl*90Uio');
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ require 'routes/price.php';
|
|||||||
require 'routes/client.php';
|
require 'routes/client.php';
|
||||||
require 'routes/anpdf.php';
|
require 'routes/anpdf.php';
|
||||||
require 'routes/auth.php';
|
require 'routes/auth.php';
|
||||||
|
require 'routes/pdfserver.php';
|
||||||
|
|
||||||
#api
|
#api
|
||||||
require 'api/apiclient.php';
|
require 'api/apiclient.php';
|
||||||
|
|||||||
@@ -3,21 +3,33 @@
|
|||||||
function anpromo_kuri($page = 1, $scale = 1){
|
function anpromo_kuri($page = 1, $scale = 1){
|
||||||
|
|
||||||
// $pdfile = 'https://argumenti.ru/templinks/md5files/f9598f88e667146d50d106eeedbd74c1.pdf';
|
// $pdfile = 'https://argumenti.ru/templinks/md5files/f9598f88e667146d50d106eeedbd74c1.pdf';
|
||||||
$pdfile = '/pub/files/pdf/promo.pdf';
|
$namefile = 'promo.pdf';
|
||||||
$title = 'Номер 12(706)';
|
$title = 'Номер 12(706)';
|
||||||
$baseurl = '/';
|
$baseurl = '/';
|
||||||
$newcurr = strtotime('2006-05-12');
|
$newcurr = strtotime('2006-05-12');
|
||||||
|
|
||||||
|
$file = SITEPATH.'pub/files/pdf/promo.pdf';
|
||||||
|
$data = pdfs_init($file);
|
||||||
|
|
||||||
|
$pdfile = $data['pdfpgurl'];
|
||||||
|
|
||||||
|
$fullpdf = $data['pdfurl'];
|
||||||
$nextpage = $page + 1;
|
$nextpage = $page + 1;
|
||||||
if (file_exists(SITEPATH.$pdfile)){
|
$filedown = True;
|
||||||
|
|
||||||
|
if ($data['count'] > $nextpage){
|
||||||
$nexturl = "$baseurl$nextpage";
|
$nexturl = "$baseurl$nextpage";
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
$nexturl = '';
|
||||||
|
}
|
||||||
|
|
||||||
if ($page > 1) {
|
if ($page > 1) {
|
||||||
$prevpage = $page - 1;
|
$prevpage = $page - 1;
|
||||||
$prevurl = "$baseurl$prevpage";
|
$prevurl = "$baseurl$prevpage";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$downtitle = 'Если по какой-то причине у вас не загрузилась страница ниже, то нажмите сюда, чтобы скачать pdf';
|
||||||
$baseurl = "/anpromo/";
|
$baseurl = "/anpromo/";
|
||||||
$pagenum = 1;
|
$pagenum = 1;
|
||||||
|
|
||||||
@@ -30,7 +42,6 @@ function anpromo_kuri($page = 1, $scale = 1){
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function read_kuri($hash, $page = 1, $scale = 1, $promo = false){
|
function read_kuri($hash, $page = 1, $scale = 1, $promo = false){
|
||||||
|
|
||||||
$price = db_get("SELECT `price_id`, `pricename`, `BeginDate` FROM `price` WHERE `pricehash` = '$hash' LIMIT 1");
|
$price = db_get("SELECT `price_id`, `pricename`, `BeginDate` FROM `price` WHERE `pricehash` = '$hash' LIMIT 1");
|
||||||
@@ -48,8 +59,6 @@ function read_kuri($hash, $page = 1, $scale = 1, $promo = false){
|
|||||||
$newcurr = strtotime($price['BeginDate']);
|
$newcurr = strtotime($price['BeginDate']);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (file_exists($cachefile)){
|
if (file_exists($cachefile)){
|
||||||
$fullpdf = '/pdf/'.$namefile;
|
$fullpdf = '/pdf/'.$namefile;
|
||||||
}
|
}
|
||||||
|
|||||||
72
app/routes/pdfserver.php
Normal file
72
app/routes/pdfserver.php
Normal file
@@ -0,0 +1,72 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
|
||||||
|
function pdfs_filename($pdf){
|
||||||
|
return basename($source, ".pdf");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function pdfs_count($pdf){
|
||||||
|
|
||||||
|
$result = exec("pdftk $pdf dump_data | grep NumberOfPages");
|
||||||
|
return trim(str_replace("NumberOfPages:", '', $result));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
function pdfs_cachefile($pdf){
|
||||||
|
|
||||||
|
$basefile = basename($pdf);
|
||||||
|
$cachefile = PDFDIR.$basefile;
|
||||||
|
$cacheurl = PDFURL.$basefile;
|
||||||
|
|
||||||
|
if (!file_exists($cachefile)) {
|
||||||
|
if (copy($pdf, $cachefile))
|
||||||
|
return $cacheurl;
|
||||||
|
else
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $cacheurl;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function pdfs_init($source, $page = 1){
|
||||||
|
|
||||||
|
$result = array();
|
||||||
|
|
||||||
|
if (!file_exists($source))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
$result['count'] = pdfs_count($source); // количество страниц
|
||||||
|
$result['pdfurl'] = pdfs_cachefile($source); //полный файл на скачку
|
||||||
|
|
||||||
|
|
||||||
|
$name = basename($source, ".pdf");
|
||||||
|
$cachedir = PGDIR.$name.'/';
|
||||||
|
$cachefile = $name.'-'.$page.'.pdf';
|
||||||
|
$fullcachefile = $cachedir.$cachefile;
|
||||||
|
|
||||||
|
if (!file_exists($fullcachefile)){
|
||||||
|
|
||||||
|
if (!is_dir($cachedir))
|
||||||
|
mkdir($cachedir);
|
||||||
|
|
||||||
|
$cmd = "pdftk $source cat 1 output $fullcachefile";
|
||||||
|
shell_exec($cmd);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if (file_exists($fullcachefile))
|
||||||
|
$result['pdfpgurl'] = PGURL.$name.'/'.$cachefile;
|
||||||
|
else
|
||||||
|
return false;
|
||||||
|
|
||||||
|
return $result;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
Reference in New Issue
Block a user