public function uninstall() { $footer = $this->getfooter(); $template = ttemplate::i(); $template->footer = str_replace($footer, '', $template->footer); $template->save(); }
public function gethtml() { $template = ttemplate::i(); $result = $template->getjavascript('/plugins/slides/slides.plugin.min.js'); $result .= '<div id="slides-holder"></div>'; return $result; }
public static function content($content) { $self = self::i(); $self->text = $content; $template = ttemplate::i(); return $template->request($self); }
/** * Lite Publisher * Copyright (C) 2010 - 2015 Vladimir Yushko http://litepublisher.ru/ http://litepublisher.com/ * Dual licensed under the MIT (mit.txt) * and GPL (gpl.txt) licenses. **/ function tcssmergerInstall($self) { $self->lock(); $self->items = array(); $section = 'default'; $self->add($section, '/js/prettyphoto/css/prettyPhoto.css'); $self->add($section, '/js/litepublisher/css/prettyphoto.dialog.min.css'); $self->add($section, '/js/litepublisher/css/filelist.min.css'); $self->add($section, '/js/litepublisher/css/table.min.css'); $self->add($section, '/js/litepublisher/css/button.min.css'); $self->add($section, '/js/litepublisher/css/form.inline.min.css'); //$self->add($section, '/js/litepublisher/css/hover.css'); $self->addtext($section, 'hidden', '.hidden{display:none}'); $section = 'admin'; $self->add($section, '/js/jquery/ui/redmond/jquery-ui.min.css'); $self->add($section, '/js/litepublisher/css/fileman.min.css'); $self->add($section, '/js/litepublisher/css/calendar.css'); $self->add($section, '/js/litepublisher/css/admin.views.min.css'); $self->unlock(); // add in comment because by default tthemeparser::i()->stylebefore is true $template = ttemplate::i(); $template->addtohead('<!--<link type="text/css" href="$site.files$template.cssmerger_default" rel="stylesheet" />-->'); $updater = tupdater::i(); $updater->onupdated = $self->save; }
public function getcontent($id, $sidebar) { if (litepublisher::$urlmap->is404) { return ''; } $result = ''; $a = array('$url' => urlencode(litepublisher::$site->url . litepublisher::$urlmap->url), '$title' => urlencode(ttemplate::i()->title)); $redirlink = litepublisher::$site->url . $this->redirlink . litepublisher::$site->q . strtr('url=$url&title=$title&id=', $a); $iconurl = litepublisher::$site->files . '/plugins/bookmarks/icons/'; $theme = ttheme::i(); $tml = $theme->getwidgetitem('links', $sidebar); $args = targs::i(); $args->subcount = ''; $args->subitems = ''; $args->rel = 'link bookmark'; foreach ($this->items as $id => $item) { $args->id = $id; $args->title = $item['title']; $args->text = $item['title']; if ($this->redir) { $args->link = $redirlink . $id; } else { $args->link = strtr($item['url'], $a); } $args->icon = $item['text'] == '' ? '' : sprintf('<img src="%s%s" alt="%s" />', $iconurl, $item['text'], $item['title']); $result .= $theme->parsearg($tml, $args); } return $theme->getwidgetcontent($result, 'links', $sidebar); }
function tprofileUninstall($self) { turlmap::unsub($self); $sitemap = tsitemap::i(); $sitemap->delete('/profile.htm'); $template = ttemplate::i(); $template->deletefromhead(' <link rel="author profile" title="Profile" href="$site.url/profile.htm" />'); }
public function uninstall() { $template = ttemplate::i(); $template->deletefromhead($this->getjs()); $parser = tthemeparser::i(); $parser->unbind($this); ttheme::clearcache(); }
public function gethtml() { $template = ttemplate::i(); $s = $template->getjavascript('/plugins/slideshow/slideshow.min.js'); $about = tplugins::getabout(tplugins::getname(__FILE__)); $s .= $about['html']; return sprintf('[html]%s[/html]', $s); }
public function gethead() { $result = parent::gethead(); $template = ttemplate::i(); $template->ltoptions['idpost'] = $this->idget(); $template->ltoptions['lang'] = litepublisher::$options->language; $result .= $template->getready('$("#tabs").tabs({ beforeLoad: litepubl.uibefore});'); return $result . tajaxmenueditor::i()->gethead(); }
public function get($url) { if (isset($this->items[$url])) { return $this->items[$url]; } if (strbegin($url, litepublisher::$site->url)) { return substr($url, strlen(litepublisher::$site->url)); } //redir jquery scripts if (strbegin($url, '/js/jquery/ui-')) { return '/js/jquery/ui-' . litepublisher::$site->jqueryui_version . substr($url, strpos($url, '/', 15)); } if (strbegin($url, '/js/jquery/jquery')) { return '/js/jquery/jquery-' . litepublisher::$site->jquery_version . '.min.js'; } //fix for 2.xx versions if (preg_match('/^\\/comments\\/(\\d*?)\\/?$/', $url, $m)) { return sprintf('/comments/%d.xml', $m[1]); } if (preg_match('/^\\/authors\\/(\\d*?)\\/?$/', $url, $m)) { return '/comusers.htm?id=' . $m[1]; } if (strpos($url, '%')) { $url = rawurldecode($url); if (strbegin($url, litepublisher::$site->url)) { return substr($url, strlen(litepublisher::$site->url)); } if (litepublisher::$urlmap->urlexists($url)) { return $url; } } //fix php warnings e.g. function.preg-split if (($i = strrpos($url, '/')) && strbegin(substr($url, $i), '/function.')) { return substr($url, 0, $i + 1); } //redir version js files if (preg_match('/^\\/files\\/js\\/(\\w*+)\\.(\\d*+)\\.js$/', $url, $m)) { $name = $m[1] == 'moderator' ? 'comments' : $m[1]; $prop = 'jsmerger_' . $name; $template = ttemplate::i(); if (isset($template->{$prop})) { return $template->{$prop}; } } if (preg_match('/^\\/files\\/js\\/(\\w*+)\\.(\\d*+)\\.css$/', $url, $m)) { $name = 'cssmerger_' . $m[1]; $template = ttemplate::i(); if (isset($template->{$name})) { return $template->{$name}; } } if ($url = $this->onget($url)) { return $url; } return false; }
function tmetatagsUninstall($self) { $t = ttemplate::i(); $t->heads = strtr($t->heads, array('$metatags.keywords' => '$template.keywords', '$metatags.description' => '$template.description')); $t->save(); tthemeparser::i()->unbind($self); ttheme::clearcache(); unset(litepublisher::$classes->classes['metatags']); litepublisher::$classes->save(); }
public function gethead() { $result = parent::gethead(); $template = ttemplate::i(); $result .= $template->getready(' //alert($("#tabs").parent().parent().html()); //$("textarea:first").val($("#tabs").parent().parent().html()); $("#tabs, #contenttabs").tabs({ beforeLoad: litepubl.uibefore});'); return $result; }
public function themeparsed($theme) { $template = ttemplate::i(); $template->heads = $this->replacehead($template->heads); $template->save(); foreach ($theme->templates as $name => $value) { if (is_string($value)) { $theme->templates[$name] = $this->replace($value); } } }
public function gethead() { $result = parent::gethead(); $template = ttemplate::i(); $template->ltoptions['idpost'] = $this->idget(); $result .= $template->getjavascript($template->jsmerger_posteditor); if ($this->isauthor && ($h = tauthor_rights::i()->gethead())) { $result .= $h; } return $result; }
public function uninstall() { $template = ttemplate::i(); $template->js = '<script type="text/javascript" src="%s"></script>'; $template->save(); $parser = tthemeparser::i(); $parser->unbind($this); $admin = tadminmenus::i(); $admin->heads = $this->restore($admin->heads); $admin->save(); ttheme::clearcache(); }
public function deletestyle($filename) { if (!($filename = $this->normfilename($filename))) { return false; } $template = ttemplate::i(); if (strpos($template->heads, $this->basename . '_default')) { $this->deletefile('default', $filename); } else { $template->deletefromhead(sprintf('<link type="text/css" href="$site.files%s" rel="stylesheet" />', $filename)); } }
public function getdescription() { if ($list = $this->getlist()) { $result = ''; foreach ($list as $id) { $post = tpost::i($id); $result .= $post->title . ' '; if (strlen($result) > 250) { break; } } //return tcontentfilter::getexcerpt($result, 300); return $result; } return ttemplate::i()->getdescription(); }
function update597() { litepublisher::$site->jquery_version = '1.11.2'; litepublisher::$site->jqueryui_version = '1.11.4'; litepublisher::$site->save(); $js = tjsmerger::i(); $js->lock(); $js->after('default', '/js/plugins/jquery.cookie.min.js', '/js/plugins/tojson.min.js'); $js->after('default', '/js/litepublisher/litepublisher.utils.min.js', '/js/litepublisher/ready2.min.js'); $js->after('default', '/js/litepublisher/ready2.min.js', '/js/litepublisher/css-loader.min.js'); $js->after('default', '/js/litepublisher/css-loader.min.js', '/js/litepublisher/json-rpc.min.js'); $js->unlock(); $css = tcssmerger::i(); //$css->add('default', '/js/litepublisher/css/hover.css'); if (litepublisher::$classes->exists('ulogin')) { $ulogin = ulogin::i(); $ulogin->panel = str_replace(' ready2', ' $.ready2', $ulogin->panel); $ulogin->save(); $alogin = tadminlogin::i(); $alogin->widget = $ulogin->addpanel($alogin->widget, $ulogin->panel); $alogin->save(); $areg = tadminreguser::i(); $areg->widget = $ulogin->addpanel($areg->widget, $ulogin->panel); $areg->save(); $tc = ttemplatecomments::i(); $tc->regaccount = $ulogin->addpanel($tc->regaccount, $ulogin->button); $tc->save(); } $t = ttemplate::i(); $t->footer = str_replace('2014', '2015', $t->footer); $template = ttemplate::i(); $t->data[$js->basename] = $js->revision; $t->data[$css->basename] = $css->revision; $t->save(); //$a = tprefetchtxt::i()->items; $data = new tdata(); $data->basename = 'prefetch.txt'; $data->load(); $a = $data->data['items']; litepublisher::$classes->delete('tprefetchtxt'); litepublisher::$classes->add('appcache_manifest', 'appcache.manifest.class.php'); $c = appcache_manifest::i(); $c->items = $a; $c->save(); tredirector::i()->add('/prefetch.txt', $c->url); }
public function gethead() { $result = $this->data['head']; if ($this->visual) { $template = ttemplate::i(); if ($this->ajaxvisual) { $result .= $template->getready('$("a[rel~=\'loadvisual\']").one("click", function() { $("#loadvisual").remove(); $.load_script("' . litepublisher::$site->files . $this->visual . '"); return false; });'); } else { $result .= $template->getjavascript($this->visual); } } $this->callevent('onhead', array(&$result)); return $result; }
public function getform($p) { $this->password = $p; $page = tpasswordpage::i(); $page->perm = $this; $result = $page->request(null); if ($this->checked) { return true; } switch ($result) { case 404: return litepublisher::$urlmap->notfound404(); case 403: return litepublisher::$urlmap->forbidden(); } $html = ttemplate::i()->request($page); eval('?>' . $html); return false; }
public function ontitle(&$title) { $template = ttemplate::i(); if ($template->context instanceof tpost) { $tml = $this->post; } elseif ($template->context instanceof tcommontags) { $tml = $this->tag; } elseif ($template->context instanceof thomepage) { $tml = $this->home; } elseif ($template->context instanceof tarchives) { $tml = $this->archive; } else { return false; } if ($tml == '') { return; } $title = $template->parsetitle($tml, $title); return true; }
public function gethead() { $pickerpath = litepublisher::$site->files . '/plugins/colorpicker/'; $result = '<link type="text/css" href="' . $pickerpath . 'css/colorpicker.css" rel="stylesheet" />'; $template = ttemplate::i(); $template->ltoptions['colors'] = $this->data['selectors']; $result .= $template->getjavascript($template->jsmerger_themegenerator); //$result .= $template->getjavascript('/plugins/colorpicker/js/colorpicker.js'); //$result .= $template->getjavascript('/js/swfupload/swfupload.js'); //$result .= $template->getjavascript('/plugins/themegenerator/themegenerator.js'); if ($this->colorsuploaded) { $args = new targs(); foreach ($this->data['colors'] as $name => $value) { $args->{$name} = $value; } $res = $this->res; $css = strtr(file_get_contents($res . 'scheme.tml'), $args->data); $result .= "<style type=\"text/css\">\n{$css}</style>\n"; } return $result; }
function tfoafUninstall($self) { $merger = tlocalmerger::i(); $merger->deleteplugin(tplugins::getname(__FILE__)); $actions = TXMLRPCAction::i(); $actions->deleteclass(get_class($self)); $urlmap = litepublisher::$urlmap; $urlmap->lock(); turlmap::unsub($self); $classes = litepublisher::$classes; $classes->lock(); $classes->delete('tfoafutil'); $classes->delete('tprofile'); $classes->delete('tfriendswidget'); $classes->delete('tadminfoaf'); $classes->unlock(); $admin = tadminmenus::i(); $admin->lock(); $admin->deleteurl('/admin/foaf/profiletemplate/'); $admin->deleteurl('/admin/foaf/profile/'); $admin->deleteurl('/admin/foaf/'); $admin->unlock(); $urlmap->unlock(); if ($self->dbversion) { $manager = tdbmanager::i(); $manager->deletetable($self->table); } $template = ttemplate::i(); $template->deletefromhead(' <link rel="meta" type="application/rdf+xml" title="FOAF" href="$site.url/foaf.xml" />'); $meta = tmetawidget::i(); $meta->lock(); $meta->delete('foaf'); $meta->delete('profile'); $meta->unlock(); ttheme::clearcache(); }
public function gethead() { $result = $this->rawhead; ttemplate::i()->ltoptions['idpost'] = $this->id; $theme = $this->theme; $result .= $theme->templates['head.post']; if ($prev = $this->prev) { ttheme::$vars['prev'] = $prev; $result .= $theme->templates['head.post.prev']; } if ($next = $this->next) { ttheme::$vars['next'] = $next; $result .= $theme->templates['head.post.next']; } if ($this->hascomm) { $lang = tlocal::i('comment'); $result .= $theme->templates['head.post.rss']; } $result = $theme->parse($result); $this->factory->posts->callevent('onhead', array($this, &$result)); return $result; }
public function processform() { //dumpvar($_POST); $result = ''; switch ($this->name) { case 'views': $views = tviews::i(); $idview = (int) tadminhtml::getparam('idview', 0); if (!$idview || !$views->itemexists($idview)) { return ''; } if ($this->action == 'delete') { if ($idview > 1) { $views->delete($idview); } return ''; } $view = tview::i($idview); if ($idview > 1) { $view->customsidebar = isset($_POST['customsidebar']); $view->disableajax = isset($_POST['disableajax']); } $view->name = trim($_POST['name']); $view->themename = trim($_POST['theme_idview']); $view->menuclass = $_POST['menu']; $view->hovermenu = isset($_POST['hovermenu']); $this->set_custom($idview); if ($idview == 1 || $view->customsidebar) { $widgets = twidgets::i(); foreach (range(0, 2) as $index) { $view->sidebars[$index] = array(); $idwidgets = explode(',', trim($_POST["sidebar{$index}"])); foreach ($idwidgets as $idwidget) { $idwidget = (int) trim($idwidget); if (!$widgets->itemexists($idwidget)) { continue; } $view->sidebars[$index][] = array('id' => $idwidget, 'ajax' => isset($_POST["inline{$idwidget}"]) ? 'inline' : isset($_POST["ajax{$idwidget}"])); } } } $view->save(); break; case 'addview': $name = trim($_POST['name']); if ($name != '') { $views = tviews::i(); $id = $views->add($name); } break; case 'spec': foreach (self::getspecclasses() as $classname) { $obj = getinstance($classname); $obj->lock(); $obj->setidview($_POST["idview-{$classname}"]); if (isset($obj->data['keywords'])) { $obj->keywords = $_POST["keywords-{$classname}"]; } if (isset($obj->data['description '])) { $obj->description = $_POST["description-{$classname}"]; } if (isset($obj->data['head'])) { $obj->head = $_POST["head-{$classname}"]; } $obj->unlock(); } break; case 'group': switch ($_POST['action']) { case 'posts': $posts = tposts::i(); $idview = (int) $_POST['postview']; if (dbversion) { $posts->db->update("idview = '{$idview}'", 'id > 0'); } else { foreach ($posts->items as $id => $item) { $post = tpost::i($id); $post->idview = $idview; $post->save(); $post->free(); } } break; case 'menus': $idview = (int) $_POST['menuview']; $menus = tmenus::i(); foreach ($menus->items as $id => $item) { $menu = tmenu::i($id); $menu->idview = $idview; $menu->save(); } break; case 'themes': $themename = $_POST['themeview']; $views = tviews::i(); $views->lock(); foreach ($views->items as $id => $item) { $view = tview::i($id); $view->themename = $themename; $view->save(); } $views->unlock(); break; } break; case 'defaults': $views = tviews::i(); foreach ($views->defaults as $name => $id) { $views->defaults[$name] = (int) $_POST[$name]; } $views->save(); break; case 'headers': $template = ttemplate::i(); $template->heads = $_POST['heads']; $template->save(); $adminmenus = tadminmenus::i(); $adminmenus->heads = $_POST['adminheads']; $adminmenus->save(); $ajax = tajaxposteditor::i(); $ajax->lock(); $ajax->ajaxvisual = isset($_POST['ajaxvisual']); $ajax->visual = trim($_POST['visual']); $ajax->unlock(); litepublisher::$options->show_file_perm = isset($_POST['show_file_perm']); break; case 'admin': return $this->adminoptionsform->processform(); } ttheme::clearcache(); }
private function getvar($name) { switch ($name) { case 'site': return litepublisher::$site; case 'lang': return tlocal::i(); case 'post': $context = isset(litepublisher::$urlmap->context) ? litepublisher::$urlmap->context : ttemplate::i()->context; if ($context instanceof tpost) { return $context; } break; case 'author': return self::get_author(); case 'metapost': return isset(self::$vars['post']) ? self::$vars['post']->meta : new emptyclass(); } //switch if (isset($GLOBALS[$name])) { $var = $GLOBALS[$name]; } else { $classes = litepublisher::$classes; $var = $classes->gettemplatevar($name); if (!$var) { if (isset($classes->classes[$name])) { $var = $classes->getinstance($classes->classes[$name]); } elseif (isset($classes->items[$name])) { $var = $classes->getinstance($name); } else { $class = 't' . $name; if (isset($classes->items[$class])) { $var = $classes->getinstance($class); } } } } if (!is_object($var)) { litepublisher::$options->trace(sprintf('Object "%s" not found in %s', $name, $this->parsing[count($this->parsing) - 1])); return false; } return $var; }
public function save() { $template = ttemplate::i(); $template->save(); }
private function printclasspage($classname) { $cachefile = $classname . '.php'; if ($this->cache_enabled) { if ($this->include_file($cachefile)) { return; } } $obj = getinstance($classname); $Template = ttemplate::i(); $s = $Template->request($obj); eval('?>' . $s); if ($this->cache_enabled && $obj->cache) { $this->cache->set($cachefile, $result); } }
/** * Lite Publisher * Copyright (C) 2010 - 2015 Vladimir Yushko http://litepublisher.ru/ http://litepublisher.com/ * Dual licensed under the MIT (mit.txt) * and GPL (gpl.txt) licenses. **/ function tjsmergerInstall($self) { $dir = litepublisher::$paths->files . 'js'; @mkdir($dir, 0777); @chmod($dir, 0777); $file = $dir . DIRECTORY_SEPARATOR . 'index.htm'; file_put_contents($file, ' '); @chmod($file, 0666); $language = litepublisher::$options->language; $self->lock(); $self->items = array(); $section = 'default'; $self->add($section, '/js/jquery/jquery-$site.jquery_version.min.js'); $self->add($section, '/js/prettyphoto/js/jquery.prettyPhoto.js'); $self->add($section, '/js/plugins/class-extend.min.js'); $self->add($section, '/js/plugins/jquery.cookie.min.js'); $self->add($section, '/js/plugins/tojson.min.js'); $self->add($section, '/js/litepublisher/litepublisher.utils.min.js'); $self->add($section, '/js/litepublisher/ready2.min.js'); $self->add($section, '/js/litepublisher/css-loader.min.js'); $self->add($section, '/js/litepublisher/json-rpc.min.js'); $self->add($section, '/js/litepublisher/widgets.min.js'); $self->add($section, '/js/litepublisher/widgets.bootstrap.min.js'); $self->add($section, '/js/litepublisher/simpletml.min.js'); $self->add($section, '/js/litepublisher/templates.min.js'); $self->add($section, '/js/litepublisher/filelist.min.js'); $self->add($section, '/js/litepublisher/players.min.js'); $self->add($section, '/js/litepublisher/dialog.min.js'); $self->add($section, '/js/litepublisher/dialog.pretty.min.js'); $self->add($section, '/js/litepublisher/dialog.bootstrap.min.js'); $self->add($section, '/js/litepublisher/pretty.init.min.js'); $self->add($section, '/js/litepublisher/youtubefix.min.js'); $self->add($section, "/lib/languages/{$language}/default.min.js"); $section = 'comments'; $self->add($section, '/js/litepublisher/comments.min.js'); $self->add($section, '/js/litepublisher/confirmcomment.min.js'); $self->add($section, '/js/litepublisher/moderate.min.js'); $self->add($section, "/lib/languages/{$language}/comments.min.js"); $section = 'admin'; $self->add($section, '/js/jquery/ui/core.min.js'); $self->add($section, '/js/jquery/ui/widget.min.js'); $self->add($section, '/js/jquery/ui/mouse.min.js'); $self->add($section, '/js/jquery/ui/position.min.js'); $self->add($section, '/js/jquery/ui/effect.min.js'); $self->add($section, '/js/jquery/ui/tabs.min.js'); $self->add($section, '/js/litepublisher/admin.min.js'); $self->add($section, '/js/litepublisher/calendar.min.js'); $self->add($section, "/lib/languages/{$language}/admin.min.js"); $section = 'adminviews'; $self->add($section, '/js/jquery/ui/draggable.min.js'); $self->add($section, '/js/jquery/ui/droppable.min.js'); $self->add($section, '/js/jquery/ui/resizable.min.js'); $self->add($section, '/js/jquery/ui/selectable.min.js'); $self->add($section, '/js/jquery/ui/sortable.min.js'); $self->add($section, '/js/litepublisher/admin.views.min.js'); $section = 'posteditor'; $self->add($section, '/js/swfupload/swfupload.min.js'); $self->add($section, '/js/plugins/filereader.min.js'); $self->add($section, '/js/litepublisher/uploader.min.js'); $self->add($section, '/js/litepublisher/uploader.html.min.js'); $self->add($section, '/js/litepublisher/uploader.flash.min.js'); $self->add($section, '/js/jquery/ui/progressbar.min.js'); $self->add($section, '/js/litepublisher/posteditor.min.js'); $self->add($section, '/js/litepublisher/fileman.min.js'); $self->add($section, '/js/litepublisher/fileman.templates.min.js'); $self->add($section, "/lib/languages/{$language}/posteditor.min.js"); $self->unlock(); $template = ttemplate::i(); $template->addtohead(sprintf($template->js, '$site.files$template.jsmerger_default')); $updater = tupdater::i(); $updater->onupdated = $self->onupdated; }
public function afterparse($theme) { $this->onfix($theme); $templates =& $this->theme->templates; $templates['menu.hover'] = isset($templates['menu.hover']) ? $templates['menu.hover'] == 'true' ? 'true' : ($templates['menu.hover'] == 'bootstrap' ? 'bootstrap' : 'false') : 'true'; if (!isset($templates['content.post.templatecomments'])) { $templates['content.post.templatecomments'] = ''; } if (!isset($templates['content.post.templatecomments.confirmform'])) { $this->error('tml not'); } $post = 'content.post.'; $excerpt = 'content.excerpts.excerpt.'; //normalize filelist foreach (array('file', 'image', 'audio', 'video', 'flash') as $name) { $key = $post . 'filelist.' . $name; $itemkey = $key . "s.{$name}"; if (!isset($templates[$key . 's'])) { $templates[$key . 's'] = '$' . $name; } //excerpt $keyexcerpt = $excerpt . 'filelist.' . $name; $itemkeyexcerpt = $keyexcerpt . "s.{$name}"; if (!isset($templates[$keyexcerpt])) { $templates[$keyexcerpt] = $templates[$key]; } if (!isset($templates[$keyexcerpt . 's'])) { $templates[$keyexcerpt . 's'] = $templates[$key . 's']; } } //fix preview $key = $post . 'filelist.preview'; $keyexcerpt = $excerpt . 'filelist.preview'; if (!isset($templates[$keyexcerpt])) { $templates[$keyexcerpt] = $templates[$key]; } foreach (array('date', 'filelist', 'filelist.file', 'filelist.image', 'filelist.preview', 'filelist.audio', 'filelist.video', 'filelist.flash', 'filelist.files', 'filelist.images', 'filelist.audios', 'filelist.videos', 'filelist.flashs', 'catlinks', 'catlinks.item', 'catlinks.divider', 'taglinks', 'taglinks.item', 'taglinks.divider') as $name) { if (empty($templates[$excerpt . $name])) { $templates[$excerpt . $name] = $templates[$post . $name]; } } $sidebars =& $this->theme->templates['sidebars']; $count = substr_count($this->theme->templates['index'], '$template.sidebar'); if (count($sidebars) > $count) { array_splice($sidebars, $count, count($sidebars) - $count); } for ($i = 0; $i < $count; $i++) { $sidebar =& $this->theme->templates['sidebars'][$i]; foreach (ttheme::getwidgetnames() as $widgetname) { foreach (array('', '.items', '.item', '.subcount', '.subitems') as $name) { if (empty($sidebar[$widgetname . $name])) { $sidebar[$widgetname . $name] = $sidebar['widget' . $name]; } } if ($this->fixsubcount && in_array($widgetname, array('widget', 'categories', 'tags', 'archives'))) { $v = $sidebar[$widgetname . '.item']; if (!strpos($v, '$subcount')) { $sidebar[$widgetname . '.item'] = str_replace('$subitems', '$subcount$subitems', $v); } } } if (is_string($sidebar['meta.classes'])) { $sidebar['meta.classes'] = self::getmetaclasses($sidebar['meta.classes']); } } //add spaces foreach (array('content.excerpts.excerpt.taglinks.divider', 'content.post.taglinks.divider', 'content.excerpts.excerpt.catlinks.divider', 'content.post.catlinks.divider') as $k) { if (substr($templates[$k], -1) != ' ') { $templates[$k] .= ' '; } } $templates['content.post.templatecomments.confirmform'] = str_replace('$lang.formhead', '$lang.checkspam', $templates['content.post.templatecomments.confirmform']); $form = 'content.post.templatecomments.form'; $templates[$form] = trim(str_replace('<script type="text/javascript" src="$site.files$template.jsmerger_comments"></script>', '', $templates[$form])); if (!strpos($templates[$form], '$mesg')) { $templates[$form] = '<div id="before-commentform">$mesg</div>' . $templates[$form]; } $regform = 'content.post.templatecomments.regform'; if (!in_array($regform, $this->parsedtags) && in_array('content.admin.editor', $this->parsedtags)) { $editor = strtr($templates['content.admin.editor'], array('$lang.$name' => $this->replacelang ? tlocal::i('comment')->content : '$lang.content', '$name' => 'content', '$value' => '')); $templates[$regform] = ' <div id="before-commentform">$mesg</div> <h4 id="respond">$lang.leavereply</h4> <form action="$site.url/send-comment.php" method="post" id="commentform">' . $editor . '<p> <input type="hidden" name="postid" value="$postid" /> <input type="hidden" name="antispam" value="$antispam" /> <input type="submit" name="submitbutton" id="submitcomment" value="' . ($this->replacelang ? tlocal::i()->send : '$lang.send') . '" /></p> </form>'; } $comment = 'content.post.templatecomments.comments.comment'; $templates[$comment] = str_replace('$moderate', '<div class="moderationbuttons" data-idcomment="$comment.id" data-idauthor="$comment.author"></div>', $templates[$comment]); if ($this->stylebefore) { foreach (array('index', 'index.home', 'index.post', 'index.tag') as $k) { if (strpos($templates[$k], '$template.cssmerger_default')) { continue; } //insert css merger before theme css if ($i = strpos($templates[$k], '.css')) { $i = strrpos(substr($templates[$k], 0, $i), '<'); $css = '<link type="text/css" href="$site.files$template.cssmerger_default" rel="stylesheet" />'; $templates[$k] = substr_replace($templates[$k], $css, $i - 1, 0); } } //fix $template.head // ignore on installling (class not exists) if (!defined('litepublisher_mode') || litepublisher_mode != 'install') { $t = ttemplate::i(); if (false !== strpos($t->heads, $css) && false === strpos($t->heads, "<!--{$css}-->")) { $t->heads = str_replace($css, "<!--{$css}-->", $t->heads); $t->save(); } } } //reuse templates foreach ($templates as $k => $v) { if (is_string($v) && !strbegin($v, '<') && isset($templates[$v]) && is_string($templates[$v])) { $templates[$k] = $templates[$v]; } } }