]> _ Git - cubeextranet.git/commitdiff
(no commit message)
authorvincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Wed, 19 Jan 2011 17:18:14 +0000 (17:18 +0000)
committervincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Wed, 19 Jan 2011 17:18:14 +0000 (17:18 +0000)
inc/ws/Controlleur/class.ws.flash.php
inc/ws/Controlleur/class.ws.url.php
inc/ws/DAO/class.ws.dao.book.php
inc/ws/DAO/class.ws.dao.document.php

index 59c29fe38ff0853bf86c560712901e65c45b7f71..bd1c2f1430bcaa0b65622de4ca820debff59c103 100644 (file)
@@ -61,7 +61,7 @@ class wsFlash extends cubeFlashGateway {
                        $data['localInfos'] = $li;\r
                        $data['conversionInfos'] = new wsDocumentConversionInfos($this->args['resolution'], $this->args['method'], $this->args['quality'], $this->args['objects']);\r
                        $document = $dao->sauve($data);\r
-                       $document->copyOriginal($infos['tmp_name']);\r
+                       $document->copyOriginalFromUpload($infos['tmp_name']);\r
                        $this->xml->addChild('document_id', $document->document_id);\r
                        $_SESSION['conversionSession'][$document->document_id] = 'all';\r
                        $_SESSION['conversionSessionReload'] = false;\r
index e48adb7c23efd89fc606f5a600b5901d3796cd11..a2ee69deb96449085c4adfd8b66b76084b2b31d6 100644 (file)
@@ -398,6 +398,12 @@ html{height:100%}' . "\n";
                        fb('updateDocument', $document_id);\r
                        self::updateDocument($document_id);\r
                }\r
+\r
+               if (count($toUpdate) > 0) {\r
+                       $dao->setChaptersFromOldFluidbook($book_id);\r
+                       $daoDoc = new wsDAODocument($core->con);\r
+                       $daoDoc->setLinksFromOldFluidbook($book_id);\r
+               }\r
        }\r
 \r
        protected static function updateDocument($document_id)\r
index 0c62103fb3558f269b421eb418b38b287148520a..80450b3bd849d5eb6783d42f3ad9410340732ba9 100644 (file)
@@ -317,6 +317,25 @@ class wsDAOBook extends commonDAO {
                $c->update('WHERE book_id=\'' . $this->con->escape($book_id) . '\'');\r
        }\r
 \r
+       public function setChaptersFromOldFluidbook($book_id)\r
+       {\r
+               $xml = simplexml_load_file('http://ws.fluidbook.com/books/' . $book_id . '/links.xml');\r
+               $res = array();\r
+               $chapters = $xml->xpath('//chapters');\r
+               foreach($chapters as $ch) {\r
+                       $c = array();\r
+                       $c['label'] = (string)$ch->txt;\r
+                       $c['page'] = (string)$ch->page;\r
+                       $c['level'] = intval((string)$ch->level);\r
+                       $res[] = $c;\r
+               }\r
+\r
+               $c = $this->con->openCursor('books');\r
+               $c->chapters = json_encode($res);\r
+               $c->changedate = TIME;\r
+               $c->update('WHERE book_id=\'' . $this->con->escape($book_id) . '\'');\r
+       }\r
+\r
        public function setExtras($book_id, $extras)\r
        {\r
                if ($extras != '') {\r
@@ -563,7 +582,7 @@ class wsDAOBook extends commonDAO {
                                $flexLight->addVariable('size_p_' . $i, filesize($swffile), false, true, 'Number');\r
                        } else {\r
                                $flex->addBitmap(WS_DOCS . '/' . $infos['document_id'] . '/p' . $infos['document_page'] . '.jpg', 'thumb' . $i);\r
-                               $flex->addVariable('size_p_' . $i, filesize($swffile), false, true, 'Number');\r
+                               $flexLight->addVariable('size_p_' . $i, filesize($swffile), false, true, 'Number');\r
                        }\r
                }\r
 \r
index e6aafe0958973a5735e9adf8ea614d5e7d126f75..3793f62750a5f50ec156445293accae24b7705e2 100644 (file)
@@ -1,6 +1,6 @@
 <?php\r
 class wsDAODocument extends commonDAO {\r
-       public static $normal = array('document_id', 'file', 'proprietaire', 'pages', 'date', 'numberSections','version');\r
+       public static $normal = array('document_id', 'file', 'proprietaire', 'pages', 'date', 'numberSections', 'version');\r
        public static $complex = array('localInfos', 'bookmarks', 'generalInfos', 'conversionInfos', 'trim');\r
 \r
        public function singleton($r)\r
@@ -108,6 +108,84 @@ class wsDAODocument extends commonDAO {
                }\r
        }\r
 \r
+       public function setLinksFromOldFluidbook($book_id)\r
+       {\r
+               $daoBook = new wsDAOBook($this->con);\r
+               $pages = $daoBook->getPagesOfBook($book_id);\r
+               $book = $daoBook->selectById($book_id);\r
+               $width = $book->parametres->width;\r
+\r
+               $xml = simplexml_load_file('http://ws.fluidbook.com/books/' . $book_id . '/data/links.xml');\r
+               $links = $xml->xpath('//oneLink');\r
+\r
+               /*res.type = type;\r
+                       res.page = page;\r
+                       if (page == 0 && rect.x<pageWidth) {\r
+                               res.page = 1;\r
+                               res.left -= pageWidth;\r
+                       }else if(rect.x>=pageWidth && page!=totalPages){\r
+                               res.left = rect.x-pageWidth;\r
+                               res.page++;\r
+                       }else {\r
+                               res.left = rect.x;\r
+                       }\r
+                       res.top = rect.y;\r
+                       res.width = rect.width;\r
+                       res.height = rect.height;\r
+                       res.to = to;\r
+                       res.target = target;\r
+                       res.video_loop = video_loop;\r
+                       res.video_auto_start = video_auto_start;\r
+                       res.video_controls = video_controls;\r
+                       res.video_sound_on = video_sound_on;\r
+                       res.infobulle = infobulle;\r
+                       res.numerotation = numerotation;*/\r
+\r
+               $res = array();\r
+               $lpages = array();\r
+               foreach($links as $l) {\r
+                       $link = array();\r
+                       $link['page'] = (string)$l['page'];\r
+                       $link['numerotation'] = false;\r
+                       $link['left'] = intval((string)$l['startX']);\r
+                       $link['width'] = intval((string)$l['endX']) - $link['left'];\r
+                       if ($link['left'] > $width) {\r
+                               $link['page']++;\r
+                               $link['left'] -= $width;\r
+                       }\r
+                       $page = $link['page'];\r
+                       $link['top'] = intval((string)$l['startY']);\r
+                       $link['height'] = intval((string)$l['endY']) - $link['top'];\r
+                       $link['infobulle'] = '';\r
+                       $link['target'] = '_blank';\r
+                       $link['to'] = (string)$l['linkTo'];\r
+                       $link['type'] = intval((string)$l['linkType']);\r
+                       $link['video_loop'] = ((string)$l['loopFlag'] == '1');\r
+                       $link['video_auto_start'] = true;\r
+                       $link['video_controls'] = ((string)$l['playerActive'] == '1');\r
+                       $link['video_sound_on'] = ((string)$l['soundOn'] == '1');\r
+\r
+                       if (!isset($lpages[$page])) {\r
+                               $lpages[$page] = array();\r
+                       }\r
+                       $lpages[$page][] = $link;\r
+               }\r
+\r
+               $c = $this->con->openCursor('document_links');\r
+               $c->update = TIME;\r
+               foreach($pages as $page => $infos) {\r
+                       $c->document_id = $infos['document_id'];\r
+                       $c->document_page = $infos['document_page'];\r
+                       if (isset($lpages[$page])) {\r
+                               $c->links = json_encode($lpages[$page]);\r
+                       } else {\r
+                               $c->links = json_encode(array());\r
+                       }\r
+                       $c->rulers = json_encode(array());\r
+                       $c->insert();\r
+               }\r
+       }\r
+\r
        public function getLinksAndRulers($book_id, &$links, &$rulers)\r
        {\r
                $daoBook = new wsDAOBook($this->con);\r