From 98100a28b551dd356313d17d6d97024fea1eb10e Mon Sep 17 00:00:00 2001 From: Sebastian Date: Thu, 13 Sep 2018 21:16:45 +0200 Subject: [PATCH] Version 1.2.3 Reorder Pages --- .gitignore | 1 + cache/lastCache.txt | 2 +- content/index.md | 4 +- system/Controllers/ContentApiController.php | 99 +++++++++++ .../Controllers/ContentBackendController.php | 6 +- system/Controllers/ContentController.php | 18 +- system/Models/Folder.php | 88 +++++++++- system/Models/Validation.php | 27 +++ system/Models/Write.php | 46 +++++ system/Routes/Api.php | 3 +- system/author/css/fontello/LICENSE.txt | 9 - system/author/css/fontello/config.json | 44 +++-- .../css/fontello/css/fontello-codes.css | 14 +- .../css/fontello/css/fontello-embedded.css | 26 +-- .../css/fontello/css/fontello-ie7-codes.css | 14 +- .../author/css/fontello/css/fontello-ie7.css | 14 +- system/author/css/fontello/css/fontello.css | 28 +-- system/author/css/fontello/demo.html | 24 +-- system/author/css/fontello/font/fontello.eot | Bin 6924 -> 7628 bytes system/author/css/fontello/font/fontello.svg | 16 +- system/author/css/fontello/font/fontello.ttf | Bin 6756 -> 7460 bytes system/author/css/fontello/font/fontello.woff | Bin 4168 -> 4620 bytes .../author/css/fontello/font/fontello.woff2 | Bin 3428 -> 3832 bytes system/author/css/style.css | 159 ++++++++++++++++-- .../content.twig => editor/editor.twig} | 2 +- system/author/js/sortable.min.js | 2 + system/author/js/vue-editor.js | 6 +- system/author/js/vue-navi.js | 137 +++++++++++++++ system/author/js/vuedraggable.min.js | 1 + .../{layoutContent.twig => layoutEditor.twig} | 7 +- system/author/partials/contentNavi.twig | 41 ----- system/author/partials/editorNavi.twig | 42 +++++ system/author/partials/navi.twig | 6 +- 33 files changed, 728 insertions(+), 158 deletions(-) rename system/author/{content/content.twig => editor/editor.twig} (98%) create mode 100644 system/author/js/sortable.min.js create mode 100644 system/author/js/vue-navi.js create mode 100644 system/author/js/vuedraggable.min.js rename system/author/layouts/{layoutContent.twig => layoutEditor.twig} (86%) delete mode 100644 system/author/partials/contentNavi.twig create mode 100644 system/author/partials/editorNavi.twig diff --git a/.gitignore b/.gitignore index 54d9339..81876bd 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,7 @@ plugins/disqus plugins/download plugins/finalwords plugins/version +plugins/textadds settings/settings.yaml settings/users system/vendor diff --git a/cache/lastCache.txt b/cache/lastCache.txt index 09c677b..3859b00 100644 --- a/cache/lastCache.txt +++ b/cache/lastCache.txt @@ -1 +1 @@ -1532595582 \ No newline at end of file +1536861417 \ No newline at end of file diff --git a/content/index.md b/content/index.md index af930f9..1e7c4d5 100644 --- a/content/index.md +++ b/content/index.md @@ -1,3 +1,5 @@ # Typemill -TYPEMILL is a small flat file cms designed for **writers**. It creates websites based on markdown files and is a perfect solution for text-works like studies, manuals or documentations. TYPEMILL is simple, lightweight and open source. Just download and start. \ No newline at end of file +Modern Web Publishing For Writers. + +Typemill is a user-friendly and lightweight open source CMS for publishing text-works like prosa, lyrics, manuals, documentations, studies and more. Just download and start. \ No newline at end of file diff --git a/system/Controllers/ContentApiController.php b/system/Controllers/ContentApiController.php index 17af3f8..47334e3 100644 --- a/system/Controllers/ContentApiController.php +++ b/system/Controllers/ContentApiController.php @@ -4,6 +4,8 @@ namespace Typemill\Controllers; use Slim\Http\Request; use Slim\Http\Response; +use Typemill\Models\Folder; +use Typemill\Models\Write; use Typemill\Extensions\ParsedownExtension; class ContentApiController extends ContentController @@ -180,6 +182,103 @@ class ContentApiController extends ContentController } } + public function sortArticle(Request $request, Response $response, $args) + { + # get params from call + $this->params = $request->getParams(); + $this->uri = $request->getUri(); + + # url is only needed, if an active page is moved + $url = false; + + # set structure + if(!$this->setStructure($draft = true)){ return $response->withJson(array('data' => false, 'errors' => $this->errors, 'url' => $url), 404); } + + # validate input + if(!$this->validateNavigationSort()){ return $response->withJson(array('data' => $this->structure, 'errors' => 'Data not valid. Please refresh the page and try again.', 'url' => $url), 422); } + + # get the ids (key path) for item, old folder and new folder + $itemKeyPath = explode('.', $this->params['item_id']); + $parentKeyFrom = explode('.', $this->params['parent_id_from']); + $parentKeyTo = explode('.', $this->params['parent_id_to']); + + # get the item from structure + $item = Folder::getItemWithKeyPath($this->structure, $itemKeyPath); + + if(!$item){ return $response->withJson(array('data' => $this->structure, 'errors' => 'We could not find this page. Please refresh and try again.', 'url' => $url), 404); } + + # if a folder is moved on the first level + if($this->params['parent_id_from'] == 'navi') + { + # create empty and default values so that the logic below still works + $newFolder = new \stdClass(); + $newFolder->path = ''; + $folderContent = $this->structure; + } + else + { + # get the target folder from structure + $newFolder = Folder::getItemWithKeyPath($this->structure, $parentKeyTo); + + # get the content of the target folder + $folderContent = $newFolder->folderContent; + } + + # if the item has been moved within the same folder + if($this->params['parent_id_from'] == $this->params['parent_id_to']) + { + # get key of item + $itemKey = end($itemKeyPath); + reset($itemKeyPath); + + # delete item from folderContent + unset($folderContent[$itemKey]); + } + elseif($this->params['active'] == 'active') + { + # an active file has been moved to another folder + $url = $this->uri->getBaseUrl() . '/tm/content' . $newFolder->urlRelWoF . '/' . $item->slug; + } + + # add item to newFolder + array_splice($folderContent, $this->params['index_new'], 0, array($item)); + + # initialize index + $index = 0; + + # initialise write object + $write = new Write(); + + # iterate through the whole content of the new folder + $writeError = false; + foreach($folderContent as $folderItem) + { + if(!$write->moveElement($folderItem, $newFolder->path, $index)) + { + $writeError = true; + } + $index++; + } + if($writeError){ return $response->withJson(array('data' => $this->structure, 'errors' => 'Something went wrong. Please refresh the page and check, if all folders and files are writable.', 'url' => $url), 404); } + + # update the structure for editor + $this->setStructure($draft = true, $cache = false); + + # get item for url and set it active again + if(isset($this->params['url'])) + { + $activeItem = Folder::getItemForUrl($this->structure, $this->params['url']); + } + + # keep the internal structure for response + $internalStructure = $this->structure; + + # update the structure for website + $this->setStructure($draft = false, $cache = false); + + return $response->withJson(array('data' => $internalStructure, 'errors' => false, 'url' => $url)); + } + public function createBlock(Request $request, Response $response, $args) { diff --git a/system/Controllers/ContentBackendController.php b/system/Controllers/ContentBackendController.php index 22bf875..491cf0c 100644 --- a/system/Controllers/ContentBackendController.php +++ b/system/Controllers/ContentBackendController.php @@ -5,6 +5,7 @@ namespace Typemill\Controllers; use Slim\Http\Request; use Slim\Http\Response; use Slim\Views\Twig; +use Typemill\Models\Folder; use Typemill\Extensions\ParsedownExtension; class ContentBackendController extends ContentController @@ -29,6 +30,9 @@ class ContentBackendController extends ContentController # set item if(!$this->setItem()){ return $this->render404($response, array( 'navigation' => $this->structure, 'settings' => $this->settings, 'content' => $this->errors )); } + # get the breadcrumb (here we need it only to mark the actual item active in navigation) + $breadcrumb = isset($this->item->keyPathArray) ? Folder::getBreadcrumb($this->structure, $this->item->keyPathArray) : false; + # set the status for published and drafted $this->setPublishStatus(); @@ -68,6 +72,6 @@ class ContentBackendController extends ContentController } } - return $this->render($response, 'content/content.twig', array('navigation' => $this->structure, 'title' => $title, 'content' => $content, 'item' => $this->item, 'settings' => $this->settings )); + return $this->render($response, 'editor/editor.twig', array('navigation' => $this->structure, 'title' => $title, 'content' => $content, 'item' => $this->item, 'settings' => $this->settings )); } } \ No newline at end of file diff --git a/system/Controllers/ContentController.php b/system/Controllers/ContentController.php index f9cb3c0..18bc47e 100644 --- a/system/Controllers/ContentController.php +++ b/system/Controllers/ContentController.php @@ -39,6 +39,9 @@ abstract class ContentController # hold the page-item as an object protected $item; + # hold the breadcrumb as an object + protected $breadcrumb; + # holds the path to the requested file protected $path = false; @@ -91,6 +94,19 @@ abstract class ContentController return true; } + protected function validateNavigationSort() + { + $validate = new Validation(); + $vResult = $validate->navigationSort($this->params); + + if(is_array($vResult)) + { + $this->errors = ['errors' => $vResult]; + return false; + } + return true; + } + protected function setStructure($draft = false, $cache = true) { # set initial structure to false @@ -176,7 +192,7 @@ abstract class ContentController { $this->path = $this->item->pathWithoutType . '.' . $fileType; } - + protected function setPublishStatus() { $this->item->published = false; diff --git a/system/Models/Folder.php b/system/Models/Folder.php index dc11488..c8624a9 100644 --- a/system/Models/Folder.php +++ b/system/Models/Folder.php @@ -6,6 +6,34 @@ use \URLify; class Folder { + + /* + * scans content of a folder (without recursion) + * vars: folder path as string + * returns: one-dimensional array with names of folders and files + */ + public static function scanFolderFlat($folderPath) + { + $folderItems = scandir($folderPath); + $folderContent = array(); + + foreach ($folderItems as $key => $item) + { + if (!in_array($item, array(".",".."))) + { + $nameParts = self::getStringParts($item); + $fileType = array_pop($nameParts); + + if($fileType == 'md' OR $fileType == 'txt' ) + { + $folderContent[] = $item; + } + } + } + return $folderContent; + } + + /* * scans content of a folder recursively * vars: folder path as string @@ -88,6 +116,8 @@ class Folder $item->keyPath = isset($keyPath) ? $keyPath . '.' . $iteration : $iteration; $item->keyPathArray = explode('.', $item->keyPath); $item->chapter = $chapter ? $chapter . '.' . $chapternr : $chapternr; + $item->active = false; + $item->activeParent = false; $item->folderContent = self::getFolderContentDetails($name, $baseUrl, $item->urlRel, $item->urlRelWoF, $item->path, $item->keyPath, $item->chapter); } @@ -115,6 +145,8 @@ class Folder $item->urlRelWoF = $fullSlugWithoutFolder . '/' . $item->slug; $item->urlRel = $fullSlugWithFolder . '/' . $item->slug; $item->urlAbs = $baseUrl . $fullSlugWithoutFolder . '/' . $item->slug; + $item->active = false; + $item->activeParent = false; } $iteration++; $chapternr++; @@ -213,7 +245,14 @@ class Folder return $item; } - + + /* + * Gets a copy of an item with a key + * @param array $content with the full structure of the content as multidimensional array + * @param array $searchArray with the key as a one-dimensional array like array(0,3,4) + * @return array $item + */ + public static function getItemWithKeyPath($content, array $searchArray) { $item = false; @@ -231,6 +270,51 @@ class Folder return $item; } + # https://www.quora.com/Learning-PHP-Is-there-a-way-to-get-the-value-of-multi-dimensional-array-by-specifying-the-key-with-a-variable + # NOT IN USE + public static function getItemWithKeyPathNew($array, array $keys) + { + $item = $array; + + foreach ($keys as $key) + { + $item = isset($item[$key]->folderContent) ? $item[$key]->folderContent : $item[$key]; + } + + return $item; + } + + /* + * Extracts an item with a key https://stackoverflow.com/questions/52097092/php-delete-value-of-array-with-dynamic-key + * @param array $content with the full structure of the content as multidimensional array + * @param array $searchArray with the key as a one-dimensional array like array(0,3,4) + * @return array $item + * NOT IN USE ?? + */ + + public static function extractItemWithKeyPath($structure, array $keys) + { + $result = &$structure; + $last = array_pop($keys); + + foreach ($keys as $key) { + if(isset($result[$key]->folderContent)) + { + $result = &$result[$key]->folderContent; + } + else + { + $result = &$result[$key]; + } + } + + $item = $result[$last]; + unset($result[$last]); + + return array('structure' => $structure, 'item' => $item); + } + + /* get breadcrumb as copied array, set elements active in original and mark parent element in original */ public static function getBreadcrumb($content, $searchArray, $i = NULL, $breadcrumb = NULL) { @@ -280,7 +364,7 @@ class Folder } return $lastItem; } - + public static function getStringParts($name) { return preg_split('/[\-\.\_\=\+\?\!\*\#\(\)\/ ]/',$name); diff --git a/system/Models/Validation.php b/system/Models/Validation.php index 3c26ef8..d7620d7 100644 --- a/system/Models/Validation.php +++ b/system/Models/Validation.php @@ -214,6 +214,33 @@ class Validation return $v->errors(); } } + + /** + * validation for resort navigation + * + * @param array $params with form data. + * @return true or $v->errors with array of errors to use in json-response + */ + + public function navigationSort(array $params) + { + $v = new Validator($params); + + $v->rule('required', ['item_id', 'parent_id_from', 'parent_id_to']); + $v->rule('regex', 'item_id', '/^[0-9.]+$/i'); + $v->rule('regex', 'parent_id_from', '/^[a-zA-Z0-9.]+$/i'); + $v->rule('regex', 'parent_id_to', '/^[a-zA-Z0-9.]+$/i'); + $v->rule('integer', 'index_new'); + + if($v->validate()) + { + return true; + } + else + { + return $v->errors(); + } + } /** * validation for dynamic fields ( settings for themes and plugins) diff --git a/system/Models/Write.php b/system/Models/Write.php index 3e65427..fddc6f1 100644 --- a/system/Models/Write.php +++ b/system/Models/Write.php @@ -79,4 +79,50 @@ class Write } return false; } + + public function moveElement($item, $folderPath, $index) + { + $result = false; + + $newOrder = ($index < 10) ? '0' . $index : $index; + + if($item->elementType == 'folder') + { + $newName = $newOrder . '-' . $item->name; + } + else + { + $newName = $newOrder . '-' . $item->name . '.' . $item->fileType; + } + + $oldPath = $this->basePath . 'content' . $item->path; + $newPath = $this->basePath . 'content' . $folderPath . DIRECTORY_SEPARATOR . $newName; + + if(@rename($oldPath, $newPath)) + { + $result = true; + } + + # if it is a txt file, check, if there is a corresponding .md file and move it + if($result && $item->elementType == 'file' && $item->fileType == 'txt') + { + $result = false; + + $oldPath = substr($item->path, 0, strpos($item->path, ".")); + $oldPath = $this->basePath . 'content' . $oldPath . '.md'; + + if(file_exists($oldPath)) + { + $newName = $newOrder . '-' . $item->name . '.md'; + $newPath = $this->basePath . 'content' . $folderPath . DIRECTORY_SEPARATOR . $newName; + + if(@rename($oldPath, $newPath)) + { + $result = true; + } + } + } + + return $result; + } } \ No newline at end of file diff --git a/system/Routes/Api.php b/system/Routes/Api.php index 5d9f4a2..f036712 100644 --- a/system/Routes/Api.php +++ b/system/Routes/Api.php @@ -10,4 +10,5 @@ $app->post('/api/v1/article/publish', ContentApiController::class . ':publishArt $app->delete('/api/v1/article/unpublish', ContentApiController::class . ':unpublishArticle')->setName('api.article.unpublish')->add(new RestrictApiAccess($container['router'])); $app->put('/api/v1/article', ContentApiController::class . ':updateArticle')->setName('api.article.update')->add(new RestrictApiAccess($container['router'])); $app->delete('/api/v1/article', ContentApiController::class . ':deleteArticle')->setName('api.article.delete')->add(new RestrictApiAccess($container['router'])); -$app->post('/api/v1/block', ContentBackendController::class . ':createBlock')->setName('api.block.create')->add(new RestrictApiAccess($container['router'])); \ No newline at end of file +$app->post('/api/v1/article/sort', ContentApiController::class . ':sortArticle')->setName('api.article.sort')->add(new RestrictApiAccess($container['router'])); +// $app->post('/api/v1/block', ContentBackendController::class . ':createBlock')->setName('api.block.create')->add(new RestrictApiAccess($container['router'])); diff --git a/system/author/css/fontello/LICENSE.txt b/system/author/css/fontello/LICENSE.txt index 3fdba2a..8fa3da3 100644 --- a/system/author/css/fontello/LICENSE.txt +++ b/system/author/css/fontello/LICENSE.txt @@ -10,12 +10,3 @@ Font license info Homepage: http://fortawesome.github.com/Font-Awesome/ -## Web Symbols - - Copyright (c) 2011 by Just Be Nice studio. All rights reserved. - - Author: Just Be Nice studio - License: SIL (http://scripts.sil.org/OFL) - Homepage: http://www.justbenicestudio.com/ - - diff --git a/system/author/css/fontello/config.json b/system/author/css/fontello/config.json index 7d8ebd4..1106f4f 100644 --- a/system/author/css/fontello/config.json +++ b/system/author/css/fontello/config.json @@ -7,27 +7,33 @@ "ascent": 850, "glyphs": [ { - "uid": "8b9e6a8dd8f67f7c003ed8e7e5ee0857", - "css": "off", - "code": 59393, + "uid": "5408be43f7c42bccee419c6be53fdef5", + "css": "doc-text", + "code": 61686, "src": "fontawesome" }, { - "uid": "c5fd349cbd3d23e4ade333789c29c729", - "css": "eye", - "code": 59394, + "uid": "b091a8bd0fdade174951f17d936f51e4", + "css": "folder-empty", + "code": 61716, + "src": "fontawesome" + }, + { + "uid": "6533bdc16ab201eb3f3b27ce989cab33", + "css": "folder-open-empty", + "code": 61717, "src": "fontawesome" }, { "uid": "e99461abfef3923546da8d745372c995", "css": "cog", - "code": 59396, + "code": 59392, "src": "fontawesome" }, { - "uid": "5408be43f7c42bccee419c6be53fdef5", - "css": "doc-text", - "code": 61686, + "uid": "381da2c2f7fd51f8de877c044d7f439d", + "css": "picture", + "code": 59393, "src": "fontawesome" }, { @@ -37,16 +43,22 @@ "src": "fontawesome" }, { - "uid": "381da2c2f7fd51f8de877c044d7f439d", - "css": "picture", - "code": 59392, + "uid": "b013f6403e5ab0326614e68d1850fd6b", + "css": "resize-full-alt", + "code": 61618, "src": "fontawesome" }, { - "uid": "8da3ac534210aae9c0f0e13804c1df97", - "css": "cancel", + "uid": "8b9e6a8dd8f67f7c003ed8e7e5ee0857", + "css": "off", + "code": 59394, + "src": "fontawesome" + }, + { + "uid": "d7271d490b71df4311e32cdacae8b331", + "css": "home", "code": 59395, - "src": "websymbols" + "src": "fontawesome" } ] } \ No newline at end of file diff --git a/system/author/css/fontello/css/fontello-codes.css b/system/author/css/fontello/css/fontello-codes.css index 1a91f76..723822a 100644 --- a/system/author/css/fontello/css/fontello-codes.css +++ b/system/author/css/fontello/css/fontello-codes.css @@ -1,8 +1,10 @@ -.icon-picture:before { content: '\e800'; } /* '' */ -.icon-off:before { content: '\e801'; } /* '' */ -.icon-eye:before { content: '\e802'; } /* '' */ -.icon-cancel:before { content: '\e803'; } /* '' */ -.icon-cog:before { content: '\e804'; } /* '' */ +.icon-cog:before { content: '\e800'; } /* '' */ +.icon-picture:before { content: '\e801'; } /* '' */ +.icon-off:before { content: '\e802'; } /* '' */ +.icon-home:before { content: '\e803'; } /* '' */ .icon-link-ext:before { content: '\f08e'; } /* '' */ -.icon-doc-text:before { content: '\f0f6'; } /* '' */ \ No newline at end of file +.icon-resize-full-alt:before { content: '\f0b2'; } /* '' */ +.icon-doc-text:before { content: '\f0f6'; } /* '' */ +.icon-folder-empty:before { content: '\f114'; } /* '' */ +.icon-folder-open-empty:before { content: '\f115'; } /* '' */ \ No newline at end of file diff --git a/system/author/css/fontello/css/fontello-embedded.css b/system/author/css/fontello/css/fontello-embedded.css index c847cde..1eaf67f 100644 --- a/system/author/css/fontello/css/fontello-embedded.css +++ b/system/author/css/fontello/css/fontello-embedded.css @@ -1,15 +1,15 @@ @font-face { font-family: 'fontello'; - src: url('../font/fontello.eot?81418204'); - src: url('../font/fontello.eot?81418204#iefix') format('embedded-opentype'), - url('../font/fontello.svg?81418204#fontello') format('svg'); + src: url('../font/fontello.eot?91804628'); + src: url('../font/fontello.eot?91804628#iefix') format('embedded-opentype'), + url('../font/fontello.svg?91804628#fontello') format('svg'); font-weight: normal; font-style: normal; } @font-face { font-family: 'fontello'; - src: url('data:application/octet-stream;base64,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') format('woff'), - url('data:application/octet-stream;base64,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') format('truetype'); + src: url('data:application/octet-stream;base64,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') format('woff'), + url('data:application/octet-stream;base64,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BCVHI0cjYbAGJbAFJUmwAiVhuQgACABjYyMgWGIbIVljuAQAYiCwAFBYsEBgWWawAWNgIy4jICA8ijgjIVktsDossAAWILAIQyAuRyNHI2EgYLAgYGawAmIgsABQWLBAYFlmsAFjIyAgPIo4LbA7LCMgLkawAiVGUlggPFkusSsBFCstsDwsIyAuRrACJUZQWCA8WS6xKwEUKy2wPSwjIC5GsAIlRlJYIDxZIyAuRrACJUZQWCA8WS6xKwEUKy2wPiywNSsjIC5GsAIlRlJYIDxZLrErARQrLbA/LLA2K4ogIDywBCNCijgjIC5GsAIlRlJYIDxZLrErARQrsARDLrArKy2wQCywABawBCWwBCYgLkcjRyNhsAlDKyMgPCAuIzixKwEUKy2wQSyxCAQlQrAAFrAEJbAEJSAuRyNHI2EgsAQjQrAJQysgsGBQWCCwQFFYswIgAyAbswImAxpZQkIjIEewBEOwAmIgsABQWLBAYFlmsAFjYCCwASsgiophILACQ2BkI7ADQ2FkUFiwAkNhG7ADQ2BZsAMlsAJiILAAUFiwQGBZZrABY2GwAiVGYTgjIDwjOBshICBGI0ewASsjYTghWbErARQrLbBCLLA1Ky6xKwEUKy2wQyywNishIyAgPLAEI0IjOLErARQrsARDLrArKy2wRCywABUgR7AAI0KyAAEBFRQTLrAxKi2wRSywABUgR7AAI0KyAAEBFRQTLrAxKi2wRiyxAAEUE7AyKi2wRyywNCotsEgssAAWRSMgLiBGiiNhOLErARQrLbBJLLAII0KwSCstsEossgAAQSstsEsssgABQSstsEwssgEAQSstsE0ssgEBQSstsE4ssgAAQistsE8ssgABQistsFAssgEAQistsFEssgEBQistsFIssgAAPistsFMssgABPistsFQssgEAPistsFUssgEBPistsFYssgAAQCstsFcssgABQCstsFgssgEAQCstsFkssgEBQCstsFossgAAQystsFsssgABQystsFwssgEAQystsF0ssgEBQystsF4ssgAAPystsF8ssgABPystsGAssgEAPystsGEssgEBPystsGIssDcrLrErARQrLbBjLLA3K7A7Ky2wZCywNyuwPCstsGUssAAWsDcrsD0rLbBmLLA4Ky6xKwEUKy2wZyywOCuwOystsGgssDgrsDwrLbBpLLA4K7A9Ky2waiywOSsusSsBFCstsGsssDkrsDsrLbBsLLA5K7A8Ky2wbSywOSuwPSstsG4ssDorLrErARQrLbBvLLA6K7A7Ky2wcCywOiuwPCstsHEssDorsD0rLbByLLMJBAIDRVghGyMhWUIrsAhlsAMkUHiwARUwLQBLuADIUlixAQGOWbABuQgACABjcLEABUKyAAEAKrEABUKzCgIBCCqxAAVCsw4AAQgqsQAGQroCwAABAAkqsQAHQroAQAABAAkqsQMARLEkAYhRWLBAiFixA2REsSYBiFFYugiAAAEEQIhjVFixAwBEWVlZWbMMAgEMKrgB/4WwBI2xAgBEAAA=') format('truetype'); } /* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */ /* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */ @@ -17,7 +17,7 @@ @media screen and (-webkit-min-device-pixel-ratio:0) { @font-face { font-family: 'fontello'; - src: url('../font/fontello.svg?81418204#fontello') format('svg'); + src: url('../font/fontello.svg?91804628#fontello') format('svg'); } } */ @@ -52,10 +52,12 @@ /* Uncomment for 3D effect */ /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */ } -.icon-picture:before { content: '\e800'; } /* '' */ -.icon-off:before { content: '\e801'; } /* '' */ -.icon-eye:before { content: '\e802'; } /* '' */ -.icon-cancel:before { content: '\e803'; } /* '' */ -.icon-cog:before { content: '\e804'; } /* '' */ +.icon-cog:before { content: '\e800'; } /* '' */ +.icon-picture:before { content: '\e801'; } /* '' */ +.icon-off:before { content: '\e802'; } /* '' */ +.icon-home:before { content: '\e803'; } /* '' */ .icon-link-ext:before { content: '\f08e'; } /* '' */ -.icon-doc-text:before { content: '\f0f6'; } /* '' */ \ No newline at end of file +.icon-resize-full-alt:before { content: '\f0b2'; } /* '' */ +.icon-doc-text:before { content: '\f0f6'; } /* '' */ +.icon-folder-empty:before { content: '\f114'; } /* '' */ +.icon-folder-open-empty:before { content: '\f115'; } /* '' */ \ No newline at end of file diff --git a/system/author/css/fontello/css/fontello-ie7-codes.css b/system/author/css/fontello/css/fontello-ie7-codes.css index fbaa5fc..a8de47a 100644 --- a/system/author/css/fontello/css/fontello-ie7-codes.css +++ b/system/author/css/fontello/css/fontello-ie7-codes.css @@ -1,8 +1,10 @@ -.icon-picture { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } -.icon-off { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } -.icon-eye { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } -.icon-cancel { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } -.icon-cog { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-cog { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-picture { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-off { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-home { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } .icon-link-ext { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } -.icon-doc-text { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } \ No newline at end of file +.icon-resize-full-alt { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-doc-text { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-folder-empty { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-folder-open-empty { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } \ No newline at end of file diff --git a/system/author/css/fontello/css/fontello-ie7.css b/system/author/css/fontello/css/fontello-ie7.css index 0dfa2dd..7e8782e 100644 --- a/system/author/css/fontello/css/fontello-ie7.css +++ b/system/author/css/fontello/css/fontello-ie7.css @@ -10,10 +10,12 @@ /* font-size: 120%; */ } -.icon-picture { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } -.icon-off { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } -.icon-eye { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } -.icon-cancel { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } -.icon-cog { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-cog { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-picture { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-off { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-home { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } .icon-link-ext { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } -.icon-doc-text { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } \ No newline at end of file +.icon-resize-full-alt { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-doc-text { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-folder-empty { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-folder-open-empty { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } \ No newline at end of file diff --git a/system/author/css/fontello/css/fontello.css b/system/author/css/fontello/css/fontello.css index 200733f..8e91c59 100644 --- a/system/author/css/fontello/css/fontello.css +++ b/system/author/css/fontello/css/fontello.css @@ -1,11 +1,11 @@ @font-face { font-family: 'fontello'; - src: url('../font/fontello.eot?88351620'); - src: url('../font/fontello.eot?88351620#iefix') format('embedded-opentype'), - url('../font/fontello.woff2?88351620') format('woff2'), - url('../font/fontello.woff?88351620') format('woff'), - url('../font/fontello.ttf?88351620') format('truetype'), - url('../font/fontello.svg?88351620#fontello') format('svg'); + src: url('../font/fontello.eot?55717473'); + src: url('../font/fontello.eot?55717473#iefix') format('embedded-opentype'), + url('../font/fontello.woff2?55717473') format('woff2'), + url('../font/fontello.woff?55717473') format('woff'), + url('../font/fontello.ttf?55717473') format('truetype'), + url('../font/fontello.svg?55717473#fontello') format('svg'); font-weight: normal; font-style: normal; } @@ -15,7 +15,7 @@ @media screen and (-webkit-min-device-pixel-ratio:0) { @font-face { font-family: 'fontello'; - src: url('../font/fontello.svg?88351620#fontello') format('svg'); + src: url('../font/fontello.svg?55717473#fontello') format('svg'); } } */ @@ -55,10 +55,12 @@ /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */ } -.icon-picture:before { content: '\e800'; } /* '' */ -.icon-off:before { content: '\e801'; } /* '' */ -.icon-eye:before { content: '\e802'; } /* '' */ -.icon-cancel:before { content: '\e803'; } /* '' */ -.icon-cog:before { content: '\e804'; } /* '' */ +.icon-cog:before { content: '\e800'; } /* '' */ +.icon-picture:before { content: '\e801'; } /* '' */ +.icon-off:before { content: '\e802'; } /* '' */ +.icon-home:before { content: '\e803'; } /* '' */ .icon-link-ext:before { content: '\f08e'; } /* '' */ -.icon-doc-text:before { content: '\f0f6'; } /* '' */ \ No newline at end of file +.icon-resize-full-alt:before { content: '\f0b2'; } /* '' */ +.icon-doc-text:before { content: '\f0f6'; } /* '' */ +.icon-folder-empty:before { content: '\f114'; } /* '' */ +.icon-folder-open-empty:before { content: '\f115'; } /* '' */ \ No newline at end of file diff --git a/system/author/css/fontello/demo.html b/system/author/css/fontello/demo.html index 7d42f88..d321c8a 100644 --- a/system/author/css/fontello/demo.html +++ b/system/author/css/fontello/demo.html @@ -229,11 +229,11 @@ body { } @font-face { font-family: 'fontello'; - src: url('./font/fontello.eot?8909408'); - src: url('./font/fontello.eot?8909408#iefix') format('embedded-opentype'), - url('./font/fontello.woff?8909408') format('woff'), - url('./font/fontello.ttf?8909408') format('truetype'), - url('./font/fontello.svg?8909408#fontello') format('svg'); + src: url('./font/fontello.eot?16979120'); + src: url('./font/fontello.eot?16979120#iefix') format('embedded-opentype'), + url('./font/fontello.woff?16979120') format('woff'), + url('./font/fontello.ttf?16979120') format('truetype'), + url('./font/fontello.svg?16979120#fontello') format('svg'); font-weight: normal; font-style: normal; } @@ -298,15 +298,19 @@ body {
-
icon-picture0xe800
-
icon-off0xe801
-
icon-eye0xe802
-
icon-cancel0xe803
+
icon-cog0xe800
+
icon-picture0xe801
+
icon-off0xe802
+
icon-home0xe803
-
icon-cog0xe804
icon-link-ext0xf08e
+
icon-resize-full-alt0xf0b2
icon-doc-text0xf0f6
+
icon-folder-empty0xf114
+
+
+
icon-folder-open-empty0xf115
diff --git a/system/author/css/fontello/font/fontello.eot b/system/author/css/fontello/font/fontello.eot index cb48c5022b230ceb54cd4498aaefd38a300c3d2a..8b1514791983c53a0245c3b200643a2285a3c48c 100644 GIT binary patch delta 1708 zcmZWpZ){Ul6u;-*_rG1c*S@~jft1&^Ynj^^^sh1)gJ@Z`v8H3ww~8*YUIA$_ulV!&b{ya z&bjYgOw9ENa~lW=ZkQGlT=Ue$+3CLXWpnUVLSTRp^4e%VUHszLq1O?AP6#EV$4jR0 zdz~XhwWHn47RU1!rmqYk?j*!k98XUbk#9zfK13SNoyvaj^B(kNxL)p^$fU?KQ~YyR$8AEM`Do@Eya6|7o)%tbjF>STXBu}*+{`a5vTgAa!Hto^ zAQx|~Ok7JAAFfQ?g)C_+6Za!ao|Q@DidTFGDs9|tC{se}kJ)?lM=a7-vbnEgbEwVh zaXOkLV0Iut`#E613K$*~C`!&gyD8A>S2dnDIzZI~F%S=U0*$DAiq6Z@S1~7Duxpc?;<$0$DunVsZv}=p|T}3(~ zDW?V4RC|EF^Ygj`oFLU6L9m_2cy`ymMb~!0!NXps^Ua*3DAFHUuDSA|BtjXZtbfIZ znT@t$Epy6?LBl zWW`uUIi2bNBAY`Lb=|RSD6)n3sfvtN9duE2*k}+vTyF2OLpMCu;(e;eKxePp)mY2q zr%f^nCU^iU*X8V5VP}yu@RWA;wd2tOo`VtVxKN&q5Xu zg+zZtZ3xRLcvMY~`XdQ9mOFraTwSZEKccfCpHVwu_`qjWbko%7XS&&+ik7QG(Nrp0 ziKgI0G<6)#>n50b5br*tx`2*wwT6aNlzOeZD`ov=^~YR02CR}WRxZ`oAH>Q)KT6_6 zfg8c|%&5plB$?u=#mbGKARhJ;0R8~sf#2hH?e5#r^IUvOm%r?5(OqG8II&gX^$v(( z+=3GXk7fzk35hm;{Qn}8y})ZuaKKX<4No+p8#=r1tIq1NrW-aNJ!nLnH)9q8FINZgU!U6*=qEO63!qjg=Lk z_~&uJg8(8(AcF!n!bS_@V)4*u>DXk36|z}wqL9x>xkE>fbY)JKoRgWUL#H!c*<-m} zS2|ac#tNfdB{bNxh1^(XvMZA>mQJawpis;lU16+nu=Ln2oz|;0W}Z0Q{9&t2S2X7% F+uwNGSrY&N delta 956 zcmY*XTT4_?6kcoZa~n_AsN>j$WEy2e)DkZvX@sKPNW>&XjmT+c97kuIlTM*#sbF9i zLYr<3BuO9zzRg2Lmmd%oJs46+h!o7@yd(xXr*$+RI)`ts^{sF1wKi+-`KmikX~#YQ z&)zA?DdazxTbioAIdY(>8UPyspv4_@X&;tnP7;4kSa4qn+oUf#1K3$lx~)_51#eAF zwh<2isG85!uTk7gypF8m3k-JV=*iard>BAl>GHZf>2>W70a7|hcXm-g9^*5_9}~~* z3Wf(-_kY*dDe#s8wm``3lCOzY;!DKSgRTJ$b9Si26NcXF3VP?CWZS4YHDw>QP=9!O zasC-V>N4pUwLY)*tEPZz?OBRE#dG*3vW`bb605vP?}m2X1dk{U30t2?h7$@20twnb zt(&4oRw3Dx&A0$Zi7WKeG~z=R2xlV>vr zK#u(6CH6QqG(ag-WDArGiPbHD99t0I;Ru~i|HI?#8l-_8O5u2Qt;(1{1%a~@ATZ7Z z9;9ZBLk~4(fIU=)2@>l76h%A>h+->t+KeU03CVOOpA07%gZVxIU8+G zEOW?qDbr#tah8`kOG})hMV5pSTW+4CtioA{LY9@!G>_WveZFTOZ9ct>!b%2|hF#Ju>!{4^X4j6(T*n&gs2z$>j5jQ$0v67uCuU3#DM*&5YP^MX!K-T>3 z@Z~-)4|R5O@1R$5yL#Q;0C$IcO2FUSQ{){8E1r diff --git a/system/author/css/fontello/font/fontello.svg b/system/author/css/fontello/font/fontello.svg index e9617a8..d0dca8c 100644 --- a/system/author/css/fontello/font/fontello.svg +++ b/system/author/css/fontello/font/fontello.svg @@ -6,19 +6,23 @@ - + - + - + - - - + + + + + + + \ No newline at end of file diff --git a/system/author/css/fontello/font/fontello.ttf b/system/author/css/fontello/font/fontello.ttf index 2a98956034aa0360ac6d3344b818ef2f4fc3d536..f89ecab210de7d658fa77fd91e7c2d9412cc85f7 100644 GIT binary patch delta 1648 zcmZWpZ){Ul6hG(Q_rG1c*R}5rkkYQ(>*h8FZP)66F^FcS5*(8#n;+P+wHwgVx|P2{ z79%D~jDU?MCMqn>=m!mveld|~Vj^F_7-JmYQIo|_n+ar2+j?HNsge6~-|g>r&b>Xq zd(Jz*#O8V~2WJ9<&jR2806aIA9nF9G!_f1DKLKDccCrwVeyR!px|8gIbbcax@yg{P z!W{sP{KV*Vp7?sgkW-{fmevh-l5^#zyPgJ?%FE9(nJ|@(Xyqco2J?OFlkWJqp8o5Z)<%fSYp{0LdHR zJn-7D4q7!5eE|d*B;E-MsTUUb;+u;%79TA6s#SmmSVLYL{WFlfJ!=mgLHjtJB7y`m zouU#Y6@zTKxQ#j7bTKr}t?gBdtvu4R_$JW7M2WQCSe>*P79XrmItG@!tCJ3dCEw}< zwUn1$#nMasCeAQ`>L2_q_ATXNJ8bQ1-)glq`rNKM1-TOeS-*fBd5+@493%1RM_WTp zLES5gW;^O$Ne*>~e4!>QtgC1wWWr5h6(y?+t#|_CkuBIAi|@dQu^COn%RPo`{?feL zi@1lLbNib_naN`1eC51cCx!$j;uX)fhSxOZn4+DPu(fiZeCOv47rIfYEMs$Zug5BMbng@(?WgecUi_6in97SALb5t5+Z$Fz1`6!f$>-{u*sv>GgN`q zR56|tkpau0Ez9ajZ0dPj5;wM^Y$oCqu2*Wurm(de!?J0}Hn75^WeX<4vP3GaU073Q z8g4WbVJlISDf?!;H8Z<&>(+qY;jLdWRZTx&164CuNKS`7K*-^eWy5f-n3`(i1G=V? z)j&g*T@Kbv9-fBA6_;W9?9B&spGnS*4W8Owu0Cv1Nia|Wl>SuG>xrEu&V&x==xd|e zLQ%jGyIhzEBfvOk2k9>OA>fSf3w6_o+85BG$1FKmQ)^K=C7_TS{$zBfJQPhPqorsPPeqd_@pU7B0i&7TezUwlj(D{~ zhGdjA+HX&iik~V`Xrq922vg>gef`ap8SE!Xf-DImRL`8rd_++hRV`(1ganCr5D>*f zAfmXh!Lzq-*N(@!w{-?*{2L5UxFH)#uR4sYC~+h4rha%j%JF# zrcykYP79N{Y)Z)-Iex4&b-Li5N=+X*o9axT$YeT4GX-TlH`ZAogEO7WjHjkLQ`vms ajJ^hP`PA`MrntvtiAU|;TgteW9e)GOC delta 927 zcmY*X+e?#S7=NDk{Z8}K{M0#%Nam7BsAW1QnS`QQQAml32O`%t=X7&lw!+L(p&$yx zS|8rs2_MD@*eLxR{??0UFAshlw^?>K9PP|6Ag{%?? z-55A%q?Z8r1c0YTY8@YWc5?rJxGK+&F2X}CtNxhj*fL7_+e}j@s0?4DB|_V zw?rG^Rl@mU&zOz}vsJ<=Gd|)8`NB#QmrgG}F zZ}s73AHI!s;EC+i25&cppqID9v)CLS=+gly8(;`{#;YKkMGNa7zzO0NI<$0BNX?`+ z41+w_^)huxam`$tsu|S^Ac6!kK`C~WZN(ayoSU7=^kp=F9Bbg!j-+5VB}xQpxFb{u zsf`^0IZ+|L$4L%g{N+h@3-Z7LHPG7FtTHCB90blzfxtKuc$fw=4#PB+0S;3iCP=Iw zP!zEP5XEi~Q9M^ zDoetoy|m2fs&iMMP-Nrtol}lSpC37CHA( zZ9@f}sI;kAf2XOwIq;ax2Ak`f?u_2Mhi53)cT&|fwW>v1E-09e$EORN)~Ps~yKObE z5sV;D@(ZAXlsKj^tSq;nY{4=M)>*KK&0udly^vmrV{b+g#EbvI^a62-MSd3(OR_-9 zGKgj7Gn1^oesbtiZo?l?dD484m5B#8cdfB)1Y=rG&2hzy2}cZr_ZZuzpAq`&yVk6L zarlW{IL;c_2Y!XHIYCL>&rx}!f($tdD58Wi-Gv2YJ?M>I8};+ZzySB(@Jn9Lh}R$D j-bg?R1xJP}{bNzZ7x7j`$$=Q=ImIA-)nK9`Z&UpT!=d4{ diff --git a/system/author/css/fontello/font/fontello.woff b/system/author/css/fontello/font/fontello.woff index 63d34c0a2a351172c1e1ee726d704c4cfc015b45..b060eb8f7bd57011d81c772958491d4373b9c1a5 100644 GIT binary patch delta 2535 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 ivyM za!5(e!g6R1A*6boO8D9Hbv?iPy584)yz6uN&9$N~UBBozQ8 z=Oj{<8PK>6hGIv>!3{lH#$C+O3iASZ?RUFlrN z0oM9kl~pW9jct@jGIqWvqYeY4n-tRjCOfxlMtF(F;e63>JN{o+~4?~1;{0;|BLTuk&W#K=b5gf zn7N=KIMOC~>cXSkapyNxrRqgs`z1xH4S_RpD!Iryo=^p@4TKIY!gN* z;{&4A<8D2}SSI!qVq`6wAP6yOx|aNc7QS>f)m1~BxWMXlg(q4S1wVWr?-jWaQ$YUU zuPI;cd6~gqp)n}TAHSG!G%D46X1~3r_OA59`j*n}v&Qz~I+DUH%R|jTiMnD*)^bCf ztRuP+7bh$ln~lPWi3G>eZ6;UZLS__Pp6RO|dHSa#jT;ndQ}0t*`takQ-U&@t8XTj; zo$>>$>NPdUt<`KZBVFVbRTCfa;q+j(4DWT8NJ-n*&+89n*08yQ`A}mX?UYn(?D@ME zy_8R@8{f>~W0)7L9L7a*c$TBeUlSUFPcLS^Nc1k9aW!0!$~(y;9;$b7dNHxqSM!$B z+m+H)5*X8!#+QhT^k;HD&uyR)ey{xobP}B7X*E+cF4Wf z|LgYan0|z0#wKZL?!l>=ks>?09#dtzzt7){3a#<bEowHuw`k2Eq{QO6YzQrS9kV+E<%y(t(IeT}K&%oXwSyFC$XEs-DJJC0NP zl!d5g7ndfvWiZ{nh19*<(}oj`n^>id9M=TD0oyPra}d5x`=9&vD72ml5a~FxJgfQc za>CjoZ}rj2V1K#Eo*(>pt=628$I1!jo=2HC-%weP%lT}h*)F$@xrAY~)Uas}zrv#c zxpb~b&r|_WjJ5~Zkc#=c&KK5rTQzQ_hA_#=DnZ<~k~G>kcI}CwL8CRp{eYvc{g0`* zTNlxkIxLBv@tU7-+g;e3SyZ_uZqfAwRT&uX967sQa)VNG00tv`sw^e`ZBdAp7g9&3 zum<8S@B>Ln#_ff+dQJWaf}`4Jav^>)u{Fi2PccS^oZ6o~AzzpN``jMU^<<0g1)+|^ zkw(`xePxl^xVG8y?!NtZZ{i4{TA6>xE@#mZ*|KQEKk zl8F|s-DPSf4e@Tj>S|%c-Om%uWF1Fftjvlmj1fFA#^8(!H@DFg%c@yw>{E1_w#K*m z5-%JwN!}-EG2B{Pa~0l^hw(R$UhriT9H>^KQep*+`8$kC z*io`(nHysbnkeRsrnoel<23Jl%|^}}oLl1}}ZHM>U~j@vU$1BVUw z`^6C5{_^6VWh1($3D|koV}+Odgrk^*I?G;}W26m_kSwx2pwLKJ^irvARxVzi%T-b=nggX!W{C zIR|%yB4XKELOAguYyhd&n^ZifG@^II_hWx^JBndwlyJ5>wal|C44E{NKQgvzUbo@H!x*#IZE~O z@1R%u^rMXcTUqbillk(5K7nAnhur5cEfj2|a1U1iga$~RPS=L3m_mR%L!w&X`ersa zH5CX1*pO*KV<+yIg5ACV;3-4wJGk7zhy?hM(~w9ZQ=wPTE1=)`p~b3h!!sccZ(YQr zQ3#Qy>(t?)^QOeW%lHBr(Xh=}CijV&U2f9$E)@mU$Z$zSGG_6_XoLb!VVJsNyr-tq c)4jbcu(|xesli@8!t53SJ_eqdo+=adFJ~Bq?f?J) diff --git a/system/author/css/fontello/font/fontello.woff2 b/system/author/css/fontello/font/fontello.woff2 index 255cbd3515e73bb8b1a659b655754a15a3b58bad..c942abe6a148d77c08fd08c7f5ce8b4d05d66410 100644 GIT binary patch literal 3832 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 uId$AO(d@2Vx9?1{*FIBN29Ulk$-L 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 G27|NXV|X?I diff --git a/system/author/css/style.css b/system/author/css/style.css index d1e10fe..272df47 100644 --- a/system/author/css/style.css +++ b/system/author/css/style.css @@ -9,7 +9,13 @@ a, a:link, a:visited, a:focus, a:hover, a:active, button, .button, input, .contr -ms-transition: all 0.2s ease; transition: all 0.2s ease; } - +.navi-item a, .navi-item.folder a i, .navi-item.file a i{ + -webkit-transition: all 0.1s ease; + -moz-transition: all 0.1s ease; + -o-transition: all 0.1s ease; + -ms-transition: all 0.1s ease; + transition: all 0.1s ease; +} /******************** * COMMONS * ********************/ @@ -153,7 +159,7 @@ aside.sidebar{ } ul.menu-list{ list-style: none; - margin:5px 0 30px; + margin: 5px 0 30px; padding:0; } li.menu-item{ @@ -176,6 +182,75 @@ li.menu-item{ background: #e0474c; } +/******************** +* CONTENT-NAVI * +********************/ +.infoline{ + display: none; +} +.content-navi{ + background: transparent; + padding: 0; + position: relative; + text-align: left; +} +.navi-list{ + padding: 0px; +} +.navi-item{ + list-style: none; + padding: 0px; + position: relative; +} +.navi-item i.icon-doc-text, .navi-item i.icon-folder-empty, .navi-item i.icon-home{ + display: inline-block; + position: absolute; + top: 0px; + background: #fff; + color: #ccc; + padding: 7px 2px 7px; +} +.navi-item i.icon-resize-full-alt{ + position: absolute; + right: 5px; + top: 7px; + color: #fff; +} +.navi-item a{ + display: block; + padding: 7px 0; + width: 100%; + margin-bottom: 2px; + box-shadow: 0 0 1px #ddd; + text-decoration: none; + color: #444; + background: #fff; +} +.navi-item.folder a{ + font-weight: 700; +} +.navi-item.file a{ + font-weight: 300; +} +.navi-item a:hover, .navi-item a:hover i{ + background: #66b0a3; + color: #f9f8f6; +} +.navi-item a.active, .navi-item a.active i{ + background: #e0474c; + color: #f9f8f6; +} +[class^="level-"]{ + padding-left: 80px; + display: block; + box-sizing: border-box; +} +span.level-1{ padding-left: 30px; } +span.level-2{ padding-left: 40px; } +span.level-3{ padding-left: 50px; } +span.level-4{ padding-left: 60px; } +span.level-5{ padding-left: 70px; } + /******************** * CONTENT * ********************/ @@ -275,6 +350,7 @@ h1 .version-number{ } .modal.show{ display: block; + z-index: 99999; } .modalInner{ position: relative; @@ -285,6 +361,12 @@ h1 .version-number{ border-radius: 3px; box-shadow: 0px 0px 10px rgba(0,0,0,0.2); } +.modalInner h2{ + margin-top: 0px; +} +.modalInner.wide{ + max-width: 500px; +} .closeModal{ position: absolute; top: 0px; @@ -1055,8 +1137,6 @@ label .help, .label .help{ text-decoration: underline; } - - /******************** * EDITOR * ********************/ @@ -1138,7 +1218,6 @@ label .help, .label .help{ color: #444; cursor: default; } - .buttonset .secondary{ display: inline-block; float: right; @@ -1206,10 +1285,13 @@ label .help, .label .help{ .editor button{ min-width: 150px; font-size: 0.9em; - } + } + + /* load design editor button */ .editor button.load:after, .editor button.success:after, - .editor button.fail:after{ + .editor button.fail:after + { position: absolute; right: 8px; top: 6px; @@ -1238,6 +1320,23 @@ label .help, .label .help{ .editor button.fail:after{ background: #e0474c; } + + /* load design navi buttons */ + .navi-item.load:after + { + position: absolute; + right: 6px; + top: 6px; + width: 6px; + height: 6px; + border-radius: 50%; + content: ''; + border: 8px solid #eee; /* background */ + border-top: 8px solid #ccc; /* moving border */ + background: #ccc; /* dot in the middle */ + animation: spin 2s linear infinite; + } + .buttonset .secondary--block{ display: inline-block; } @@ -1256,7 +1355,36 @@ label .help, .label .help{ display: inline-block; } } -@media only screen and (min-width: 800px) { +@media only screen and (min-width: 900px) { + .main{ + margin: 30px auto; + padding: 20px 30px; + } + .infoline{ + min-height: 30px; + width: 100%; + display: block; + color: #bbb; + font-size: 0.9em; + } + .infoline .help{ + float: right; + text-align: center; + width: 20px; + height: 20px; + line-height: 20px; + border-radius: 50%; + background: #fff; + cursor: pointer; + } + span.level-1{ padding-left: 5px; } + span.level-2{ padding-left: 20px; } + span.level-3{ padding-left: 35px; } + span.level-4{ padding-left: 50px; } + span.level-5{ padding-left: 65px; } + .navi-item i.icon-doc-text, .navi-item i.icon-folder-empty, .navi-item i.icon-home{ + left: -27px; + } fieldset.plugin{ width: 49.5%; } @@ -1268,15 +1396,9 @@ label .help, .label .help{ width: 33.3%; display: inline-block; } - .navi-items span{ - display: inline; - } .header-navi ul{ font-size: 1em; } - .main{ - margin: 30px auto; - } article{ width: 80%; display: inline-block; @@ -1290,8 +1412,8 @@ label .help, .label .help{ } .sidebar-menu, .sidebar-menu--content{ max-height: 2000px; - padding: 0px 20px 0 0; - overflow: hidden; + padding: 0 0 0 0; + overflow: visible; box-sizing: border-box; font-size: 1em; text-align: left; @@ -1306,10 +1428,13 @@ label .help, .label .help{ display: none; width: 0px; height: 0px; - } + } ul.menu-list{ margin: 5px 0 0 20px; } + .navi-items span{ + display: inline; + } .level-1 > ul.menu-list{ margin-bottom: 30px; } diff --git a/system/author/content/content.twig b/system/author/editor/editor.twig similarity index 98% rename from system/author/content/content.twig rename to system/author/editor/editor.twig index ecbf336..065df0d 100644 --- a/system/author/content/content.twig +++ b/system/author/editor/editor.twig @@ -1,4 +1,4 @@ -{% extends 'layouts/layoutContent.twig' %} +{% extends 'layouts/layoutEditor.twig' %} {% block title %}Content{% endblock %} {% block content %} diff --git a/system/author/js/sortable.min.js b/system/author/js/sortable.min.js new file mode 100644 index 0000000..938811f --- /dev/null +++ b/system/author/js/sortable.min.js @@ -0,0 +1,2 @@ +/*! Sortable 1.7.0 - MIT | git://github.com/rubaxa/Sortable.git */ +!function(a){"use strict";"function"==typeof define&&define.amd?define(a):"undefined"!=typeof module&&"undefined"!=typeof module.exports?module.exports=a():window.Sortable=a()}(function(){"use strict";function a(b,c){if(!b||!b.nodeType||1!==b.nodeType)throw"Sortable: `el` must be HTMLElement, and not "+{}.toString.call(b);this.el=b,this.options=c=t({},c),b[V]=this;var d={group:Math.random(),sort:!0,disabled:!1,store:null,handle:null,scroll:!0,scrollSensitivity:30,scrollSpeed:10,draggable:/[uo]l/i.test(b.nodeName)?"li":">*",ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,setData:function(a,b){a.setData("Text",b.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:a.supportPointer!==!1};for(var e in d)!(e in c)&&(c[e]=d[e]);ka(c);for(var g in this)"_"===g.charAt(0)&&"function"==typeof this[g]&&(this[g]=this[g].bind(this));this.nativeDraggable=!c.forceFallback&&ca,f(b,"mousedown",this._onTapStart),f(b,"touchstart",this._onTapStart),c.supportPointer&&f(b,"pointerdown",this._onTapStart),this.nativeDraggable&&(f(b,"dragover",this),f(b,"dragenter",this)),ia.push(this._onDragOver),c.store&&this.sort(c.store.get(this))}function b(a,b){"clone"!==a.lastPullMode&&(b=!0),B&&B.state!==b&&(i(B,"display",b?"none":""),b||B.state&&(a.options.group.revertClone?(C.insertBefore(B,D),a._animate(y,B)):C.insertBefore(B,y)),B.state=b)}function c(a,b,c){if(a){c=c||X;do if(">*"===b&&a.parentNode===c||r(a,b))return a;while(a=d(a))}return null}function d(a){var b=a.host;return b&&b.nodeType?b:a.parentNode}function e(a){a.dataTransfer&&(a.dataTransfer.dropEffect="move"),a.preventDefault()}function f(a,b,c){a.addEventListener(b,c,aa)}function g(a,b,c){a.removeEventListener(b,c,aa)}function h(a,b,c){if(a)if(a.classList)a.classList[c?"add":"remove"](b);else{var d=(" "+a.className+" ").replace(T," ").replace(" "+b+" "," ");a.className=(d+(c?" "+b:"")).replace(T," ")}}function i(a,b,c){var d=a&&a.style;if(d){if(void 0===c)return X.defaultView&&X.defaultView.getComputedStyle?c=X.defaultView.getComputedStyle(a,""):a.currentStyle&&(c=a.currentStyle),void 0===b?c:c[b];b in d||(b="-webkit-"+b),d[b]=c+("string"==typeof c?"":"px")}}function j(a,b,c){if(a){var d=a.getElementsByTagName(b),e=0,f=d.length;if(c)for(;e5||b.clientX-(d.left+d.width)>5}function p(a){for(var b=a.tagName+a.className+a.src+a.href+a.textContent,c=b.length,d=0;c--;)d+=b.charCodeAt(c);return d.toString(36)}function q(a,b){var c=0;if(!a||!a.parentNode)return-1;for(;a&&(a=a.previousElementSibling);)"TEMPLATE"===a.nodeName.toUpperCase()||">*"!==b&&!r(a,b)||c++;return c}function r(a,b){if(a){b=b.split(".");var c=b.shift().toUpperCase(),d=new RegExp("\\s("+b.join("|")+")(?=\\s)","g");return!(""!==c&&a.nodeName.toUpperCase()!=c||b.length&&((" "+a.className+" ").match(d)||[]).length!=b.length)}return!1}function s(a,b){var c,d;return function(){void 0===c&&(c=arguments,d=this,Z(function(){1===c.length?a.call(d,c[0]):a.apply(d,c),c=void 0},b))}}function t(a,b){if(a&&b)for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return a}function u(a){return _&&_.dom?_.dom(a).cloneNode(!0):$?$(a).clone(!0)[0]:a.cloneNode(!0)}function v(a){for(var b=a.getElementsByTagName("input"),c=b.length;c--;){var d=b[c];d.checked&&ha.push(d)}}function w(a){return Z(a,0)}function x(a){return clearTimeout(a)}if("undefined"==typeof window||!window.document)return function(){throw new Error("Sortable.js requires a window with a document")};var y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S={},T=/\s+/g,U=/left|right|inline/,V="Sortable"+(new Date).getTime(),W=window,X=W.document,Y=W.parseInt,Z=W.setTimeout,$=W.jQuery||W.Zepto,_=W.Polymer,aa=!1,ba=!1,ca="draggable"in X.createElement("div"),da=function(a){return!navigator.userAgent.match(/(?:Trident.*rv[ :]?11\.|msie)/i)&&(a=X.createElement("x"),a.style.cssText="pointer-events:auto","auto"===a.style.pointerEvents)}(),ea=!1,fa=Math.abs,ga=Math.min,ha=[],ia=[],ja=s(function(a,b,c){if(c&&b.scroll){var d,e,f,g,h,i,j=c[V],k=b.scrollSensitivity,l=b.scrollSpeed,m=a.clientX,n=a.clientY,o=window.innerWidth,p=window.innerHeight;if(G!==c&&(F=b.scroll,G=c,H=b.scrollFn,F===!0)){F=c;do if(F.offsetWidth-1:e==a)}}var c={},d=a.group;d&&"object"==typeof d||(d={name:d}),c.name=d.name,c.checkPull=b(d.pull,!0),c.checkPut=b(d.put),c.revertClone=d.revertClone,a.group=c};try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:function(){ba=!1,aa={capture:!1,passive:ba}}}))}catch(a){}return a.prototype={constructor:a,_onTapStart:function(a){var b,d=this,e=this.el,f=this.options,g=f.preventOnFilter,h=a.type,i=a.touches&&a.touches[0],j=(i||a).target,l=a.target.shadowRoot&&a.path&&a.path[0]||j,m=f.filter;if(v(e),!y&&!(/mousedown|pointerdown/.test(h)&&0!==a.button||f.disabled)&&!l.isContentEditable&&(j=c(j,f.draggable,e),j&&E!==j)){if(b=q(j,f.draggable),"function"==typeof m){if(m.call(this,a,j,this))return k(d,l,"filter",j,e,e,b),void(g&&a.preventDefault())}else if(m&&(m=m.split(",").some(function(a){if(a=c(l,a.trim(),e))return k(d,a,"filter",j,e,e,b),!0})))return void(g&&a.preventDefault());f.handle&&!c(l,f.handle,e)||this._prepareDragStart(a,i,j,b)}},_prepareDragStart:function(a,b,c,d){var e,g=this,i=g.el,l=g.options,n=i.ownerDocument;c&&!y&&c.parentNode===i&&(P=a,C=i,y=c,z=y.parentNode,D=y.nextSibling,E=c,N=l.group,L=d,this._lastX=(b||a).clientX,this._lastY=(b||a).clientY,y.style["will-change"]="all",e=function(){g._disableDelayedDrag(),y.draggable=g.nativeDraggable,h(y,l.chosenClass,!0),g._triggerDragStart(a,b),k(g,C,"choose",y,C,C,L)},l.ignore.split(",").forEach(function(a){j(y,a.trim(),m)}),f(n,"mouseup",g._onDrop),f(n,"touchend",g._onDrop),f(n,"touchcancel",g._onDrop),f(n,"selectstart",g),l.supportPointer&&f(n,"pointercancel",g._onDrop),l.delay?(f(n,"mouseup",g._disableDelayedDrag),f(n,"touchend",g._disableDelayedDrag),f(n,"touchcancel",g._disableDelayedDrag),f(n,"mousemove",g._disableDelayedDrag),f(n,"touchmove",g._disableDelayedDrag),l.supportPointer&&f(n,"pointermove",g._disableDelayedDrag),g._dragStartTimer=Z(e,l.delay)):e())},_disableDelayedDrag:function(){var a=this.el.ownerDocument;clearTimeout(this._dragStartTimer),g(a,"mouseup",this._disableDelayedDrag),g(a,"touchend",this._disableDelayedDrag),g(a,"touchcancel",this._disableDelayedDrag),g(a,"mousemove",this._disableDelayedDrag),g(a,"touchmove",this._disableDelayedDrag),g(a,"pointermove",this._disableDelayedDrag)},_triggerDragStart:function(a,b){b=b||("touch"==a.pointerType?a:null),b?(P={target:y,clientX:b.clientX,clientY:b.clientY},this._onDragStart(P,"touch")):this.nativeDraggable?(f(y,"dragend",this),f(C,"dragstart",this._onDragStart)):this._onDragStart(P,!0);try{X.selection?w(function(){X.selection.empty()}):window.getSelection().removeAllRanges()}catch(a){}},_dragStarted:function(){if(C&&y){var b=this.options;h(y,b.ghostClass,!0),h(y,b.dragClass,!1),a.active=this,k(this,C,"start",y,C,C,L)}else this._nulling()},_emulateDragOver:function(){if(Q){if(this._lastX===Q.clientX&&this._lastY===Q.clientY)return;this._lastX=Q.clientX,this._lastY=Q.clientY,da||i(A,"display","none");var a=X.elementFromPoint(Q.clientX,Q.clientY),b=a,c=ia.length;if(a&&a.shadowRoot&&(a=a.shadowRoot.elementFromPoint(Q.clientX,Q.clientY),b=a),b)do{if(b[V]){for(;c--;)ia[c]({clientX:Q.clientX,clientY:Q.clientY,target:a,rootEl:b});break}a=b}while(b=b.parentNode);da||i(A,"display","")}},_onTouchMove:function(b){if(P){var c=this.options,d=c.fallbackTolerance,e=c.fallbackOffset,f=b.touches?b.touches[0]:b,g=f.clientX-P.clientX+e.x,h=f.clientY-P.clientY+e.y,j=b.touches?"translate3d("+g+"px,"+h+"px,0)":"translate("+g+"px,"+h+"px)";if(!a.active){if(d&&ga(fa(f.clientX-this._lastX),fa(f.clientY-this._lastY))y.offsetWidth,x=e.offsetHeight>y.offsetHeight,E=(v?(d.clientX-g.left)/t:(d.clientY-g.top)/u)>.5,F=e.nextElementSibling,G=!1;if(v){var H=y.offsetTop,L=e.offsetTop;G=H===L?e.previousElementSibling===y&&!w||E&&w:e.previousElementSibling===y||y.previousElementSibling===e?(d.clientY-g.top)/u>.5:L>H}else r||(G=F!==y&&!x||E&&x);var M=l(C,j,y,f,e,g,d,G);M!==!1&&(1!==M&&M!==-1||(G=1===M),ea=!0,Z(n,30),b(p,q),y.contains(j)||(G&&!F?j.appendChild(y):e.parentNode.insertBefore(y,G?F:e)),z=y.parentNode,this._animate(f,y),this._animate(g,e))}}},_animate:function(a,b){var c=this.options.animation;if(c){var d=b.getBoundingClientRect();1===a.nodeType&&(a=a.getBoundingClientRect()),i(b,"transition","none"),i(b,"transform","translate3d("+(a.left-d.left)+"px,"+(a.top-d.top)+"px,0)"),b.offsetWidth,i(b,"transition","all "+c+"ms"),i(b,"transform","translate3d(0,0,0)"),clearTimeout(b.animated),b.animated=Z(function(){i(b,"transition",""),i(b,"transform",""),b.animated=!1},c)}},_offUpEvents:function(){var a=this.el.ownerDocument;g(X,"touchmove",this._onTouchMove),g(X,"pointermove",this._onTouchMove),g(a,"mouseup",this._onDrop),g(a,"touchend",this._onDrop),g(a,"pointerup",this._onDrop),g(a,"touchcancel",this._onDrop),g(a,"pointercancel",this._onDrop),g(a,"selectstart",this)},_onDrop:function(b){var c=this.el,d=this.options;clearInterval(this._loopId),clearInterval(S.pid),clearTimeout(this._dragStartTimer),x(this._cloneId),x(this._dragStartId),g(X,"mouseover",this),g(X,"mousemove",this._onTouchMove),this.nativeDraggable&&(g(X,"drop",this),g(c,"dragstart",this._onDragStart)),this._offUpEvents(),b&&(R&&(b.preventDefault(),!d.dropBubble&&b.stopPropagation()),A&&A.parentNode&&A.parentNode.removeChild(A),C!==z&&"clone"===a.active.lastPullMode||B&&B.parentNode&&B.parentNode.removeChild(B),y&&(this.nativeDraggable&&g(y,"dragend",this),m(y),y.style["will-change"]="",h(y,this.options.ghostClass,!1),h(y,this.options.chosenClass,!1),k(this,C,"unchoose",y,z,C,L),C!==z?(M=q(y,d.draggable),M>=0&&(k(null,z,"add",y,z,C,L,M),k(this,C,"remove",y,z,C,L,M),k(null,z,"sort",y,z,C,L,M),k(this,C,"sort",y,z,C,L,M))):y.nextSibling!==D&&(M=q(y,d.draggable),M>=0&&(k(this,C,"update",y,z,C,L,M),k(this,C,"sort",y,z,C,L,M))),a.active&&(null!=M&&M!==-1||(M=L),k(this,C,"end",y,z,C,L,M),this.save()))),this._nulling()},_nulling:function(){C=y=z=A=D=B=E=F=G=P=Q=R=M=I=J=O=N=a.active=null,ha.forEach(function(a){a.checked=!0}),ha.length=0},handleEvent:function(a){switch(a.type){case"drop":case"dragend":this._onDrop(a);break;case"dragover":case"dragenter":y&&(this._onDragOver(a),e(a));break;case"mouseover":this._onDrop(a);break;case"selectstart":a.preventDefault()}},toArray:function(){for(var a,b=[],d=this.el.children,e=0,f=d.length,g=this.options;ee-1?e:n[t]},getComponent:function(){return this.$slots["default"][0].componentInstance},resetTransitionData:function(t){if(this.noTransitionOnDrag&&this.transitionMode){var n=this.getChildrenNodes();n[t].data=null;var e=this.getComponent();e.children=[],e.kept=void 0}},onDragStart:function(t){this.context=this.getUnderlyingVm(t.item),t.item._underlying_vm_=this.clone(this.context.element),d=t.item},onDragAdd:function(t){var n=t.item._underlying_vm_;if(void 0!==n){e(t.item);var o=this.getVmIndex(t.newIndex);this.spliceList(o,0,n),this.computeIndexes();var i={element:n,newIndex:o};this.emitChanges({added:i})}},onDragRemove:function(t){if(o(this.rootContainer,t.item,t.oldIndex),this.isCloning)return void e(t.clone);var n=this.context.index;this.spliceList(n,1);var i={element:this.context.element,oldIndex:n};this.resetTransitionData(n),this.emitChanges({removed:i})},onDragUpdate:function(t){e(t.item),o(t.from,t.item,t.oldIndex);var n=this.context.index,i=this.getVmIndex(t.newIndex);this.updatePosition(n,i);var r={element:this.context.element,oldIndex:n,newIndex:i};this.emitChanges({moved:r})},computeFutureIndex:function(t,n){if(!t.element)return 0;var e=[].concat(_toConsumableArray(n.to.children)).filter(function(t){return"none"!==t.style.display}),o=e.indexOf(n.related),i=t.component.getVmIndex(o),r=e.indexOf(d)!=-1;return r||!n.willInsertAfter?i:i+1},onDragMove:function(t,n){var e=this.move;if(!e||!this.realList)return!0;var o=this.getRelatedContextFromMoveEvent(t),i=this.context,r=this.computeFutureIndex(o,t);return _extends(i,{futureIndex:r}),_extends(t,{relatedContext:o,draggedContext:i}),e(t,n)},onDragEnd:function(t){this.computeIndexes(),d=null}}};return h}if(Array.from||(Array.from=function(t){return[].slice.call(t)}),(typeof exports == "object")){var e=require("sortablejs");module.exports=n(e)}else if("function"==typeof define&&define.amd)define(["sortablejs"],function(t){return n(t)});else if(window&&window.Vue&&window.Sortable){var o=n(window.Sortable);Vue.component("draggable",o)}}(); \ No newline at end of file diff --git a/system/author/layouts/layoutContent.twig b/system/author/layouts/layoutEditor.twig similarity index 86% rename from system/author/layouts/layoutContent.twig rename to system/author/layouts/layoutEditor.twig index 1826df0..2f1f945 100644 --- a/system/author/layouts/layoutContent.twig +++ b/system/author/layouts/layoutEditor.twig @@ -26,8 +26,8 @@ {% include 'partials/flash.twig' %}
-
+ + + \ No newline at end of file diff --git a/system/author/partials/contentNavi.twig b/system/author/partials/contentNavi.twig deleted file mode 100644 index 70ce88c..0000000 --- a/system/author/partials/contentNavi.twig +++ /dev/null @@ -1,41 +0,0 @@ -{% macro loop_over(navigation, base_url) %} - - {% import _self as macros %} - - {% for element in navigation %} - - {% set depth = element.keyPathArray|length %} - - {% if element.activeParent %} - - {% endfor %} -{% endmacro %} - -{% import _self as macros %} - - \ No newline at end of file diff --git a/system/author/partials/editorNavi.twig b/system/author/partials/editorNavi.twig new file mode 100644 index 0000000..dccc9ab --- /dev/null +++ b/system/author/partials/editorNavi.twig @@ -0,0 +1,42 @@ + + +{% verbatim %} + +{% endverbatim %} \ No newline at end of file diff --git a/system/author/partials/navi.twig b/system/author/partials/navi.twig index 0ad42b7..7c4b0b4 100644 --- a/system/author/partials/navi.twig +++ b/system/author/partials/navi.twig @@ -3,11 +3,11 @@ Typemill