]> _ Git - cubeextranet.git/commitdiff
(no commit message)
authorvincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Fri, 13 Apr 2012 15:36:08 +0000 (15:36 +0000)
committervincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Fri, 13 Apr 2012 15:36:08 +0000 (15:36 +0000)
inc/ws/Controlleur/class.ws.ajax.php
inc/ws/DAO/class.ws.dao.book.php
inc/ws/Util/packager/class.ws.packager.html.php
inc/ws/Util/packager/class.ws.packager.php

index 56aba9b67e5b6cc68e4911f53f71bbf134500de9..4edf28d6c5ded5d71a52d58091d12da30757ea73 100644 (file)
@@ -250,9 +250,10 @@ class wsAjax extends cubeAjax {
                if($book->parametres->version==1){\r
                        $version='v1';\r
                }\r
-\r
+               fb(time(),'start making package');\r
                $package = wsPackager::package($book_id, $version, false);\r
 \r
+               fb(time(),'start transfert');\r
                if ($server == 'references') {\r
                        $root = '/home/fluidbook/dev/references';\r
                        $url = 'http://www.fluidbook.com/references/';\r
@@ -281,11 +282,11 @@ class wsAjax extends cubeAjax {
                $cp = new cubeCommandLine('cp');\r
                $cp->setPath(CONVERTER_PATH);\r
                $cp->setArg('r');\r
-               $cp->setArg('u');\r
-               $cp->setArg('preserve','timestamps');\r
                $cp->setArg(null, $package . '*');\r
                $cp->setArg(null, $finalDir);\r
                $cp->execute();\r
+               \r
+               fb(time(),'end transfert');\r
 \r
                $x->addClosePopup();\r
                $x->addTruePopup($url . $dir . '/');\r
index f8591ca8bc3ee0f559fcad95d04fcab59ade3b0e..0423f33d31d1a25e3411702db684823c1cf5afb2 100644 (file)
@@ -815,22 +815,27 @@ class wsDAOBook extends commonDAO {
 \r
 \r
                if ($v1 || $v2) {\r
+                       fb(time(),'Compile PDF & Widget');\r
                        $this->compilePDF($book, $pages);\r
                        $this->compileWidget($book, $pages);\r
                }\r
                $res = '';\r
                if ($v1) {\r
+                       fb(time(),'Compile V1');\r
                        $res.=$this->compile1($book_id, $book, $pages);\r
                        $this->touchCompile($book_id, '1');\r
                }\r
                if ($v2) {\r
+                       fb(time(),'Compile V2');\r
                        $res .= $this->compile3($book_id, $complete, $book, $pages);\r
                        $this->touchCompile($book_id, '2');\r
                }\r
                if ($html5) {\r
+                       fb(time(),'Compile HTML5');\r
                        $res.=$this->compileHTML5($book_id);\r
                        $this->touchCompile($book_id, 'html5');\r
                }\r
+               fb(time(),'End Compile');\r
                return $res;\r
        }\r
 \r
index 24760edb4539fd8c76daf63c04dbb7e7e0d6318d..d17a01e285227e26647fe089d5fd64c216d5dfa9 100644 (file)
@@ -3,6 +3,7 @@
 class wsPackagerHTML extends wsPackager {\r
 \r
        protected $origHTML;\r
+       protected $_labels = array();\r
 \r
        public function __construct($book_id, $vdir = null, $whole = true) {\r
                parent::__construct($book_id, $vdir, $whole);\r
@@ -36,6 +37,8 @@ class wsPackagerHTML extends wsPackager {
 \r
                $this->copyOtherFiles($others);\r
 \r
+               fb(time(), 'start prepare seo');\r
+\r
                mkdir($this->vdir . '/pages/', 0777, true);\r
 \r
                $ga = '';\r
@@ -111,10 +114,14 @@ class wsPackagerHTML extends wsPackager {
                $this->origHTML = file_get_contents($this->vdir . '/index.html');\r
                $this->origHTML = $this->replaceHTML($toReplace);\r
 \r
+\r
+\r
                $nav1 = $this->makeHTMLNav(true);\r
                $nav = $this->makeHTMLNav(false);\r
                $footer = $this->makeHTMLFooter();\r
 \r
+               fb(time(), 'end prepare constant parts of seo');\r
+\r
                foreach ($this->pages as $page => $infos) {\r
                        $pathToIndex = 'index.swf';\r
                        $pathToGetflash = 'getflash.gif';\r
@@ -155,12 +162,16 @@ class wsPackagerHTML extends wsPackager {
                        $data = str_replace('$pathToGetflash', $pathToGetflash, $data);\r
                        $data = str_replace('$redirectScript', $redirectScript, $data);\r
 \r
+\r
+\r
                        file_put_contents($this->vdir . $dest, $data);\r
 \r
                        if (!$seoVersion) {\r
                                break;\r
                        }\r
                }\r
+\r
+               fb(time(), 'end prepare seo');\r
        }\r
 \r
        protected function getFlashvars() {\r
@@ -168,12 +179,13 @@ class wsPackagerHTML extends wsPackager {
        }\r
 \r
        public function prepareHTML5() {\r
+               fb(time(), 'start prepare html5');\r
                if (!$this->whole) {\r
                        return;\r
                }\r
-               \r
+\r
                $this->daoBook->compile($this->book_id, 'html5');\r
-               \r
+\r
                $dest = $this->vdir . 'm';\r
                mkdir($dest, 0777, true);\r
 \r
@@ -203,6 +215,7 @@ class wsPackagerHTML extends wsPackager {
                        $rm->setArg(null, $dest . '/' . $f);\r
                }\r
                $rm->execute();\r
+               fb(time(), 'end prepare html5');\r
        }\r
 \r
        public function makePackage($zip) {\r
@@ -237,14 +250,24 @@ class wsPackagerHTML extends wsPackager {
        }\r
 \r
        protected function _getLabelOfPage($page) {\r
-               if($page==1){\r
-                       return $this->book->parametres->title;\r
+               if(!isset($this->_chapters)){\r
+                       $this->_chapters = $this->book->chapters;\r
                }\r
                \r
-               $chapters = $this->book->chapters;\r
-               $virtual = $this->_getVirtualPage($page);\r
                \r
+               if (isset($this->_labels[$page])) {\r
+                       return $this->_labels[$page];\r
+               }\r
+\r
+\r
+               if ($page == 1) {\r
+                       $this->_labels[1] = $this->book->parametres->title;\r
+\r
+                       return $this->_labels[1];\r
+               }\r
+\r
                \r
+               $virtual = $this->_getVirtualPage($page);\r
 \r
                $candidates = array();\r
                foreach ($chapters as $c) {\r
@@ -253,12 +276,15 @@ class wsPackagerHTML extends wsPackager {
                        }\r
                }\r
                if (!count($candidates)) {\r
-                       return $this->_getLabelOfPage($page-1);\r
+                       $this->_labels[$page] = $this->_getLabelOfPage($page - 1);\r
+                       return $this->_labels[$page];\r
                }\r
 \r
                usort($candidates, array($this, '_sortCandidates'));\r
-               $c=array_shift($candidates);\r
-               return $c->label;\r
+               $c = array_shift($candidates);\r
+\r
+               $this->_labels[$page] = $c->label;\r
+               return $this->_labels[$page];\r
        }\r
 \r
        protected function _sortCandidates($a, $b) {\r
@@ -272,7 +298,7 @@ class wsPackagerHTML extends wsPackager {
        }\r
 \r
        protected function _getVirtualPage($page) {\r
-               $num = explode(',',$this->book->numerotation);\r
+               $num = explode(',', $this->book->numerotation);\r
                if (isset($num[$page - 1])) {\r
                        return $num[$page - 1];\r
                }\r
index 96903bff12d29268b28880939a6c325a9450a92e..c77835a462dc79130d01fd6703efa4823289808e 100644 (file)
@@ -51,7 +51,7 @@ class wsPackager {
 \r
                $this->daoBook = new wsDAOBook($core->con);\r
                $this->book = $this->daoBook->selectById($book_id);\r
-               $this->pages = $this->daoBook->getPagesOfBook($book_id);\r
+               $this->pages = $this->daoBook->getPagesOfBook($book_id,false);\r
 \r
                $daoTheme = new wsDAOTheme($core->con);\r
                $this->theme = $daoTheme->getThemeOfBook($book_id, true);\r