Установка
  • Залить файлы из папки uploads в корень сайт
  • Запустите файл install.php в корне вашего сайта, а затем удалите
  • В шаблонах откройте файл fullstory.tpl и пропишите в самом низу файла
    HTML:
    {include file="engine/modules/mystatus.php?mysid={myshows}&title={title}&news_id={news-id}"}
    В нужное место ставим
    HTML:
    <div class="status {statuss}">{status}</div>
  • Открываем engine/inc/addnews.php и ищем
    PHP:
    <div class="form-group">
    <label class="control-label col-md-2">{$lang['addnews_cat']}</label>
    <div class="col-md-10">
    <select data-placeholder="{$lang['addnews_cat_sel']}" name="category[]" id="category" onchange="onCategoryChange(this)" $category_multiple style="width:100%;max-width:350px;">{$categories_list}</select>
    </div>
    </div>
    ниже добавляем
    HTML:
     <div class="form-group">
    <label class="control-label col-md-2">MyShows ID</label>
    <div class="col-md-10">
    <input type="text" name="myshows" size="20" >
    </div>
    </div>
    находим
    PHP:
    $disable_index = isset( $_POST['disable_index'] ) ? intval( $_POST['disable_index'] ) : 0;
    ниже ставим
    PHP:
    $myshowsid = intval($_POST['myshows']);
    находим
    PHP:
    tags, metatitle
    после ставим
    PHP:
    , myshowsid
    находим
    PHP:
    '{$_POST['tags']}', '{$metatags['title']}'
    после ставим
    PHP:
    , '$myshowsid'
  • Открываем engine/inc/editnews.php и ищем
    PHP:
    <div class="form-group">
    <label class="control-label col-md-2">{$lang['edit_cat']}</label>
    <div class="col-md-10">
    <select data-placeholder="{$lang['addnews_cat_sel']}" name="category[]" id="category" onchange="onCategoryChange(this)" {$category_multiple} style="width:350px;">{$categories_list}</select>
    </div>
    </div>
    ниже добавляем
    PHP:
     <div class="form-group">
    <label class="control-label col-md-2">MyShows ID</label>
    <div class="col-md-10">
    <input type="text" name="myshows" size="20" value="{$row['myshowsid']}">
    </div>
    </div>
    находим
    PHP:
    $disable_index = isset( $_POST['disable_index'] ) ? intval( $_POST['disable_index'] ) : 0;
    ниже ставим
    [CODE=php]$myshowsid = intval($_POST['myshows']);
    находим (дважды)
    PHP:
    metatitle='{$metatags['title']}'
    после ставим (дважды)
    PHP:
    , myshowsid='{$myshowsid}'
  • Открываем файл engine/modules/show.full.php и находим
    PHP:
    if ($row['metatitle']) $metatags['header_title'] = $row['metatitle'];
    Ниже прописываем
    PHP:
     include ENGINE_DIR . "/data/mystatus.php";
    $xfieldsdata = xfieldsdataload( $row['xfields'] );
    
    $tpl->set("{myshows}", $row['myshowsid']);
    
    //Определяем статус и выводим его
    $xfieldsdata[$mystatus_cfg['xfield']] = trim( $xfieldsdata[$mystatus_cfg['xfield']] );
    
    if($xfieldsdata[$mystatus_cfg['xfield']] == "canceledended") {
    $statusname = $mystatus_cfg['closed'];
    } elseif($xfieldsdata[$mystatus_cfg['xfield']] == "returningseries") {
    $statusname = $mystatus_cfg['onair'];
    } elseif($xfieldsdata[$mystatus_cfg['xfield']] == "tbdothebubble") {
    $statusname = $mystatus_cfg['tbd'];
    } elseif($xfieldsdata[$mystatus_cfg['xfield']] == "onhiatus") {
    $statusname = $mystatus_cfg['pause'];
    } elseif($mystatus_cfg['pilots'] && $xfieldsdata[$mystatus_cfg['xfield']] == "pilotordered") {
    $statusname = $mystatus_cfg['pilot'];
    } elseif($mystatus_cfg['news'] && $xfieldsdata[$mystatus_cfg['xfield']] == "newseries") {
    $statusname = $mystatus_cfg['new'];
    } else {
    $statusname = $mystatus_cfg['none'];
    }
    
    $tpl->set( '{statuss}', $xfieldsdata[$mystatus_cfg['xfield']] );
                            $tpl->set( '{status}', $statusname );
  • Открываем файл engine/modules/show.short.php, engine/modules/show.custom.php (если хотим, чтобы статус отображался и короткой новости или в построенной через кастом) и находим 2ой
    PHP:
     $tpl->compile( 'content' );
    
    }
    
    if( $user_group[$member_id['user_group']]['allow_hide'] ) $tpl->result['content'] = str_ireplace( "[hide]", "", str_ireplace( "[/hide]", "", $tpl->result['content']) );
    Выше прописываем
    PHP:
     include ENGINE_DIR . "/data/mystatus.php";
    $xfieldsdata = xfieldsdataload( $row['xfields'] );
    
    $tpl->set("{myshows}", $row['myshowsid']);
    
    //Определяем статус и выводим его
    $xfieldsdata[$mystatus_cfg['xfield']] = trim( $xfieldsdata[$mystatus_cfg['xfield']] );
    
    if($xfieldsdata[$mystatus_cfg['xfield']] == "canceledended") {
    $statusname = $mystatus_cfg['closed'];
    } elseif($xfieldsdata[$mystatus_cfg['xfield']] == "returningseries") {
    $statusname = $mystatus_cfg['onair'];
    } elseif($xfieldsdata[$mystatus_cfg['xfield']] == "tbdothebubble") {
    $statusname = $mystatus_cfg['tbd'];
    } elseif($xfieldsdata[$mystatus_cfg['xfield']] == "onhiatus") {
    $statusname = $mystatus_cfg['pause'];
    } elseif($mystatus_cfg['pilots'] && $xfieldsdata[$mystatus_cfg['xfield']] == "pilotordered") {
    $statusname = $mystatus_cfg['pilot'];
    } elseif($mystatus_cfg['news'] && $xfieldsdata[$mystatus_cfg['xfield']] == "newseries") {
    $statusname = $mystatus_cfg['new'];
    } else {
    $statusname = $mystatus_cfg['none'];
    }
    
    $tpl->set( '{statuss}', $xfieldsdata[$mystatus_cfg['xfield']] );
    $tpl->set( '{status}', $statusname );
  • В нужное место в shortstory.tpl или в шаблон, что подключён через кастом, ставим
    HTML:
    <div class="status {statuss}">{status}</div>
  • Открываем файл со стилями шаблона и в самый низ прописываем это
    CSS:
    .status,.status.normal {
    float: right;
    margin-top: -35px;
    font-style: normal;
    opacity: 0.6;
    color: #000;
    transition: all 0.3s;
    font-weight: 700;
    }
    .status:hover {
    opacity: 1;
    cursor: pointer;
    animation: shake linear 0.5s;
    animation-iteration-count: 1;
    transform-origin: 50% 0%;
    -webkit-animation: shake linear 0.5s;
    -webkit-animation-iteration-count: 1;
    -webkit-transform-origin: 50% 0%;
    -moz-animation: shake linear 0.5s;
    -moz-animation-iteration-count: 1;
    -moz-transform-origin: 50% 0%;
    -o-animation: shake linear 0.5s;
    -o-animation-iteration-count: 1;
    -o-transform-origin: 50% 0%;
    -ms-animation: shake linear 0.5s;
    -ms-animation-iteration-count: 1;
    -ms-transform-origin: 50% 0%;
    }
    .status.returningseries {
    color: #ebffdd;
    text-shadow: 0 0 1px black,0 0 2px #5cad21,0 0 3px #549e1e,0 0 4px #3d8806;
    }
    .status.canceledended {
    color: #ffd4d4;
    text-shadow: 0 0 1px black,0 0 2px #ff0000,0 0 3px #bf2727,0 0 4px #792323;
    }
    .status.onhiatus {
    color: #ffecbf;
    text-shadow: 0 0 1px black,0 0 2px #ffb300,0 0 3px #cc971a,0 0 4px #daa321;
    }
    .status.tbdonthebubble {
    color: #e8faff;
    text-shadow: 0 0 1px black,0 0 2px #1bc1ff,0 0 3px #4ae7ea,0 0 4px #277890;
    }
    .status.pilotordered {
    color: #e0ebff;
    text-shadow: 0 0 1px black,0 0 2px #0058ff,0 0 3px #275dc5,0 0 4px #93aee0;
    }
    .status.newseries {
    color: #fae2ff;
    text-shadow: 0 0 1px black,0 0 2px #d600ff,0 0 3px #89319a,0 0 4px #631a71;
    }
    
    @keyframes shake{
    0% {
    transform: rotate(0deg) ;
    }
    20% {
    transform: rotate(15deg) ;
    }
    40% {
    transform: rotate(-10deg) ;
    }
    60% {
    transform: rotate(5deg) ;
    }
    80% {
    transform: rotate(-5deg) ;
    }
    100% {
    transform: rotate(0deg) ;
    }
    }
    
    @-moz-keyframes shake{
    0% {
    -moz-transform: rotate(0deg) ;
    }
    20% {
    -moz-transform: rotate(15deg) ;
    }
    40% {
    -moz-transform: rotate(-10deg) ;
    }
    60% {
    -moz-transform: rotate(5deg) ;
    }
    80% {
    -moz-transform: rotate(-5deg) ;
    }
    100% {
    -moz-transform: rotate(0deg) ;
    }
    }
    
    @-webkit-keyframes shake {
    0% {
    -webkit-transform: rotate(0deg) ;
    }
    20% {
    -webkit-transform: rotate(15deg) ;
    }
    40% {
    -webkit-transform: rotate(-10deg) ;
    }
    60% {
    -webkit-transform: rotate(5deg) ;
    }
    80% {
    -webkit-transform: rotate(-5deg) ;
    }
    100% {
    -webkit-transform: rotate(0deg) ;
    }
    }
    
    @-o-keyframes shake {
    0% {
    -o-transform: rotate(0deg) ;
    }
    20% {
    -o-transform: rotate(15deg) ;
    }
    40% {
    -o-transform: rotate(-10deg) ;
    }
    60% {
    -o-transform: rotate(5deg) ;
    }
    80% {
    -o-transform: rotate(-5deg) ;
    }
    100% {
    -o-transform: rotate(0deg) ;
    }
    }
    
    @-ms-keyframes shake {
    0% {
    -ms-transform: rotate(0deg) ;
    }
    20% {
    -ms-transform: rotate(15deg) ;
    }
    40% {
    -ms-transform: rotate(-10deg) ;
    }
    60% {
    -ms-transform: rotate(5deg) ;
    }
    80% {
    -ms-transform: rotate(-5deg) ;
    }
    100% {
    -ms-transform: rotate(0deg) ;
    }
    }
    
    @-o-keyframes animationFrames {
    0% {
    -o-transform: rotate(0deg) ;
    }
    20% {
    -o-transform: rotate(15deg) ;
    }
    40% {
    -o-transform: rotate(-10deg) ;
    }
    60% {
    -o-transform: rotate(5deg) ;
    }
    80% {
    -o-transform: rotate(-5deg) ;
    }
    100% {
    -o-transform: rotate(0deg) ;
    }
    }
    
    @-ms-keyframes animationFrames {
    0% {
    -ms-transform: rotate(0deg) ;
    }
    20% {
    -ms-transform: rotate(15deg) ;
    }
    40% {
    -ms-transform: rotate(-10deg) ;
    }
    60% {
    -ms-transform: rotate(5deg) ;
    }
    80% {
    -ms-transform: rotate(-5deg) ;
    }
    100% {
    -ms-transform: rotate(0deg) ;
    }
    }
  • Создаём доп. поле
    Название поля, Описание поля и Категория на своё усмотрение
    Тип поля: Список
    Значение по умолчанию:
    Для DLE 11 и выше можно сделать так
    Код:
    returningseries|Снимаетсяnewseries|Новинка
    pilotordered|Пилотная серия
    canceledended|Закрыт
    onhiatus|Приостановлен
    tbdonthebubble|Под вопросом
    Для версий ниже поля должны выглядеть так
    Код:
    returningseriesnewseries
    pilotordered
    canceledended
    onhiatus
    tbdonthebubble
Пример подключения: {include file="engine/modules/mystatus.php?mysid={myshows}&title={title}&news_id={news-id}"}

  • mysid - это поле нужно для выяснения ID с MyShows
  • title - к этому тегу подключается любая комбинация названия. Желательно иметь такую комбинацию: Русское название English Name (ГОД)
  • news_id - это определяющее самой новости
Внимание!

Не будет работать, если подключать доп. поля в режиме перелинковки. Для этого нужно создавать и/ли определять доп. поля по новой