#footer>row` * * * Each sub-structure has 2-5 properties: * * @var title (string) : title of the sub-section * @var entity (string) : type of entity (ex: page/lesson/etc; TODO: method of CMS_model?) * @var list (array) : list of entity id(s) * @var template (string) : template that is used to draw the listed pages' info * @var width (string) : class that relates to sub-structure's width * * NOTE: * designer parsing and rendering can be a quite expensive proccess * thus it is strongly recommented to use cached entities * * * Example structure: { "class" : "row", # container class "struct" : [ { # block 1 "title" : "", "entity" : "page", "list" : [2, 1, 3], # pages to be listed "template" : "list", # list page titles with link to the pages "width" : "col-md-4" }, { "template" : "null", # list nothing "width" : "col-md-3" }, { "entity" : "page", "list" : [4], # list content of page 4; "template" : "content", # set title to page-title "width" : "col-md-5" } TODO: (wish) ,{ "template": "struct", "struct" : [ { title, entity, list, template, width }, ... ] } ] } * * brainstormin: (TODO:) * use some document-describe stucture like the one on the pdfmake js-library * ----------------------------------------------------------------------------- */ /** check imported variables / data * ----------------------------------------------------------------------------- */ if (!isset($designer)) { // default designer (and first case-study) $designer = '{ "class" : "row", "struct" : [ { "title" : "Πληροφορίες", "entity" : "page", "list" : [2, 1, 3, 4], "template" : "list", "width" : "col-md-4 no-list-mark" }, { "entity" : "page", "list" : [6], "template" : "content", "width" : "col-md-3 no-list-mark" }, { "entity" : "page", "list" : [5], "template" : "content", "width" : "col-md-5 no-list-mark" } ] }'; } // $entity list shall be passed // entity link url shall be passed /** templating functions * ----------------------------------------------------------------------------- */ /** List template * --- -- -- - - - * * lists entity titles with links * in a `ul>li` html-structure * * @param $title * @param $list * @param $container */ function list_template($title, $list, $container, $entity) { $result = '