diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..ec67311 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,13 @@ +root = true + +[*] +charset = utf-8 +indent_style = tab +indent_size = 4 +end_of_line = lf +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +insert_final_newline = false +trim_trailing_whitespace = false \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md new file mode 100644 index 0000000..9e053cb --- /dev/null +++ b/.github/ISSUE_TEMPLATE.md @@ -0,0 +1,7 @@ +# Описание ошибки: + +- При каких условиях воспроизводится ошибка +- Страница, на которой наблюдается ошибка +- Вносились ли модификации в движок +- Версия DLE: 10.3 +- Версия PHP: 5.6 \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..cf4d822 --- /dev/null +++ b/.gitignore @@ -0,0 +1,231 @@ +# Redactors +/.idea/ + + +# Installed DLE +/engine/cache/*.tmp +/engine/cache/system/*.php +/engine/data/*.txt +/engine/data/*.php + +# DLE 11.1 sources +/.htaccess +/admin.php +/backup/.htaccess +/backup/index.html +/cron.php +/engine/ajax/addcomments.php +/engine/ajax/adminfunction.php +/engine/ajax/allvotes.php +/engine/ajax/antivirus.php +/engine/ajax/bbcode.php +/engine/ajax/calendar.php +/engine/ajax/clean.php +/engine/ajax/comments.php +/engine/ajax/complaint.php +/engine/ajax/deletecomments.php +/engine/ajax/editcomments.php +/engine/ajax/editnews.php +/engine/ajax/favorites.php +/engine/ajax/feedback.php +/engine/ajax/find_relates.php +/engine/ajax/find_tags.php +/engine/ajax/keywords.php +/engine/ajax/message.php +/engine/ajax/newsletter.php +/engine/ajax/pm.php +/engine/ajax/poll.php +/engine/ajax/profile.php +/engine/ajax/quote.php +/engine/ajax/rating.php +/engine/ajax/ratingcomments.php +/engine/ajax/rebuild.php +/engine/ajax/registration.php +/engine/ajax/replycomments.php +/engine/ajax/rss.php +/engine/ajax/search.php +/engine/ajax/sitemap.php +/engine/ajax/templates.php +/engine/ajax/typograf.php +/engine/ajax/updates.php +/engine/ajax/upload.php +/engine/ajax/vote.php +/engine/api/ +/engine/cache/* +/engine/cache/system/* +/engine/classes/.htaccess +/engine/classes/antivirus.class.php +/engine/classes/calendar/calendar.css +/engine/classes/calendar/calendar.js +/engine/classes/comments.class.php +/engine/classes/download.class.php +/engine/classes/flashplayer/* +/engine/classes/google.class.php +/engine/classes/highlight/ +/engine/classes/highslide/ +/engine/classes/html5player/* +/engine/classes/js/* +/engine/classes/mail.class.php +/engine/classes/mail/class.phpmailer.php +/engine/classes/masha/* +/engine/classes/min/* +/engine/classes/mobiledetect.class.php +/engine/classes/mysql.php +/engine/classes/parse.class.php +/engine/classes/recaptcha.php +/engine/classes/rss.class.php +/engine/classes/social.class.php +/engine/classes/stopspam.class.php +/engine/classes/templates.class.php +/engine/classes/thumb.class.php +/engine/classes/typograf.class.php +/engine/classes/uploads/* +/engine/data/.htaccess +/engine/data/emoticons/* +/engine/download.php +/engine/editor/* +/engine/engine.php +/engine/go.php +/engine/inc/.htaccess +/engine/inc/addnews.php +/engine/inc/banners.php +/engine/inc/blockip.php +/engine/inc/categories.php +/engine/inc/check.php +/engine/inc/clean.php +/engine/inc/cmoderation.php +/engine/inc/comments.php +/engine/inc/complaint.php +/engine/inc/dboption.php +/engine/inc/dumper.php +/engine/inc/editnews.php +/engine/inc/editusers.php +/engine/inc/editvote.php +/engine/inc/email.php +/engine/inc/files.php +/engine/inc/googlemap.php +/engine/inc/help.php +/engine/inc/include/.htaccess +/engine/inc/include/functions.inc.php +/engine/inc/include/init.php +/engine/inc/include/inserttag.php +/engine/inc/iptools.php +/engine/inc/links.php +/engine/inc/logs.php +/engine/inc/main.php +/engine/inc/mass_static_actions.php +/engine/inc/mass_user_actions.php +/engine/inc/massactions.php +/engine/inc/newsletter.php +/engine/inc/options.php +/engine/inc/preview.php +/engine/inc/question.php +/engine/inc/rebuild.php +/engine/inc/rss.php +/engine/inc/rssinform.php +/engine/inc/search.php +/engine/inc/social.php +/engine/inc/static.php +/engine/inc/tagscloud.php +/engine/inc/templates.php +/engine/inc/userfields.php +/engine/inc/usergroup.php +/engine/inc/videoconfig.php +/engine/inc/wordfilter.php +/engine/inc/xfields.php +/engine/init.php +/engine/modules/.htaccess +/engine/modules/addcomments.php +/engine/modules/addnews.php +/engine/modules/antibot/* +/engine/modules/banned.php +/engine/modules/banners.php +/engine/modules/bbcode.php +/engine/modules/calendar.php +/engine/modules/changemail.php +/engine/modules/comments.php +/engine/modules/cron.php +/engine/modules/deletenews.php +/engine/modules/favorites.php +/engine/modules/feedback.php +/engine/modules/functions.php +/engine/modules/lastcomments.php +/engine/modules/links.php +/engine/modules/lostpassword.php +/engine/modules/main.php +/engine/modules/offline.php +/engine/modules/pm.php +/engine/modules/pm_alert.php +/engine/modules/poll.php +/engine/modules/profile.php +/engine/modules/register.php +/engine/modules/rssinform.php +/engine/modules/search.php +/engine/modules/show.custom.php +/engine/modules/show.full.php +/engine/modules/show.short.php +/engine/modules/sitelogin.php +/engine/modules/social.php +/engine/modules/static.php +/engine/modules/stats.php +/engine/modules/tagscloud.php +/engine/modules/topnews.php +/engine/modules/vote.php +/engine/opensearch.php +/engine/preview.php +/engine/print.php +/engine/rss.php +/engine/skins/.htaccess +/engine/skins/codemirror/css/default.css +/engine/skins/codemirror/js/LICENSE +/engine/skins/codemirror/js/code.js +/engine/skins/default.skin.php +/engine/skins/fonts/* +/engine/skins/images/* +/engine/skins/javascripts/application.js +/engine/skins/stylesheets/application.css +/engine/skins/stylesheets/frame.css +/index.php +/install.php +/language/.htaccess +/language/Russian/admincheck.lng +/language/Russian/adminlogs.lng +/language/Russian/adminpanel.lng +/language/Russian/help.lng +/language/Russian/website.lng +/robots.txt +/templates/.htaccess +/templates/Default/* +/templates/Gemini/* +/templates/Green/* +/templates/Pisces/* +/templates/Red/* +/templates/banned.tpl +/templates/opensearch.tpl +/templates/rss.tpl +/templates/smartphone/* +/upgrade/* +/uploads/* + +# DLE 11.3 sources +/engine/ajax/commentssubscribe.php +/engine/ajax/twofactor.php +/engine/classes/htmlpurifier/* +/engine/classes/memcache.class.php +/engine/inc/lostpassword.php +/engine/inc/redirects.php +/engine/inc/twofactor.php + +# DLE 12 sources +/engine/inc/metatags.php +/language/English/admincheck.lng +/language/English/adminlogs.lng +/language/English/adminpanel.lng +/language/English/help.lng +/language/English/website.lng + +# Place your custom files here + +!/engine/skins/images/linkenso.png +!/engine/skins/application.css +!/templates/Default/linkenso diff --git a/LICENSE b/LICENSE index 941e778..e5b522e 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2018 Модули для DataLife Engine +Copyright (c) 2018 Александр Алаев Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index fc57b12..39f2d65 100644 --- a/README.md +++ b/README.md @@ -1 +1,6 @@ -# DLE-LinkEnso \ No newline at end of file +# DLE-LinkEnso +![version](https://img.shields.io/badge/version-2.3.1-red.svg?style=flat-square "Version") +![DLE](https://img.shields.io/badge/DLE-8.2-green.svg?style=flat-square "DLE Version") +[![MIT License](https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square)](https://github.com/dle-modules/DLE-LinkEnso/blob/master/LICENSE) + +LinkEnso PRO – модуль визуальной перелинковки для DLE \ No newline at end of file diff --git a/engine/inc/linkenso.php b/engine/inc/linkenso.php new file mode 100644 index 0000000..10df931 --- /dev/null +++ b/engine/inc/linkenso.php @@ -0,0 +1,211 @@ += 10.2 ? '' : '').' + +
+ +
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
:
, ( ).
.tpl !
:
, .
:
- .
- .
+ +
:
- , .. .
- , .., , .
+ +
:
- .
- , .
- .
+ +
():
- .
Title - title .
+ +
title :
Title - title title .
- title .
+ +
:
. , "xfield" .
+ +
:
, .
fullstory.tpl
+ +
+
+
+ '; + + // + echofooter(); + +?> \ No newline at end of file diff --git a/engine/modules/linkenso.php b/engine/modules/linkenso.php new file mode 100644 index 0000000..b9bc2da --- /dev/null +++ b/engine/modules/linkenso.php @@ -0,0 +1,494 @@ +dle_config = $config; + $this->db = $db; + $this->tpl = $tpl; + $this->cat_info = $cat_info; + + // + $this->config = $linkEnsoConfig; + } + + + /* + * LinkEnso + */ + public function run() { + // + $output = false; + if ($this->dle_config['allow_cache'] && $this->dle_config['allow_cache'] != "no") { + $output = dle_cache('linkenso_', md5(implode('_', $this->config)) . $this->dle_config['skin']); + } + + // , + if ($output !== false) { + $this->showOutput($output); + return; + } + + // , + $wheres = array(); + + // , + $post = $this->db->super_query("SELECT category FROM " . PREFIX . "_post WHERE id = '" . $this->config['postId'] . "'"); + + // DLE API - , + if (!empty($post) && !empty($post['category'])) $postCategories = array(); + + $postCategories = explode(',', $post['category']); + + // scan + $categoriesArray = array(); + switch ($this->config['scan']) { + // + case 'same_cat': + // + foreach ($postCategories as $postCategory) { + $postCategory = intval($postCategory); + $categoriesArray[] = $postCategory; + $categoriesArray = array_merge($categoriesArray, $this->getSubcategoriesArray($postCategory)); + } + break; + + // " " + case 'global_cat': + // + foreach ($postCategories as $postCategory) { + $postCategory = intval($postCategory); + $globalCategoryId = $this->getGlobalCategory($postCategory); + $categoriesArray[] = $globalCategoryId; + $categoriesArray = array_merge($categoriesArray, $this->getSubcategoriesArray($globalCategoryId)); + } + break; + + default: + break; + } + + // + if (count($categoriesArray) > 0) { + switch ($this->dle_config['allow_multi_category']) { + // + case '1': + $categoryWheres = array(); + foreach ($categoriesArray as $categoryId) { + $categoryWheres[] = 'category regexp "[[:<:]](' . str_replace(',', '|', $categoryId) . ')[[:>:]]"'; + } + $wheres[] = '(' . implode(' OR ', $categoryWheres) . ')'; + break; + + // + default: + $wheres[] = 'category IN (' . implode(',', $categoriesArray) . ')'; + break; + } + } + + // date + switch ($this->config['date']) { + case 'new': + $dateWhere = 'id > ' . $this->config['postId']; + break; + + default: + $dateWhere = 'id < ' . $this->config['postId']; + break; + } + + // , + $wheres[] = 'approve = 1'; + + // , + $wheres[] = 'date < "' . date("Y-m-d H:i:s") . '"'; + + // id + $wheres[] = 'id != ' . $this->config['postId']; + + // + $where = implode(' AND ', $wheres); + + // , ( - ASC, - DESC) + $ordering = $this->config['date'] == 'new' ? 'ASC' : 'DESC'; + + // , ( x, ) + $fields = 'id, date, short_story, full_story, xfields, title, metatitle, category, alt_name, approve'; + $fields .= ($this->dle_config['version_id'] < 9.6) ? ', flag' : '' ; // dle flag + + // - + $posts = $this->db->super_query("SELECT " . $fields . " FROM " . PREFIX . "_post WHERE " . $where . " AND " . $dateWhere . " ORDER BY id " . $ordering . " LIMIT 0, " . $this->config['links'], true); + + // DLE API - , + if (empty($posts)) $posts = array(); + + // - ring 1, + if (count($posts) < $this->config['links'] && $this->config['ring'] == 'yes') { + // id , + $posts_id_array = array(); + foreach ($posts as $post) { + $posts_id_array[] = $post['id']; + } + + // + if (!empty($posts_id_array)) { + $wheres[] = 'id NOT IN(' . implode(',', $posts_id_array) . ')'; + } + + // + $where = implode(' AND ', $wheres); + + // . + $morePosts = $this->db->super_query("SELECT " . $fields . " FROM " . PREFIX . "_post WHERE " . $where . " ORDER BY id " . $ordering . " LIMIT 0, " . ($this->config['links'] - count($posts)), true); + + // DLE API - , + if (empty($morePosts)) $morePosts = array(); + + $posts = array_merge_recursive($posts, $morePosts); + } + + // + $linksOutput = ''; + foreach ($posts as $post) { + // + $my_cat = array(); + $my_cat_icon = array(); + $my_cat_link = array(); + $cat_list = explode(',', $post['category']); + foreach($cat_list as $element) { + if(isset($this->cat_info[$element])) { + $my_cat[] = $this->cat_info[$element]['name']; + if ($this->cat_info[$element]['icon']) + $my_cat_icon[] = ''.$this->cat_info[$element]['name'].''; + else + $my_cat_icon[] = ''.$this->cat_info[$element]['name'].''; + if($this->dle_config['allow_alt_url'] == 'yes') + $my_cat_link[] = ''.$this->cat_info[$element]['name'].''; + else + $my_cat_link[] = ''.$this->cat_info[$element]['name'].''; + } + } + $categoryUrl = ($post['category']) ? $this->dle_config['http_home_url'] . get_url(intval($post['category'])) . '/' : '/' ; + + + // + $post['short_story'] = stripslashes($post['short_story']); + $post['full_story'] = stripslashes($post['full_story']); + + // + $image = ''; + switch ($this->config['image']) { + // + case 'short_story': + $image = $this->getContentImage($post['short_story'], 0); + break; + + // + case 'full_story': + $image = $this->getContentImage($post['full_story'], 0); + break; + + // - + default: + $xfields = xfieldsdataload($post['xfields']); + if (!empty($xfields) && !empty($xfields[$this->config['image']])) { + $image = $xfields[$this->config['image']]; + } + break; + } + + $linksOutput .= $this->applyTemplate($this->config['template'], array( + '{link}' => 'config['title'] != 'empty' ? 'title="' . ($this->config['title'] == 'name' ? stripslashes($post['title']) : stripslashes($post['metatitle'])) . '"' : '') . ' href="' . ($this->getPostUrl($post)) . '">' . ($this->config['anchor'] == 'title' ? stripslashes($post['metatitle']) : stripslashes($post['title'])) . '', + '{anchor}' => $this->config['anchor'] == 'title' ? stripslashes($post['metatitle']) : stripslashes($post['title']), + '{title}' => $this->config['title'] != 'empty' ? ($this->config['title'] == 'name' ? stripslashes($post['title']) : stripslashes($post['metatitle'])) : '', + '{short-story}' => $this->crobContent($post['short_story'], $this->config['limit']), + '{full-story}' => $this->crobContent($post['full_story'], $this->config['limit']), + '{image}' => $image, + '{link-url}' => $this->getPostUrl($post), + '{link-category}'=> implode(', ', $my_cat_link), + '{category}' => implode(', ', $my_cat), + '{category-icon}'=> implode('', $my_cat_icon), + '{category-url}' => $categoryUrl, + ), array( + "'\[link\\](.*?)\[/link\]'si" => 'config['title'] != 'empty' ? 'title="' . ($this->config['title'] == 'name' ? stripslashes($post['title']) : stripslashes($post['metatitle'])) . '"' : '') . ' href="' . ($this->getPostUrl($post)) . '">' . "\\1" . '', + "'\[show_image\\](.*?)\[/show_image\]'si" => !empty($image) ? "\\1" : '', + "'\[not_show_image\\](.*?)\[/not_show_image\]'si" => empty($image) ? "\\1" : '', + )); + } + // + $output = $linksOutput; + + // , + if ($this->dle_config['allow_cache'] && $this->dle_config['allow_cache'] != "no") { + create_cache('linkenso_', $output, md5(implode('_', $this->config)) . $this->dle_config['skin']); + } + + // + $this->showOutput($output); + } + + + /* + * + * @param $categoryId - + * @return array - + */ + public function getSubcategoriesArray($categoryId) { + // $categoryId + $categoryId = intval($categoryId); + + // + $subcategoriesArray = array(); + + // + $subcategories = $this->db->super_query("SELECT id FROM " . PREFIX . "_category WHERE parentid = " . $categoryId, true); + + if (empty($subcategories)) $subcategories = array(); + + foreach ($subcategories as $subcategory) { + // + $subcategoriesArray[] = intval($subcategory['id']); + + // + $subcategoriesArray = array_merge($subcategoriesArray, $this->getSubcategoriesArray($subcategory['id'])); + } + + // + return $subcategoriesArray; + } + + + /* + * + * @param $categoryId - + * @return int - "" + */ + public function getGlobalCategory($categoryId) { + // $categoryId + $categoryId = intval($categoryId); + + // + // , + while ($this->cat_info[$categoryId]['parentid'] > 0) { + $categoryId = intval($this->cat_info[$categoryId]['parentid']); + } + + // + return $categoryId; + } + + + /* + * @param $post - + * @return string URL + */ + public function getPostUrl($post) { + + if ($this->dle_config['allow_alt_url'] && $this->dle_config['allow_alt_url'] != "no") { + if ( + ($this->dle_config['version_id'] < 9.6 && $post['flag'] && $this->dle_config['seo_type']) + || + ($this->dle_config['version_id'] >= 9.6 && ($this->dle_config['seo_type'] == 1 || $this->dle_config['seo_type'] == 2)) + ) { + if (intval($post['category']) && $this->dle_config['seo_type'] == 2) { + $url = $this->dle_config['http_home_url'] . get_url(intval($post['category'])) . '/' . $post['id'] . '-' . $post['alt_name'] . '.html'; + } + else { + $url = $this->dle_config['http_home_url'] . $post['id'] . '-' . $post['alt_name'] . '.html'; + } + } + else { + $url = $this->dle_config['http_home_url'] . date("Y/m/d/", strtotime($post['date'])) . $post['alt_name'] . '.html'; + } + } + else { + $url = $this->dle_config['http_home_url'] . 'index.php?newsid=' . $post['id']; + } + + return $url; + } + + + /* + * $content $length, html- + * + * @param $content - + * @param $length - , + * + * @return string - + */ + public function crobContent($content = '', $length = 0) { + $content = preg_replace( "'\(.*?)\'si", "", "$content" ); + $content = str_replace("

", " ", $content); + $content = strip_tags($content, "
"); + $content = trim(str_replace("
", " ", str_replace("
", " ", str_replace("\n", " ", str_replace("\r", "", $content))))); + + if ($length && dle_strlen($content, $config['charset']) > $length) { + $content = dle_substr($content, 0, $length, $this->dle_config['charset']); + if (($temp_dmax = dle_strrpos($content, ' ', $this->dle_config['charset']))) { + $content = dle_substr($content, 0, $temp_dmax, $this->dle_config['charset']); + } + } + + return $content; + } + + + /* + * $index $content + * + * @param $content - + * @param $index - 0 + */ + + public function getContentImage($content, $imageIndex = 0) { + preg_match_all('/(img|src)=("|\')[^"\'>]+/i', $content, $media); + $data = preg_replace('/(img|src)("|\'|="|=\')(.*)/i', "$3", $media[0]); + + foreach ($data as $index => $url) { + if ($index == $imageIndex) { + $info = pathinfo($url); + if (isset($info['extension'])) { + $info['extension'] = strtolower($info['extension']); + if (($info['extension'] == 'jpg') || ($info['extension'] == 'jpeg') || ($info['extension'] == 'gif') || ($info['extension'] == 'png')) { + if (substr_count($url, 'data/emoticons') == 0 && substr_count($url, 'dleimages') == 0) return $url; + } + } + $imageIndex++; + } + } + + return false; + } + + + /* + * tpl-, + * @param $template - , + * @param $vars - + * @param $vars - + * + * @return string tpl-, $data + */ + public function applyTemplate($template, $vars = array(), $blocks = array()) { + // $template.tpl, + + $this->tpl = new dle_template(); + $this->tpl->dir = TEMPLATE_DIR; + + $this->tpl->load_template($template . '.tpl'); + + // + $this->tpl->set('', $vars); + + // + foreach ($blocks as $block => $value) { + $this->tpl->set_block($block, $value); + } + + // ( ;)) + $this->tpl->compile($template); + + // + return $this->tpl->result[$template]; + } + + + /* + * + * @param $output - + */ + public function showOutput($output) { + echo $output; + } + } +} +/*---End Of LinkEnso Class---*/ + + +// +$linkEnsoConfig = array( + 'postId' => !empty($post_id) ? $post_id : false, + 'links' => !empty($links) ? $links : 3, + 'date' => !empty($date) ? $date : 'old', + 'ring' => !empty($ring) ? $ring : 'yes', + 'scan' => !empty($scan) ? $scan : 'all_cat', + 'anchor' => !empty($anchor) ? $anchor : 'name', + 'title' => !empty($title) ? $title : 'title', + 'limit' => !empty($limit) ? $limit : 0, + 'image' => !empty($image) ? $image : 'full_story', + 'template' => !empty($template) ? $template : 'linkenso/linkenso' +); + +// +$linkEnso = new LinkEnso($linkEnsoConfig); +$linkEnso->run(); + +?> \ No newline at end of file diff --git a/engine/skins/application.css b/engine/skins/application.css new file mode 100644 index 0000000..193f6c2 --- /dev/null +++ b/engine/skins/application.css @@ -0,0 +1,1018 @@ +a { + background:transparent; +} +a:focus { + outline:thin dotted; +} +a:active,a:hover { + outline:0; +} +hr { + -moz-box-sizing:content-box; + box-sizing:content-box; + height:0; +} +small { + font-size:80%; +} +button,input,select,textarea { + font-size:100%; + margin:0; +} +button,input { + line-height:normal; +} +button,select { + text-transform:none; +} +button,html input[type="button"],input[type="reset"],input[type="submit"] { + -webkit-appearance:button; + cursor:pointer; +} +input[type="checkbox"],input[type="radio"] { + box-sizing:border-box; + padding:0; +} +button::-moz-focus-inner,input::-moz-focus-inner { + border:0; + padding:0; +} +textarea { + overflow:auto; + vertical-align:top; +} +table { + border-collapse:collapse; + border-spacing:0; +} + +table td[class*="col-"], table th[class*="col-"] { + float: none; + display: table-cell; +} + +*,*:before,*:after { + -webkit-box-sizing:border-box; + -moz-box-sizing:border-box; + box-sizing:border-box; +} +input,button,select,textarea { + font-size:inherit; + line-height:inherit; +} +a { + color:#78808a; + text-decoration:none; +} + a:hover, a:focus { + color:#5a6573; + text-decoration:underline; +} + a:focus { + outline:thin dotted #333; + outline:5px auto -webkit-focus-ring-color; + outline-offset:-2px; +} +hr { + margin-top:20px; + margin-bottom:20px; + border:0; + border-top:1px solid #eeeeee; +} +p { + margin:0 0 10px; +} +small,.small { + font-size:85%; +} +h1, h2, h3, h4, h5, h6,.h1, .h2, .h3, .h4, .h5, .h6 { + line-height:1.1; + color:inherit; +} + h1 small, h2 small, h3 small, h4 small, h5 small, h6 small, .h1 small, .h2 small, .h3 small, .h4 small, .h5 small, .h6 small { + line-height:1; + color:#999999; +} +h1,h2,h3 { + margin-top:20px; + margin-bottom:10px; +} + h1 small, h2 small, h3 small { + font-size:65%; +} +h4,h5,h6 { + margin-top:10px; + margin-bottom:10px; +} + h4 small, h5 small, h6 small { + font-size:75%; +} +h1, .h1 { + font-size:36px; +} +h2, .h2 { + font-size:30px; +} +h3, .h3 { + font-size:24px; +} +h4, .h4 { + font-size:18px; +} +h5, .h5 { + font-size:14px; +} +h6, .h6 { + font-size:12px; +} +.page-header { + padding-bottom:9px; + margin:40px 0 20px; + border-bottom:1px solid #eeeeee; +} +ul,ol { + margin-top:0; + margin-bottom:10px; +} + ul ul, ul ol, ol ul, ol ol { + margin-bottom:0; +} + +.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12 { + position:relative; + min-height:1px; + padding-left:15px; + padding-right:15px; +} +.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11 { + float:left; +} +.col-xs-1 { + width:8.33333%; +} +.col-xs-2 { + width:16.66667%; +} +.col-xs-3 { + width:25%; +} +.col-xs-4 { + width:33.33333%; +} +.col-xs-5 { + width:41.66667%; +} +.col-xs-6 { + width:50%; +} +.col-xs-7 { + width:58.33333%; +} +.col-xs-8 { + width:66.66667%; +} +.col-xs-9 { + width:75%; +} +.col-xs-10 { + width:83.33333%; +} +.col-xs-11 { + width:91.66667%; +} +.col-xs-12 { + width:100%; +} + + +table { + max-width:100%; + background-color:transparent; +} +th { + text-align:left; +} +.table { + width:100%; + margin-bottom:20px; +} + .table > thead > tr > th, .table > thead > tr > td, .table > tbody > tr > th, .table > tbody > tr > td, .table > tfoot > tr > th, .table > tfoot > tr > td { + padding:8px; + line-height:1.42857; + vertical-align:top; + border-top:1px solid #dddddd; +} + .table > thead > tr > th { + vertical-align:bottom; + border-bottom:2px solid #dddddd; +} + .table > caption + thead > tr:first-child > th, .table > caption + thead > tr:first-child > td, .table > colgroup + thead > tr:first-child > th, .table > colgroup + thead > tr:first-child > td, .table > thead:first-child > tr:first-child > th, .table > thead:first-child > tr:first-child > td { + border-top:0; +} + .table > tbody + tbody { + border-top:2px solid #dddddd; +} + .table .table { + background-color:white; +} + +label { + display:inline-block; + margin-bottom:5px; +} +input[type="radio"],input[type="checkbox"] { + margin:4px 0 0; + margin-top:1px; + line-height:normal; +} +input[type="file"] { + display:block; +} +select[multiple],select[size] { + height:auto; +} +select optgroup { + font-size:inherit; + font-style:inherit; +} +input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus { + outline:thin dotted #333; + outline:5px auto -webkit-focus-ring-color; + outline-offset:-2px; +} + +.label { + display:inline; + padding:.2em .6em .3em; + font-size:75%; + line-height:1; + color:white; + text-align:center; + white-space:nowrap; + vertical-align:baseline; + border-radius:.25em; +} + .label[href]:hover, .label[href]:focus { + color:white; + text-decoration:none; + cursor:pointer; +} + .label:empty { + display:none; +} +.clearfix:before, .clearfix:after { + content:" "; + /* 1 */ + display:table; + /* 2 */ + } +.clearfix:after { + clear:both; +} +.pull-right { + float:right !important; +} +.pull-left { + float:left !important; +} + +* { + margin: 0px; + padding: 0px; + text-decoration: none; + outline: none; } + + +a { + color: #78808a; } + + a:hover, a:active, a:focus { + cursor: pointer; + outline: 0px none; + text-decoration: none; + color: #5a6573; } + + +.label { + font-size: 10px; + text-shadow: none; } + + + +.main-content { + position: relative; + margin-left: 251px; } + + + +h1, h2, h3, h4, h5, h6, th { + color: #5f5f5f; + } + + + + +.note { + color: #909090; + font-style: italic; + font-size: 11px; + margin-bottom: 10px; } + + +.box { + box-shadow: 0 0 10px 0 #cccccc; + background: #fbfbfb; + border: 1px solid #cdcdcd; + border-radius: 3px; + margin-bottom: 20px; } + + .box .box-header, .box .box-footer { + *zoom: 1; + background: #eaeaea; + background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjUwJSIgeTE9IjAlIiB4Mj0iNTAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZkZmRmZCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VhZWFlYSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); + background-size: 100%; + background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fdfdfd), color-stop(100%, #eaeaea)); + background-image: -webkit-linear-gradient(top, #fdfdfd, #eaeaea); + background-image: -moz-linear-gradient(top, #fdfdfd, #eaeaea); + background-image: -o-linear-gradient(top, #fdfdfd, #eaeaea); + background-image: linear-gradient(top, #fdfdfd, #eaeaea); + text-shadow: 0 1px white; + border-bottom: 1px solid #CDCDCD; + color: #636363; + } + + .box .box-header:before, .box .box-header:after, .box .box-footer:before, .box .box-footer:after { + display: table; + content: ""; + line-height: 0; } + + .box .box-header:after, .box .box-footer:after { + clear: both; } + + .box .box-header .title, .box .box-footer .title { + float: left; + display: block; + padding: 10px; + font-size: 12px; + } + + .box .box-header .box-toolbar, .box .box-footer .box-toolbar { + margin: 0; + padding: 0; + float: right; + list-style: none; } + + .box .box-header .box-toolbar .ibutton-container, .box .box-footer .box-toolbar .ibutton-container { + margin-top: 6px; } + + .box .box-header .box-toolbar > li, .box .box-footer .box-toolbar > li { + position: relative; + float: left; + margin-left: 15px; + line-height: 37px; + padding-right: 10px; + color: #636363; + font-size: 12px; } + + .box .box-header .box-toolbar > li ul, .box .box-footer .box-toolbar > li ul { + left: auto; + right: 0; } + + .box .box-header .box-toolbar > li.toolbar-link, .box .box-footer .box-toolbar > li.toolbar-link { + padding-right: 0; } + + .box .box-header .box-toolbar > li.toolbar-link > a, .box .box-footer .box-toolbar > li.toolbar-link > a { + border-left: 1px solid #cecece; + height: 37px; + line-height: 37px; + display: block; + padding: 0 10px; } + + .box .box-header .box-toolbar > li.toolbar-link > a i, .box .box-footer .box-toolbar > li.toolbar-link > a i { + font-size: 16px; } + + .box .box-header .box-toolbar > li.toolbar-link > a:hover, .box .box-footer .box-toolbar > li.toolbar-link > a:hover { + background: #efefef; + background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjUwJSIgeTE9IjAlIiB4Mj0iNTAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VmZWZlZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); + background-size: 100%; + background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(100%, #efefef)); + background-image: -webkit-linear-gradient(top, #ffffff, #efefef); + background-image: -moz-linear-gradient(top, #ffffff, #efefef); + background-image: -o-linear-gradient(top, #ffffff, #efefef); + background-image: linear-gradient(top, #ffffff, #efefef); } + + .box .box-header .box-toolbar > li.toolbar-link > a:active, .box .box-footer .box-toolbar > li.toolbar-link > a:active { + background: #e5e5e5; } + + .box .box-header .box-toolbar > li > i, .box .box-footer .box-toolbar > li > i { + font-size: 14px; + height: 37px; + line-height: 37px; } + + .box .box-header .box-toolbar > li.open > a, .box .box-footer .box-toolbar > li.open > a { + background: #eee; } + + .box .box-header { + -moz-border-radius-topright: 3px; + -webkit-border-top-right-radius: 3px; + border-top-right-radius: 3px; + -moz-border-radius-topleft: 3px; + -webkit-border-top-left-radius: 3px; + border-top-left-radius: 3px; } + + .box .box-footer { + -moz-border-radius-bottomright: 3px; + -webkit-border-bottom-right-radius: 3px; + border-bottom-right-radius: 3px; + -moz-border-radius-bottomleft: 3px; + -webkit-border-bottom-left-radius: 3px; + border-bottom-left-radius: 3px; + border-bottom: none; + border-top: 1px solid #dddddd; } + + .box .box-footer .pagination { + margin: 0; } + + .box .box-footer.flat { + border-top: none; + background: #f1f1f1; + background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjUwJSIgeTE9IjAlIiB4Mj0iNTAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZiZmJmYiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2YxZjFmMSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); + background-size: 100%; + background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fbfbfb), color-stop(100%, #f1f1f1)); + background-image: -webkit-linear-gradient(top, #fbfbfb, #f1f1f1); + background-image: -moz-linear-gradient(top, #fbfbfb, #f1f1f1); + background-image: -o-linear-gradient(top, #fbfbfb, #f1f1f1); + background-image: linear-gradient(top, #fbfbfb, #f1f1f1); } + + +.box-list { + list-style: none; + margin: 0; } + + .box-list > li { + line-height: 24px; + *zoom: 1; + background: #f1f1f1; + background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjUwJSIgeTE9IjAlIiB4Mj0iNTAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZiZmJmYiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2YxZjFmMSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); + background-size: 100%; + background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fbfbfb), color-stop(100%, #f1f1f1)); + background-image: -webkit-linear-gradient(top, #fbfbfb, #f1f1f1); + background-image: -moz-linear-gradient(top, #fbfbfb, #f1f1f1); + background-image: -o-linear-gradient(top, #fbfbfb, #f1f1f1); + background-image: linear-gradient(top, #fbfbfb, #f1f1f1); + text-shadow: 0 1px white; + padding: 10px; + border-bottom: 1px solid #ddd; } + + .box-list > li:before, .box-list > li:after { + display: table; + content: ""; + line-height: 0; } + + .box-list > li:after { + clear: both; } + + .box-list > li:last-child { + border-bottom: none; } + + .box-list .fields li { + line-height: 23px; } + + +.box-section { + border-bottom: 1px solid #ddd; + margin-left: 0; + margin-right: 0; + border-top: 1px solid #fff; + padding: 15px; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } + + .box-section:last-child { + border-bottom: none; } + + + +.box .box-header .nav { + margin-bottom: 0; } + +.box .box-header .nav-tabs + .title { + float: right; } + +.box .box-header .nav-tabs { + border-bottom: none; } + + .box .box-header .nav-tabs > .active > a, .box .box-header .nav-tabs > .active > a:hover { + background: #fbfbfb; + border-left-color: #dddddd; + border-right-color: #dddddd; + border-top-color: transparent; + border-radius: 0; } + + .box .box-header .nav-tabs.nav-tabs-left { + float: left; } + + .box .box-header .nav-tabs.nav-tabs-left li:first-child a { + border-left: 0; + -moz-border-radius-topleft: 3px; + -webkit-border-top-left-radius: 3px; + border-top-left-radius: 3px; } + + .box .box-header .nav-tabs.nav-tabs-right { + float: right; } + + .box .box-header .nav-tabs.nav-tabs-right li:last-child a { + border-right: 0; + -moz-border-radius-topright: 3px; + -webkit-border-top-right-radius: 3px; + border-top-right-radius: 3px; + margin-right: 0; } + +.box .box-header .nav > li > a:hover { + border-color: transparent; + background: none; } + + +.box-header .tooltip { + line-height: 20px !important; + text-shadow: none; } + +.box-header .progress { + margin-top: 15px; } + +.box-header .input-with-submit input { + margin-bottom: 0; + margin-top: 5px; } + + + + +.to-right .dropdown-menu { + top: 0px; + left: 100%; + margin-left: 10px; + border-radius: 4px; + float: none; + width: 100%; + box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.1) inset; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } + + .to-right .dropdown-menu:before { + content: ''; + display: inline-block; + border-top: 7px solid transparent !important; + border-left: 7px solid transparent !important; + border-right: 8px solid #11161A; + border-bottom: 7px solid transparent !important; + position: absolute; + top: 12px; + left: -15px; } + + + + + + + +.box form { + padding: 0; } + + +form { + margin-bottom: 0; } + + +.input-group, .input-group { + height: 36px; + line-height: 36px; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + width: 100%; + position: relative; + z-index: 1; } + + .input-group .input-group-addon i, .input-group .input-group-addon i { + line-height: 26px; } + + .input-group *, .input-group * { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } + + .input-group a.input-group-addon, .input-group span.input-group-addon, .input-group a.input-group-addon, .input-group span.input-group-addon { + min-width: 36px; + color: #5a6573; + position: absolute; + height: 100%; + z-index: 2; + box-shadow: inset 0 1px 2px white; + border: 1px solid #ccc; + background: #eaeaea; + background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjUwJSIgeTE9IjAlIiB4Mj0iNTAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZkZmRmZCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VhZWFlYSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); + background-size: 100%; + background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fdfdfd), color-stop(100%, #eaeaea)); + background-image: -webkit-linear-gradient(top, #fdfdfd, #eaeaea); + background-image: -moz-linear-gradient(top, #fdfdfd, #eaeaea); + background-image: -o-linear-gradient(top, #fdfdfd, #eaeaea); + background-image: linear-gradient(top, #fdfdfd, #eaeaea); + padding-left: 10px; + padding-right: 10px; } + + .input-group a.input-group-addon:active, .input-group span.input-group-addon:active, .input-group a.input-group-addon:active, .input-group span.input-group-addon:active { + background: #eee; } + + .input-group ul.input-group-addon, .input-group ul.input-group-addon { + list-style: none; + position: absolute; + z-index: 2; + background: none; + border: none; + padding: 0; + margin: 0; + height: 100%; + top: 1px; + right: 2px; } + + .input-group ul.input-group-addon li, .input-group ul.input-group-addon li { + float: left; + margin-left: 10px; + line-height: 32px; + height: 32px; } + + .input-group ul.input-group-addon li a, .input-group ul.input-group-addon li button, .input-group ul.input-group-addon li a, .input-group ul.input-group-addon li button { + vertical-align: middle; } + + .input-group ul.input-group-addon li a.btn, .input-group ul.input-group-addon li button.btn, .input-group ul.input-group-addon li a.btn, .input-group ul.input-group-addon li button.btn { + border-radius: 3px; } + + .input-group ul.input-group-addon li .btn, .input-group ul.input-group-addon li .btn { + padding: 0; + line-height: 25px; + height: 25px; + padding-left: 10px; + padding-right: 10px; + margin-right: 5px; } + + .input-group input[type="text"], .input-group input[type="password"], .input-group input[type="email"], .input-group input[type="number"], .input-group input[type="text"], .input-group input[type="password"], .input-group input[type="email"], .input-group input[type="number"] { + height: 36px; + width: 100%; + z-index: 1; + border-radius: 4px; } + + +.box .input-group, .box .input-group { + margin-bottom: 0; } + + + + + + + +input[type="text"] { + box-shadow: none; + border-radius: 0; + font-size: 12px; + color: #858585; + padding: 0 0 0 5px; + border: 1px solid #d7d7d7; + display: inline-block; + background: #fdfdfd; + height: 26px; + line-height: 26px; } + +textarea { + box-shadow: none; + border-radius: 0; + font-size: 12px; + color: #474747; + padding: 0 0 0 5px; + border: 1px solid #d7d7d7; + display: inline-block; + background: #fdfdfd; + line-height: 20px; } + + input[type="text"]:focus { + box-shadow: none; + border: 1px solid #68A6CE; } + + textarea:focus { + box-shadow: none; + } + +textarea { + height: auto; } + + +label { + font-size: 12px; + color: #5F5F5F; } + + + + +.input-with-submit { + position: relative; } + + .input-with-submit button { + background: transparent; + border: none; + position: absolute; + right: 2px; + top: 7px; + height: 22px; + line-height: 22px; } + + .input-with-submit i { + color: #909090; } + + + +.table-normal { + margin-bottom: 0; + color: #5a6573; } + + .table-normal tbody td, .table-normal thead td { + border-left: 1px solid #eaebef; } + + .table-normal tbody td:first-child, .table-normal thead td:first-child { + border-left: none; } + + .table-normal tbody td { + border-top: 1px solid #eaebef; } + + .table-normal thead td { + text-align: center; + font-size: 11px; + padding: 3px 5px 2px 5px; + color: #666; + height: 25px; + line-height: 25px; + font-size: 12px; + text-shadow: 0 1px rgba(255, 255, 255, 0.5); + background: #eaeaea; + background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjUwJSIgeTE9IjAlIiB4Mj0iNTAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZkZmRmZCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VhZWFlYSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); + background-size: 100%; + background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fdfdfd), color-stop(100%, #eaeaea)); + background-image: -webkit-linear-gradient(top, #fdfdfd, #eaeaea); + background-image: -moz-linear-gradient(top, #fdfdfd, #eaeaea); + background-image: -o-linear-gradient(top, #fdfdfd, #eaeaea); + background-image: linear-gradient(top, #fdfdfd, #eaeaea); + border-left: 1px solid #d1d2da; + border-right: 1px solid #d1d2da; + border-bottom: 1px solid #d1d2da; } + + .table-normal thead td:first-child { + border-left: none; } + + .table-normal thead td:last-child { + border-right: none; } + + .table-normal tbody td { + padding: 7px 11px; + vertical-align: middle; } + + .table-normal tbody tr { + border-top: 1px solid #eaebef; } + + .table-normal tbody tr:nth-child(even) { + background: #F3F4F8; } + + .table-normal .icon { + width: 30px; + text-align: center; } + +.help-button{ + display:inline-block; + height:20px; + width:20px; + line-height:17px; + text-align:center; + padding:0; + background-color:#418ce4; + color:#FFF; + font-size:12px; + cursor:pointer; + margin-left:4px;border-radius:100%; + border-color:#FFF; + border:2px solid #FFF;-webkit-box-shadow:0 1px 0 1px rgba(0,0,0,0.2); + box-shadow:0 1px 0 1px rgba(0,0,0,0.2); +} + +.editor_button { + float:left; + cursor:pointer; + padding-left: 2px; + padding-right: 2px; +} + +.editor_buttoncl { + float:left; + cursor:pointer; + padding-left: 1px; + padding-right: 1px; + border-left: 1px solid #BBB; + border-right: 1px solid #BBB; +} + +.editbclose { + float:right; + cursor:pointer; +} + +.findrelated { + width:600px; + background: #ffc;border:1px solid #9E9E9E; + padding: 5px;margin-top: 7px; + margin-right: 10px; +} + +.settingstd { + vertical-align:middle !important; +} +.settingsgr td { + vertical-align:middle !important; +} + + + +.form-group { + margin-bottom:15px; +} +.form-horizontal .form-group { + margin-left:-15px; + margin-right:-15px; +} + .form-horizontal .form-group:before, .form-horizontal .form-group:after { + content:" "; + /* 1 */ + display:table; + /* 2 */ + } + .form-horizontal .form-group:after { + clear:both; +} + + +.btn { + color: #fff; + -webkit-border-radius: 2px; + -moz-border-radius: 2px; + -ms-border-radius: 2px; + -o-border-radius: 2px; + border-radius: 2px; + font-size: 11px; + font-weight: 600; + text-shadow: 0 -1px #6f6f6f; } + + .btn:hover, .btn:active, .btn:focus { + color: #fff; } + + .btn.btn-lg { + font-size: 12px; } + + .btn.btn-default { + border: 1px solid #d4d4d4; + -webkit-box-shadow: inset 0 1px 2px white; + -moz-box-shadow: inset 0 1px 2px white; + box-shadow: inset 0 1px 2px white; + background: #e9e9e9; + background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjUwJSIgeTE9IjAlIiB4Mj0iNTAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZkZmRmZCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2U5ZTllOSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); + background-size: 100%; + background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fdfdfd), color-stop(100%, #e9e9e9)); + background-image: -webkit-linear-gradient(top, #fdfdfd, #e9e9e9); + background-image: -moz-linear-gradient(top, #fdfdfd, #e9e9e9); + background-image: -o-linear-gradient(top, #fdfdfd, #e9e9e9); + background-image: linear-gradient(top, #fdfdfd, #e9e9e9); } + + .btn.btn-red { + border: 1px solid #a54747; + -webkit-box-shadow: inset 0 1px 2px #cd8b8b; + -moz-box-shadow: inset 0 1px 2px #cd8b8b; + box-shadow: inset 0 1px 2px #cd8b8b; + background: #b95d5d; + background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjUwJSIgeTE9IjAlIiB4Mj0iNTAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2M1Nzk3OSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2I5NWQ1ZCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); + background-size: 100%; + background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #c57979), color-stop(100%, #b95d5d)); + background-image: -webkit-linear-gradient(top, #c57979, #b95d5d); + background-image: -moz-linear-gradient(top, #c57979, #b95d5d); + background-image: -o-linear-gradient(top, #c57979, #b95d5d); + background-image: linear-gradient(top, #c57979, #b95d5d); } + + .btn.btn-green { + border: 1px solid #6d963b; + -webkit-box-shadow: inset 0 1px 2px #a2c873; + -moz-box-shadow: inset 0 1px 2px #a2c873; + box-shadow: inset 0 1px 2px #a2c873; + background: #82b346; + background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjUwJSIgeTE9IjAlIiB4Mj0iNTAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzk2YzE2MSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzgyYjM0NiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); + background-size: 100%; + background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #96c161), color-stop(100%, #82b346)); + background-image: -webkit-linear-gradient(top, #96c161, #82b346); + background-image: -moz-linear-gradient(top, #96c161, #82b346); + background-image: -o-linear-gradient(top, #96c161, #82b346); + background-image: linear-gradient(top, #96c161, #82b346); } + + .btn.btn-blue { + border: 1px solid #337ca1; + -webkit-box-shadow: inset 0 1px 2px #6eb0d1; + -moz-box-shadow: inset 0 1px 2px #6eb0d1; + box-shadow: inset 0 1px 2px #6eb0d1; + background: #3d94c0; + background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjUwJSIgeTE9IjAlIiB4Mj0iNTAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzViYTVjYiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzNkOTRjMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); + background-size: 100%; + background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5ba5cb), color-stop(100%, #3d94c0)); + background-image: -webkit-linear-gradient(top, #5ba5cb, #3d94c0); + background-image: -moz-linear-gradient(top, #5ba5cb, #3d94c0); + background-image: -o-linear-gradient(top, #5ba5cb, #3d94c0); + background-image: linear-gradient(top, #5ba5cb, #3d94c0); } + + .btn.btn-gray { + border: 1px solid #626e7f; + -webkit-box-shadow: inset 0 1px 2px #9aa4b1; + -moz-box-shadow: inset 0 1px 2px #9aa4b1; + box-shadow: inset 0 1px 2px #9aa4b1; + background: #758294; + background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjUwJSIgeTE9IjAlIiB4Mj0iNTAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzhjOTdhNiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzc1ODI5NCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); + background-size: 100%; + background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #8c97a6), color-stop(100%, #758294)); + background-image: -webkit-linear-gradient(top, #8c97a6, #758294); + background-image: -moz-linear-gradient(top, #8c97a6, #758294); + background-image: -o-linear-gradient(top, #8c97a6, #758294); + background-image: linear-gradient(top, #8c97a6, #758294); } + + .btn.btn-black { + border: 1px solid #5a5a5a; + -webkit-box-shadow: inset 0 1px 2px #909090; + -moz-box-shadow: inset 0 1px 2px #909090; + box-shadow: inset 0 1px 2px #909090; + background: #6f6f6f; + background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjUwJSIgeTE9IjAlIiB4Mj0iNTAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzgzODM4MyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzZmNmY2ZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); + background-size: 100%; + background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #838383), color-stop(100%, #6f6f6f)); + background-image: -webkit-linear-gradient(top, #838383, #6f6f6f); + background-image: -moz-linear-gradient(top, #838383, #6f6f6f); + background-image: -o-linear-gradient(top, #838383, #6f6f6f); + background-image: linear-gradient(top, #838383, #6f6f6f); } + + .btn.btn-lightblue { + border: 1px solid #3692bb; + -webkit-box-shadow: inset 0 1px 2px #81bfdb; + -moz-box-shadow: inset 0 1px 2px #81bfdb; + box-shadow: inset 0 1px 2px #81bfdb; + background: #4da5cc; + background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjUwJSIgeTE9IjAlIiB4Mj0iNTAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzZkYjVkNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzRkYTVjYyIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); + background-size: 100%; + background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #6db5d5), color-stop(100%, #4da5cc)); + background-image: -webkit-linear-gradient(top, #6db5d5, #4da5cc); + background-image: -moz-linear-gradient(top, #6db5d5, #4da5cc); + background-image: -o-linear-gradient(top, #6db5d5, #4da5cc); + background-image: linear-gradient(top, #6db5d5, #4da5cc); } + + .btn.btn-gold { + border: 1px solid #a87a27; + -webkit-box-shadow: inset 0 1px 2px #daaf61; + -moz-box-shadow: inset 0 1px 2px #daaf61; + box-shadow: inset 0 1px 2px #daaf61; + background: #c9922f; + background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjUwJSIgeTE9IjAlIiB4Mj0iNTAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Q1YTQ0YyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2M5OTIyZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); + background-size: 100%; + background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #d5a44c), color-stop(100%, #c9922f)); + background-image: -webkit-linear-gradient(top, #d5a44c, #c9922f); + background-image: -moz-linear-gradient(top, #d5a44c, #c9922f); + background-image: -o-linear-gradient(top, #d5a44c, #c9922f); + background-image: linear-gradient(top, #d5a44c, #c9922f); } + + .btn.btn-sea { + border: 1px solid #39534f; + -webkit-box-shadow: inset 0 1px 2px #64928d; + -moz-box-shadow: inset 0 1px 2px #64928d; + box-shadow: inset 0 1px 2px #64928d; + background: #496b67; + background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjUwJSIgeTE9IjAlIiB4Mj0iNTAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzVhODM3ZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzQ5NmI2NyIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); + background-size: 100%; + background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5a837e), color-stop(100%, #496b67)); + background-image: -webkit-linear-gradient(top, #5a837e, #496b67); + background-image: -moz-linear-gradient(top, #5a837e, #496b67); + background-image: -o-linear-gradient(top, #5a837e, #496b67); + background-image: linear-gradient(top, #5a837e, #496b67); } + + + .btn.btn-brown { + border: 1px solid #856733; + -webkit-box-shadow: inset 0 1px 2px #c29e61; + -moz-box-shadow: inset 0 1px 2px #c29e61; + box-shadow: inset 0 1px 2px #c29e61; + background: #a27e3f; + background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjUwJSIgeTE9IjAlIiB4Mj0iNTAlIiB5Mj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2JiOTM0ZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2EyN2UzZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); + background-size: 100%; + background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #bb934f), color-stop(100%, #a27e3f)); + background-image: -webkit-linear-gradient(top, #bb934f, #a27e3f); + background-image: -moz-linear-gradient(top, #bb934f, #a27e3f); + background-image: -o-linear-gradient(top, #bb934f, #a27e3f); + background-image: linear-gradient(top, #bb934f, #a27e3f); } + \ No newline at end of file diff --git a/engine/skins/images/linkenso.png b/engine/skins/images/linkenso.png new file mode 100644 index 0000000..696f3c2 Binary files /dev/null and b/engine/skins/images/linkenso.png differ diff --git a/info.txt b/info.txt new file mode 100644 index 0000000..9d6d51a --- /dev/null +++ b/info.txt @@ -0,0 +1,80 @@ + LinkEnso DataLife Engine + +* : + . + +* : +1. . +2. upload . +3. http://site.ru/linkenso_installer.php . + +* : +1. linkenso_uninstaller.php . +2. . +3. linkenso_uninstaller.php. + +* fullstory.tpl {include file="engine/modules/linkenso.php?param1=value1¶m2=value2"} + +* "?param1=value1¶m2=value2" - ? & + +* +{include file='engine/modules/linkenso.php?post_id={news-id}&links=3&scan=all_cat&anchor=title&title=name'} + + , tpl : + * post_id - id , {news-id} + * links - , + + * date - + * 2 : + old - + new - + + * ring - + * 2 : + yes - , .. "" + no - , , + + * scan - + * 3 : + all_cat - + same_cat - , + global_cat - + * same_cat global_cat " " + + * anchor - + * 2 : + name - + title - title + + * title - title + * 2 title: + title - title title + name - title + empty - title + + * image - + * 3 : + full_story - 1- + short_story - 1- + '. ' - , + + * limit - , + +* , + * linkenso.tpl - , : + {link} - + {link-url} - URL + {anchor} - + {title} - title + {short-story} - , html + {full-story} - , html + {image} - (src) + [link][/link] - , + + {link-category} - , , . + {category} - , . + {category-icon} - , ( 5 - 5 ). linkenso noicon.png + {category-url} - URL , . + + [show_image][/show_image] - , {image}. , + [not_show_image][/not_show_image] - , {image} . , \ No newline at end of file diff --git a/linkenso_installer.php b/linkenso_installer.php new file mode 100644 index 0000000..5359cfa --- /dev/null +++ b/linkenso_installer.php @@ -0,0 +1,83 @@ + + + + LinkEnso + + + + + +

+ +
+
 
+
+
+ +
+
+
 
+
+
+ + + + LinkEnso!'; + $output .= ''; + $output .= '

! linkenso_installer.php !

'; + + // $_POST linkenso_install, , + if(!empty($_POST['linkenso_install'])) + { + // config + include_once ('engine/data/config.php'); + + // DLE API + include ('engine/api/api.class.php'); + + // + $dle_api->install_admin_module('linkenso', 'LinkEnso - ', ' ', 'linkenso.png'); + + // + $output .= '

'; + $output .= ' ! ! !'; + $output .= '

'; + } + + // $_POST , + else + { + // + $output .= '

'; + $output .= '

'; + $output .= ''; + $output .= ''; + $output .= '
'; + $output .= '

'; + } + + $output .= '

'; + $output .= ' '; + $output .= '

'; + + // , + return $output; + } + +?> \ No newline at end of file diff --git a/linkenso_uninstaller.php b/linkenso_uninstaller.php new file mode 100644 index 0000000..3df2e58 --- /dev/null +++ b/linkenso_uninstaller.php @@ -0,0 +1,90 @@ + + + + LinkEnso PRO + + + + + +
+ +
+
 
+
+
+ +
+
+
 
+
+
+ + + + LinkEnso PRO!'; + $output .= '

! linkenso_uninstaller.php !

'; + $output .= '

'; + $output .= ' , :'; + $output .= '

'; + $output .= '

'; + + // $_POST linkenso_uninstall, , + if(!empty($_POST['linkenso_uninstall'])) + { + // config + include_once ('engine/data/config.php'); + + // DLE API + include ('engine/api/api.class.php'); + + // + $dle_api->uninstall_admin_module('linkenso'); + + // + $output .= '

'; + $output .= ' !'; + $output .= '

'; + } + + // $_POST , + else + { + // + $output .= '

'; + $output .= '

'; + $output .= ''; + $output .= ''; + $output .= '
'; + $output .= '

'; + } + + $output .= '

'; + $output .= ' '; + $output .= '

'; + + // , + return $output; + } + +?> diff --git a/templates/Default/linkenso/.htaccess b/templates/Default/linkenso/.htaccess new file mode 100644 index 0000000..d1163bf --- /dev/null +++ b/templates/Default/linkenso/.htaccess @@ -0,0 +1,2 @@ +Order Deny,Allow +Allow from all diff --git a/templates/Default/linkenso/index.htm b/templates/Default/linkenso/index.htm new file mode 100644 index 0000000..7d13843 --- /dev/null +++ b/templates/Default/linkenso/index.htm @@ -0,0 +1,8 @@ + + + + +Error!!! + +Error!!! + diff --git a/templates/Default/linkenso/linkenso.tpl b/templates/Default/linkenso/linkenso.tpl new file mode 100644 index 0000000..22a2ab0 --- /dev/null +++ b/templates/Default/linkenso/linkenso.tpl @@ -0,0 +1,5 @@ +
{link}
+
+ [link]{anchor}[/link] +
+
{short-story}
\ No newline at end of file diff --git a/templates/Default/linkenso/noicon.png b/templates/Default/linkenso/noicon.png new file mode 100644 index 0000000..549c8a8 Binary files /dev/null and b/templates/Default/linkenso/noicon.png differ