Your IP : 3.142.239.146


Current Path : /usr/local/mgr5/skins/orion/src/
Upload File :
Current File : //usr/local/mgr5/skins/orion/src/templates.js

var templates = (function() {
  'use strict';
  // List Template

  var messages =
      '{{~it.message :value :index }}' +
        '<div class="b-message i-message">' +
          '<div class="b-message__inner b-message__inner_status_{{=value.status}}" id="{{=value.id}}">' +
            '<div class="b-message__text {{?value.warning}}b-message__text_warning{{?}}">{{=value.text}}</div>' +
            '{{?value.ref}}' +
              '<div class="l-message__link">' +
                '<a href="{{=value.ref}}" data-href="{{=value.ref}}" target="_blank" class="i-message__more-link {{=value.classes}}">{{=value.refText}}</a>' +
              '</div>' +
            '{{?}}' +
            '<div class="l-message__link">' +
              '<a href="#" data-href="{{=value.dismissRef}}" class="i-message__dismiss-link" data-mn="dismiss">{{=value.dismiss}}</a>' +
            '</div>' +
          '</div>' +
          '<div class="b-message__triangle b-message__triangle_status_{{=value.status}}"></div>' +
        '</div>' +
      '{{~}}';

  //Banner template
  var banner =
      '<div class="b-message i-message">' +
        '<div  class="b-message__inner b-message__inner_status_{{=it.message.status}}" id="{{=it.message.id}}">' +
          '<div class="b-message__text">{{=it.message.text}}</div>' +
            '{{?it.message.ref}}' +
          '<div class="l-message__link">' +
            '<a href="{{=it.message.ref}}" data-href="{{=it.message.ref}}" target="_blank" class="i-message__more-link {{=it.message.classes}}">{{=it.message.refText}}</a>' +
          '</div>' +
          '{{?}}' +
          '<div class="l-message__link">' +
            '<a href="#" data-href="{{=it.message.dismissRef}}" class="i-message__dismiss-link" data-mn="dismiss">{{=it.message.dismiss}}</a>' +
          '</div>' +
        '</div>' +
        '<div class="b-message__triangle b-message__triangle_status_{{=it.message.status}}"></div>' +
      '</div>';

  var toolbar = '{{?it.btng && it.btng.length > 0}}' +
      '<div class="toolbar" {{=it.plidAttr}} {{=it.convertAttr}} id="toolbar-{{=it.id}}">' +
      '<div class="toolbar__btn-move-wr">' +
        '<div class="toolbar__btn-move toolbar__btn-move_dir_left"></div>' +
        '<div class="toolbar__btn-move toolbar__btn-move_dir_right"></div>' +
      '</div>' +
      '<div class="toolbar__inner">' +
    //add toolbar icon
      '{{?it.devMode}}' +
        '<div class="toolbutton-add"><a href="#" class="devel-link-add devel-link-add--toolbutton"  data-tabid="{{=it.id}}"></a></div>' +
      '{{?}}' +
      //foreach
      '{{ var j, l = it.btng.length; for (j = 0; j < l; j++) { }}' +
        '{{ var i = 0, btn = it.btng[j].btn, lb = btn.length; }}' +
        '{{?btn[i] && btn[i].type}}' +
        '<div class="toolgrp ind{{=j}}" {{=lb}} data-name="{{=it.btng[j].name}}" data-id="{{=it.id}}-{{=it.btng[j].name}}" >' +
          '{{ if (btn[i] && btn[i].type) { }}' +
            '<div class="toolbar-button hint {{=btn[i].tClass}} i-tip-target_st_btn_{{=btn[i].type}}" id="tbw-{{=it.id}}-{{=btn[i].tname}}" ' +
              '{{ var hint = ""; if (btn[i].hint) { hint = "data-hint =  \'"  + App.u.escapeQuote(btn[i].hint) + "\'"; hint += "data-hint-mn=\'hint_" + btn[i].tname + "\'"; } }}  {{=hint}}' +
              ' {{ var confirm = ""; if (btn[i].confirm) { confirm = "data-confirm = \'"  + btn[i].confirm + "\'"; confirm += "data-confirm-d = \'"  + btn[i].confirm_delimiter + "\'"; } }}  {{=confirm}}  {{=btn[i].attrs}}>' +
              '<span href="#main-wrapper" data-url="func={{=btn[i].func}}" ' +
                  '{{?btn[i].cgi}} data-cgi="{{=btn[i].cgi}}" {{?}}' +
                  ' {{=btn[i].progressbar}}' +
                  ' {{=it.tabIdAttr}}' +
                  ' data-name="{{=btn[i].tname}}" ' +
                  ' rel="{{=it.id}}"' +
                  ' class="img-link toolbar-button__item-img {{=btn[i].bClass}} " ' +
                  '{{=btn[i].dataType}}' +
                  ' id="{{=btn[i].id}}" data-itemid="{{=it.itemId}}">' +
                '<div class="s-icon s24x24 {{=btn[i].img}}" {{=btn[i].style}}></div>' +
                '<div id="{{=btn[i].progressId}}{{=it.itemId}}"></div>' +
              '</span>' +
              '<span href="#main-wrapper" data-url="func={{=btn[i].func}}" {{?btn[i].cgi}} data-cgi="{{=btn[i].cgi}}" {{?}} {{=btn[i].progressbar}} {{=it.tabIdAttr}} rel="{{=it.id}}" class="toolbar-button__item-text {{=btn[i].bClass}} btntext" {{=btn[i].dataType}}  data-mn="short_{{=btn[i].tname}}" data-name="{{=btn[i].tname}}">{{=btn[i].name}}</span>' +
              '{{?it.devMode}}' +
                '<div class="toolbutton-settings">' +
                  '<a href="#main-wrapper" class="devel-link-settings devel-link-settings--toolbutton" data-elid="{{=btn[i].tname}}" data-tabid="{{=it.id}}"></a>' +
                  '<a href="#main-wrapper" class="devel-link-delete devel-link-delete--toolbutton" data-elid="{{=btn[i].tname}}"  data-name="{{=btn[i].name}}" data-tabid="{{=it.id}}"></a>' +
                '</div>' +
              '{{?}}' +
              '<div class="toolgrp-control" id="tc-{{=it.id}}-{{=it.btng[j].name}}"><div class="triangledown"></div></div>' +
            '</div>' +
            '{{ } }}' +
            //toolgrp-bag
            '<div class="toolgrp-bag" id="tb-{{=it.id}}-{{=it.btng[j].name}}">' +
            '{{ for (i = 1; i < lb; i++) { }}' +
            '{{ if (btn[i].type) { }}' +
              '<div class="toolbar-button hint {{=btn[i].tClass}} ind{{=i}}" id="tbw-{{=it.id}}-{{=btn[i].tname}}" ' +
              '{{ var hint = ""; if (btn[i].hint) { hint = "data-hint = \'"  + App.u.escapeQuote(btn[i].hint) + "\'"; hint += "data-hint-mn=\'hint_" + btn[i].tname + "\'";} }}  {{=hint}}' +
              '  {{ var confirm = ""; if (btn[i].confirm) { confirm = "data-confirm = \'"  + btn[i].confirm + "\'"; confirm += "data-confirm-d = \'"  + btn[i].confirm_delimiter + "\'"; } }}  {{=confirm}} {{=btn[i].attrs}}>' +
                '<span href="#main-wrapper"' +
                  ' data-url="func={{=btn[i].func}}"' +
                  ' {{?btn[i].cgi}} data-cgi="{{=btn[i].cgi}}" {{?}}' +
                  ' {{=btn[i].progressbar}}' +
                  ' {{=it.tabIdAttr}}' +
                  ' data-name="{{=btn[i].tname}}"' +
                  ' rel="{{=it.id}}" ' +
                  ' class="img-link toolbar-button__item-img {{=btn[i].bClass}} "' +
                  ' {{=btn[i].dataType}}' +
                  ' id="{{=btn[i].id}}" data-itemid="{{=it.itemId}}">' +
                  '<div class="s-icon s24x24 {{=btn[i].img}}" {{=btn[i].style}}></div>' +
                  '<div id="{{=btn[i].progressId}}{{=it.itemId}}"></div>' +
                '</span>' +
                '<span href="#main-wrapper"' +
                  ' data-url="func={{=btn[i].func}}"' +
                  ' {{?btn[i].cgi}} data-cgi="{{=btn[i].cgi}}" {{?}}' +
                  ' {{=btn[i].progressbar}}' +
                  ' {{=it.tabIdAttr}}' +
                  ' data-name="{{=btn[i].tname}}" ' +
                  ' rel="{{=it.id}}"' +
                  ' class="{{=btn[i].bClass}} btntext"' +
                  ' {{=btn[i].dataType}} data-mn="short_{{=btn[i].tname}}">{{=btn[i].name}}</span>' +
                //devmode
                '{{?it.devMode}}' +
                  '<div class="toolbutton-settings">' +
                    '<a href="#" class="devel-link-settings devel-link-settings--toolbutton" data-elid="{{=btn[i].tname}}" data-tabid="{{=it.id}}"></a>' +
                    '<a href="#" class="devel-link-delete devel-link-delete--toolbutton" data-elid="{{=btn[i].tname}}" data-name="{{=btn[i].name}}" data-tabid="{{=it.id}}"></a>' +
                  '</div>' +
                '{{?}}' +
              //devmode end
              '</div>' +
            //if end
            '{{ } }}' +
            //for end
          '{{ } }}' +
        '</div>' +
        //toolgrp end
      '</div>' +
      '{{?}}' +
      '{{ }  }}' +
      '</div>' +
      '</div>' +
      //toolbar end
      '{{?}}';

  var tabCont = ' ' +
    '<div id="cont-{{=it.id}}" class="tab-content {{=it.btnview}} {{=it.filter}} init"  data-func={{=it.func}} ' +
    ' data-pnum="{{=it.pNum}}" data-pcnt="{{=it.pcnt}}" data-tabid="{{=it.id}}" ' +
    ' data-tab-type="list" data-itemid="{{=it.itemId}}">' +
      '<div id="{{=it.progressid}}"></div>' +
      '<div id="{{=it.id}}-progressbar-overlay" class="b-tab-overlay" data-tabid="{{=it.id}}"></div>' +
      '<div id="cont-{{=it.id}}-progressbar" class="b-progressbar"></div>' +
      //default progressbar
      '<div id="cont-{{=it.id}}-progressbar-default" class="b-progressbar">' +
        '<div id="{{=it.id}}-progressbar" class="b-progressbar__outer">' +
          '<div class="b-progressbar__inner">' +
            '<div class="b-progressbar__comment">{{=it.comment}}</div>' +
            '<div class="b-progressbar__loader-wr"><div class="b-progressbar__loader b-progressbar__loader_type_animate"></div></div>' +
          '</div>' +
        '</div>' +
      '</div>' +
      //end default progressbar
      //default progressbar end

      '<div class="tab-content-wrapper list-content" id="tcw-{{=it.id}}">' +
      //top bar
      '<div class="topBar">' +
        '<div class="rightBar">' +
        '{{?it.devMode}}' +
          '<a href="{{=it.selfurl}}&out=devel" data-hint="{{=it.hDevel}}" target="_blank" class="hint">' +
            '<div class="s-icon s16x16 l-devel"></div>' +
          '</a>' +
        '{{?}}' +
          '<a href="#" class="reload hint" data-tabid="{{=it.id}}" data-hint="{{=it.hReload}}" data-hint-mn="hint_reloadlist"><img src="{{=it.theme}}img/blue-reload.png" width="16" height="16"/></a>' +
          '{{?it.inmenu}}' +
            '<a href="#" class="i-take-favorite hint {{?!it.favorite}}b-elem_style_gracescale{{?}}" data-hint-unfavorite="{{=it.hFavorite}}" data-hint-favorite="{{=it.hUnfavorite}}" data-state="{{?it.favorite}}favorite{{??}}unfavorite{{?}}">' +
              '<div class="s-icon s16x16 mbar-favorite"></div>' +
            '</a>' +
            '<div class="b-pin i-pin hint {{?!it.pin}}b-elem_style_gracescale{{?}}" data-state="{{?it.pin}}pin{{??}}unpin{{?}}" data-hint-pin="{{=it.hintPin}}" data-hint-unpin="{{=it.hintUnpin}}"></div>' +
          '{{?}}' +
          '<a href="{{=it.permaLink}}" data-clipboard-text="{{=it.permaLink}}" data-hint="{{=it.hCopy}}" target="_blank" data-hint-mn="hint_copylink" class="hint b-permalink" id="permalink-{{=it.id}}"><div class="p-permalink s16x16 s-icons"></div></a>' +
          '{{?it.autoupdate}}' +
            '<a href="#" data-hint="{{=it.hAutoupdate}}" data-tabid="{{=it.id}}" data-hint-mn="hint_autoupdate_stop" class="i-list-icon__stop hint"><div class="s-icon s16x16 p-stop"></div></a>' +
          '{{?}}' +
          '<a href="#" data-hint="{{=it.hSelectAll}}" data-tabid="{{=it.id}}" data-hint-mn="hint_selectall" class="select-all hint"><div class="s-icon s16x16 sb-selectall"></div></a>' +
          '<a href="{{=it.selfurl}}&out=csv" data-hint="{{=it.hExport}}" data-hint-mn="hint_export" target="_blank" class="exel hint"><div class="s-icon s16x16 p-excel"></div></a>' +

          '<a href="{{=it.selfurl}}&out=print" data-hint="{{=it.hPrint}}" data-hint-mn="hint_print" target="_blank" class="print hint"><div class="s-icon s16x16 p-print"></div></a>' +
          '<a href="?{{=it.tsettingsParam}}" data-hint-mn="msg_tsetting" data-url="{{=it.tsettingsParam}}" data-hint="{{=it.tsettings}}" {{=it.tabIdAttr}} rel="{{=it.id}}" class="tsetting hint">' +
            '<div class="s-icon s16x16 l-table"></div>' +
          '</a>' +
          //'<a href="#" class="help hint" data-hint="{{=it.hHelp}}" data-help-type="default" data-help="{{=it.help}}"><div class="s-icon s16x16 sb-help"></div></a>' +
          '<a href="#" class="b-usefulLinks__icon hint i-tip-target_st_help_links" data-hint="{{=it.hHelp}}"><div class="s-icon s16x16 sb-help"></div></a>' +
        '</div>' +
        //top bar end
        //left bar
        '<div class="leftBar b-leftbar b-leftbar_for_list">' +
        //title
          '<div class="reload hint fleft s48x48 s-icon {{=it.tImg}} i-tip-target_st_title_reload" {{=it.tStyle}} data-tabid="{{=it.id}}" data-hint-mn="hint_reloadlist" data-hint="{{=it.hReload}}"></div>' +
          '<span>' +
            '<h2>' +
              '<span class="reload hint b-title i-tip-target_st_typo" data-fn="{{=it.func}}" data-mn="title" data-tabid="{{=it.id}}" data-hint-mn="hint_reloadlist" data-hint="{{=it.hReload}}">{{=it.tabTitle}}</span>' +
              '{{=it.breadcrumb}}' +
              //devmode icons
              '{{ if (it.devMode) { }}' +
              '<div class="list-settings">' +
                '<a href="#" class="devel-link-settings devel-link-settings--list"  data-tabid="{{=it.id}}" data-elid="{{=it.func}}"></a>' + '<a href="#" class="devel-link-settings devel-link-settings--list"  data-tabid="{{=it.id}}" data-elid="{{=it.func}}"></a>' +
              '</div>' +
              '{{ } }}' +

            '</h2>' +
          '</span>' +
          '<div class="clearBoth"></div>' +
        '</div>' +
        //left bar end
        //messages
        messages +
        //messages end
        '<div class="toolbar-wrapper">' +
          //livefilter
          '<div class="tsearch">' +
            '<div class="dib search">' +
              '<input type="text" id="{{=it.id}}-search" data-tabid="{{=it.id}}" class="itsearch b-input" placeholder="Ctrl + Shift + F" value="{{=it.livefilter}}"/>' +
              '<div class="close_tsearch"><a href="javascript:void(0)" data-tabid="{{=it.id}}"><img src="{{=it.theme}}img/search_close.png"/></a></div>' +
            '</div>' +
            '{{?it.filter}}<div class="i-tip-target_st_filter filter-btn b-filter__toggle b-filter__toggle_is_disabled hint" data-hint-mn="hint_filter" data-hint="{{=it.fHelp}}"></div>{{?}}' +
          '</div>' +
          //livefilter end
          //toolbar
          toolbar +
        '</div>' +
          //toolbar end
        //active filter
      '{{?it.filter}}' +
        '<div class="b-filter__save-bar">' +
          '<div class="b-filter__btn-move b-filter__btn-move_dir_left"></div>' +
          '<div class="b-filter__btn-move b-filter__btn-move_dir_right"></div>' +
          '<div class="b-filter__save-bar-inner">' +
        '</div>' +
        '</div>' +
      '{{?}}' +
      '{{?it.afilter.status}}' +
      '<div class="filter-active i-filter-applied">' +
      '<div class="filter-btns">' +
        '<div class="b-button b-button__filter-reset b-button_st_disabled">{{=it.afilter.resetMsg}}</div>' +
        '<div class="b-button b-button__filter-change b-button_st_disabled" class="b-filter__change-btn">{{=it.afilter.editMsg}}</div>' +
      '</div>' +
      '<div class="filter-msg">' +
        '<span class="head-filter-msg">{{=it.afilter.fname || it.afilter.fmsg}}</span> {{=it.afilter.msg}}</div>' +
        '<div class="clearBoth"></div>' +
      '</div>' +
      '{{?}}' +
      //active filter end
      //filter form wrapper
      '<div class="filter-wrapper" id="filter-{{=it.id}}"></div>' +
      //diagram wrappper
      '<div class="diagram-cont" id="diagram-{{=it.id}}"></div>' +
      //page wrapper
      '<div class="pager-wrapper">{{=it.pager}}</div>' +
    '</div>' +
    //content table
    '<div class="content" id="ltwr-{{=it.id}}" data-tabid={{=it.id}}>{{=it.table}}</div>' +
    //content table end
  '</div>';

  var tabContMap = '<div id="cont-{{=it.id}}" class="tab-content" data-tabid="{{=it.id}}" data-tab-type="map" data-func={{=it.func}} data-itemid="{{=it.itemId}}">' +

    '<div id="{{=it.id}}-progressbar-overlay" class="b-tab-overlay" data-tabid="{{=it.id}}"></div>' +
    '<div id="cont-{{=it.id}}-progressbar" class="b-progressbar"></div>' +
    //default progressbar
    '<div id="cont-{{=it.id}}-progressbar-default" class="b-progressbar">' +
      '<div id="{{=it.id}}-progressbar" class="b-progressbar__outer">' +
        '<div class="b-progressbar__inner">' +
          '<div class="b-progressbar__comment">{{=it.comment}}</div>' +
          '<div class="b-progressbar__loader-wr">' +
          '<div class="b-progressbar__loader b-progressbar__loader_type_animate"></div>' +
        '</div>' +
      '</div>' +
      '</div>' +
    '</div>' +

    '<div class="tab-content-wrapper list-content" id="tcw-{{=it.id}}">' +
      '<div class="topBar">' +
        '<div class="rightBar">' +
        '{{?it.devMode}}' +
          '<a href="{{=it.selfurl}}&out=devel" data-hint="{{=it.hDevel}}" target="_blank" class="hint"><div class="s-icon s16x16 l-devel"></div></a>' +
        '{{?}}' +
       '<a href="#" class="reload hint" data-tabid="{{=it.id}}" data-hint="{{=it.hReload}}" data-hint-mn="hint_reload"><img src="{{=it.theme}}img/blue-reload.png" width="16" height="16" /></a>' +
         '{{?it.inmenu}}' +
          '<a href="#" class="i-take-favorite hint {{?!it.favorite}}b-elem_style_gracescale{{?}}" data-hint-unfavorite="{{=it.hFavorite}}" data-hint-favorite="{{=it.hUnfavorite}}" data-state="{{?it.favorite}}favorite{{??}}unfavorite{{?}}">' +
            '<div class="s-icon s16x16 mbar-favorite"></div>' +
          '</a>' +
          '<div class="b-pin i-pin hint {{?!it.pin}}b-elem_style_gracescale{{?}}" data-state="{{?it.pin}}pin{{??}}unpin{{?}}" data-hint-pin="{{=it.hintPin}}" data-hint-unpin="{{=it.hintUnpin}}"></div>' +
         // '<a href="#" class="help hint" data-hint="{{=it.hHelp}}" data-help-type="{{=it.helpType}}" data-help="{{=it.help}}" data-help-func="{{=it.helpurl}}"><div class="s-icon s16x16 sb-help"></div></a>' +
        '{{?}}' +
    '</div>' +
        '<div class="leftBar b-leftbar b-leftbar_for_map">' +
          '<div class="reload hint fleft s48x48 s-icon i-tip-target_st_title_reload {{=it.tImg}}" {{=it.tStyle}} data-tabid="{{=it.id}}" data-hint-mn="hint_reload" data-hint="{{=it.hReload}}"></div>' +
          '<span><h2><span class="reload hint  b-title i-tip-target_st_typo " data-fn="{{=it.func}}" data-mn="title" data-hint-mn="hint_reload" data-tabid="{{=it.id}}" data-hint="{{=it.hReload}}">{{=it.tabTitle}}</span></h2></span>' +
          '<div class="clearBoth">' +
          '</div>' +
      '</div>' +

    messages +

    //toolbar
    toolbar +
      //close topbar
        '</div>' +
    //end toolbar
      '<div class="map" id="{{=it.id}}-map"></div>' +
   '</div>' +

  '</div>';


  //List pager
  var listPager =
      '<div class="slist">{{=it.slist}}</div>' +
      '<div class="pager_list pager-list_type_list">{{=it.pagerList}}</div>' +
      '<div class="page_cnt">' +
        '<span class="page_cnt_lb_began" data-mn="pagershow">{{=it.msgBegan}}</span>' +
        '<input type="text" value="{{=it.cnt}}" maxlength="4" class="cnt pager-list__input b-input b-input_for_pager" name="pcnt"/>' +
        '<span class="page_cnt_lb_end" data-mn="pagerline"> {{=it.msgEnd}}</span>' +
        '<div class="pager-list__input-submit b-button b-button_style_small">OK</div>' +
      '</div>';

  //Empty tab Template
  var tabContEmpty = '<div id="cont-{{=it.id}}"  class="tab-content hidden" data-itemid="{{=it.itemId}}">' +
    '<div id="{{=it.id}}-progressbar-overlay" class="b-tab-overlay" data-tabid="{{=it.id}}"></div>' +
    //default progressbar
    '<div id="cont-{{=it.id}}-progressbar-default" class="b-progressbar">' +
      '<div id="{{=it.id}}-progressbar" class="b-progressbar__outer">' +
      '<div class="b-progressbar__inner">' +
        '<div class="b-progressbar__comment">{{=it.comment}}</div>' +
        '<div class="b-progressbar__loader-wr"><div class="b-progressbar__loader b-progressbar__loader_type_animate"></div></div>' +
      '</div>' +
      '</div>' +
    '</div>' +
  '<div class="inner-content-empty">{{=it.text}}</div>' +
  '</div>';

  //Dashboard Template
  var tabContDashBoard = '<div id="cont-{{=it.id}}" class="tab-content" data-tabid="{{=it.id}}" data-func="dashboard" data-tab-type="dashboard">' +
    '<div id="incont-{{=it.id}}" >' +
      '<div>' +
        '<table class="dash-table">' +
        '<tbody class="b-table__tbody">' +
          '<tr>' +
            '<td colspan="2">' +
              '<div id="dash-top" class="b-dashboard_cell" data-pos="top">{{=it.top}}</div>' +
            '</td>' +
          '<tr>' +
          '<tr>' +
            '<td class="left-row">' +
              '<div id="dash-left" class="b-dashboard_cell" data-pos="left" >{{=it.left}}</div>' +
            '</td>' +
            '<td class="right-row">' +
              '<div id="dash-right" class="b-dashboard_cell" data-pos="right">{{=it.right}}</div>' +
            '</td>' +
          '<tr>' +
        '</tbody>' +
        '</table>' +
      '</div>' +
    '</div>' +
  '</div>';

  //Dashboard block Taskbar Template
  var dashTaskbar = '<div class="toolbar">' +
      '{{~it.toolbar :v :i}}' +
      '{{?v.window || v.link}}' +
      '<div class="toolbar-button">' +
        '<a href="{{=v.window || v.link}}" {{=v.target}} class="toolbar-button__item-img">' +
          '<div class="s-icon s48x48 {{=v.img}}" {{=v.style}}></div>' +
        '</a>' +
        '<a href="{{=v.window || v.link}}" {{=v.target}} data-fn="dashboard" data-mn="taskbar_{{=v.name}}">{{=v.msg}}</a>' +
      '</div>' +
      '{{??}}' +
      '<div data-hint="{{=v.hint}}" class="toolbar-button hint {{?!v.disabled}} multi-item {{?}} {{?v.disabled}} notActive {{?}} {{?v.top}}i-tip-target_st_dashboard_top{{?}}">' +
        '<span href="?func={{=v.func}}" {{?v.list}}data-list="{{=v.list}}"{{?}} {{?v.top}}data-top="{{=v.top}}"{{?}} {{?v.form}}data-form="{{=v.form}}"{{?}} data-type="{{=v.type}}" class="toolbar-button__item-img">' +
          '<div class="s-icon s48x48 {{=v.img}}" {{=v.style}}></div>' +
        '</span>' +
        '<span href="?func={{=v.func}}" {{?v.list}}data-list="{{=v.list}}"{{?}} {{?v.top}}data-top="{{=v.top}}"{{?}} {{?v.form}}data-form="{{=v.form}}"{{?}} data-type="{{=v.type}}" data-fn="dashboard" data-mn="taskbar_{{=v.name}}">{{=v.msg}}</span>' +
      '</div>' +
      '{{?}}' +
      '{{~}}' +
      '</div>';

  var button =
      '<div class="b-button i-button b-button_color_{{=val.color}} b-button_type_{{=val.type}} i-button_type_{{=val.type}} ' +
          'b-button_style_{{=val.type}} b-button_act_{{=val.act}} {{?val.focus}}b-form__focus-field{{?}} {{?val.default}}i-button_default_yes{{?}} {{?val.disabled}}b-button_st_disabled{{?}} hint" ' +
          'data-tabid="{{=it.id}}" ' +
          'data-name="{{=val.name}}" ' +
          'data-hint="{{=val.hint}}" ' +
          '{{=it.parentAttr}} ' +
          'data-type="{{=it.type}}" ' +
          'data-disabled="{{=val.disabledText}}" ' +
          'data-act="{{=val.act}}" ' +
          'data-id="{{=val.id}}" ' +
          'data-flags="{{=val.flags}}" ' +
          '{{?val.func}}data-func="{{=val.func}}"{{?}} ' +
          'tabindex="0" ' +
          'data-elemid="{{=ind}}" ' +
          'data-enabled="{{=val.msg}}">{{=val.msg}}' +
          '</div>';

  var buttons = '{{~it.buttons :val :ind}}' +
        button +
      '{{~}}';

  //Form & Report Template
  var tabContForm = '<div id="cont-{{=it.id}}" class="tab-content tab-content_st_active {{=it.tabClass}}" data-tabid="{{=it.id}}" data-tab-type="form" data-report="{{=it.type}}" data-func={{=it.func}} data-itemid="{{=it.itemId}}">' +
    '<div id="{{=it.id}}-progressbar-overlay" class="b-tab-overlay"></div>' +
    //default progressbar
    '<div id="cont-{{=it.id}}-progressbar-default" class="b-progressbar">' +
      '<div id="{{=it.id}}-progressbar" class="b-progressbar__outer">' +
      '<div class="b-progressbar__inner">' +
        '<div class="b-progressbar__comment">{{=it.comment}}</div>' +
        '<div class="b-progressbar__loader-wr">' +
          '<div class="b-progressbar__loader b-progressbar__loader_type_animate"></div>' +
        '</div>' +
      '</div>' +
      '</div>' +
    '</div>' +
    //default progressbar end

    '<div id="cont-{{=it.id}}-progressbar" class="b-progressbar"></div>' +
    '<div id="incont-{{=it.id}}" class="form-content">' +
//    '{{?(it.showcase)}}' +
//      '<div class="b-title">' +
//        '<h2 class="b-title__text">{{=it.tabTitle}}</h2>' +
//      '</div>' +
//    '{{??}}' +
    '{{?(!it.showcase)}}' +
    '<div class="topWrapper">' +
      //right buttons
      '<div class="rightBar">' +
      '{{?it.devMode}}' +
        '<a href="{{=it.selfurl}}&out=devel" data-hint="{{=it.hDevel}}" target="_blank" class="hint"><div class="s-icon s16x16 l-devel"></div></a>' +
      '{{?}}' +
        '{{?it.bands}}' +
        '{{?it.pdfOn}}<a href="{{=it.selfurl}}&out=pdf" data-hint="{{=it.hPdf}}" data-hint-mn="hint_pdf" target="_blank" class="pdf hint"><div class="s-icon s16x16 p-pdf"></div></a>{{?}}' +
        '<a href="{{=it.selfurl}}&out=print&sok=ok" data-hint="{{=it.hPrint}}" target="_blank" data-hint-mn="hint_print" class="print hint"><div class="s-icon s16x16 p-print"></div></a>' +
        '{{?}}' +
      '<a href="#" class="reload hint" data-hint="{{=it.hReload}}" data-hint-mn="hint_reload" data-tabid="{{=it.id}}"><img src="{{=it.theme}}img/blue-reload.png" width="16" height="16" /></a>' +
        '{{?it.inmenu}}' +
        '<a href="#" class="i-take-favorite hint {{?!it.favorite}}b-elem_style_gracescale{{?}}" data-hint-unfavorite="{{=it.hFavorite}}" data-hint-favorite="{{=it.hUnfavorite}}" data-state="{{?it.favorite}}favorite{{??}}unfavorite{{?}}">' +
          '<div class="s-icon s16x16 mbar-favorite"></div>' +
        '</a>' +
        '<div class="b-pin i-pin hint {{?!it.pin}}b-elem_style_gracescale{{?}}" data-state="{{?it.pin}}pin{{??}}unpin{{?}}" data-hint-pin="{{=it.hintPin}}" data-hint-unpin="{{=it.hintUnpin}}"></div>' +
        '{{?}}' +
       '<a href="{{=it.permaLink}}" data-clipboard-text="{{=it.permaLink}}" data-hint="{{=it.hCopy}}" target="_blank" data-hint-mn="hint_copylink" class="hint b-permalink" id="permalink-{{=it.id}}"><div class="p-permalink s16x16 s-icons"></div></a>' +
       //'<a href="#" class="help hint" data-hint="{{=it.hHelp}}" data-help-type="{{=it.helpType}}" data-help="{{=it.help}}" data-help-func="{{=it.helpurl}}"><div class="s-icon s16x16 sb-help"></div></a>' +
       '<a href="#" class="b-usefulLinks__icon hint i-tip-target_st_help_links" data-hint="{{=it.hHelp}}"><div class="s-icon s16x16 sb-help"></div></a>' +
     '</div>' +
      '<div class="leftBar b-leftbar b-leftbar_for_form">' +
      '<div class="reload hint fleft s48x48 s-icon i-tip-target_st_title_reload i-tip-target_st_typo {{=it.tImg}}" data-hint-mn="hint_reload" {{=it.tStyle}} data-tabid="{{=it.id}}" data-hint="{{=it.hReload}}"></div>' +
//showcase if end
        '{{?}}' +
        '{{?!it.notitle}}' +
        '<span class="tab_title">' +
            '<h2 class="reload hint b-title_type-form" data-fn="{{=it.func}}" data-mn="title" data-hint-mn="hint_reload" data-tabid="{{=it.id}}" data-hint="{{=it.hReload}}">' +
              '{{=it.tabTitle}}' +
              //devmode icons
              '{{?it.devMode}}' +
                '<div class="form-settings">' +
                  '<a href="#" class="devel-link-settings devel-link-settings--form" data-tabid="{{=it.id}}"></a>' +
                  '<a href="#" class="devel-link-add devel-link-add--field" data-tabid="{{=it.id}}"></a>' +
                '</div>' +
              '{{?}}' +
            '</h2>' +
          '{{=it.breadcrumb}}' +
          '{{?!it.showcase}}' +
          '{{?}}' +
        '</span>' +
//notitle if end
          '{{?}}' +
      '{{?!it.showcase}}' +
        '<div class="clearBoth"></div>' +
      '</div>' +
//showcase if end
      '{{?}}' +

    '{{?(!it.nostep)}}' +
    '{{?it.formflags.steps}}' +
    '<div class="b-wizard i-wizard">' +
      '<div class="b-wizard__inner i-wizard__inner">' +
        '<div class="l-wizard__triangle l-wizard__triangle_dir_left i-wizard__triangle_dir_left">' +
          '<div class="b-wizard__triangle b-wizard__triangle_dir_left"></div>' +
        '</div>' +
        '{{ var sNum = 0, active, actStep; for (var keyVar in it.formflags.steps) { sNum++ ; actStep = it.formflags.steps[keyVar]; if (keyVar == it.formflags.step ) { active = true; } else { active = false; } }}' +
          '{{?(sNum !== 1)}}' +
            '<div class="b-wizard__arrow"></div>' +
          '{{?}}' +
          '{{?active}}' +
            '<div class="b-wizard__step i-wizard__step-num_st_active b-wizard__step-num_st_active">' +
              '<div class="b-wizard__step-num b-wizard__step-num_st_active" data-mn="msg_wizard_step">{{=it.step}} {{=sNum}}</div>' +
              '<div class="b-wizard__step-desc b-wizard__step-desc_st_active">{{=actStep.name}}</div>' +
            '</div>' +
          '{{??(actStep.unavailable)}}' +
            '<div class="b-wizard__step">' +
              '<div class="b-wizard__step-num" data-mn="msg_wizard_step">{{=it.step}} {{=sNum}}</div>' +
              '<div class="b-wizard__step-desc">{{=actStep.name}}</div>' +
            '</div>' +
          '{{??}}' +
            '<div class="b-wizard__step action">' +
              '<div class="b-wizard__step-num">' +
                '<a href="#" data-href="func={{=keyVar}}" class="i-wizard__step-link b-wizard__step-link" data-mn="msg_wizard_step">{{=it.step}} {{=sNum}}</a>' +
              '</div>' +
              '<div class="b-wizard__step-desc">{{=actStep.name}}</div>' +
            '</div>' +
          '{{?}}' +
          '{{ } }}' +
        '<div class="l-wizard__triangle l-wizard__triangle_dir_right i-wizard__triangle_dir_right">' +
          '<div class="b-wizard__triangle b-wizard__triangle_dir_right"></div>' +
        '</div>' +
     '</div>' +
    '</div><div class="b-wizard__bottom-padding"></div>' +
    '{{?}}' +
      //showcase if
    '{{?}}' +

       '{{?it.message.status}}' +
          banner +
       '{{??it.message.length}}' +
          messages +
       '{{?}}' +
        //toolbar
          toolbar +
        //toolbar end

      '{{?it.reportInfo}}' +
      '<div class="report_info">{{=window.filterXSS(window.htmlEncode(it.reportInfo))}}</div>' +
      '{{?}}' +

        '<div class="error-message">{{=it.ermsg}}</div>' +
        //topWrapper end
        '{{?(!it.showcase)}}' +
          '</div>' +
        '{{?}}' +

        '<div class="l-form l-form__wrapper {{=it.formflags.maxwidth}}" id="form-scroll-{{=it.id}}">' +
           '<div class="l-form__overlay"><div class="l-form__loader"></div></div>' +
           '<div class="l-form__inner" id="form-scroll-in-{{=it.id}}">' +
            '<form action="{{=it.formflags.action}}" name="frm-{{=it.id}}" method="post" id="frm-{{=it.id}}" class="{{=it.files}} {{?it.showcase}}b-form_showcase_yes{{?}}" data-vars="{{=it.__innervars}}" {{=it.formflags.autocomplete}}>' +
            '<div id="form-wrapper-{{=it.id}}">' +
            '<input type="hidden" name="func" value="{{=it.func}}"/>' +
            //chrome password autofilling prevent from http://benjaminjshore.info/2014/05/chrome-auto-fill-honey-pot-hack.html
            '<input type="password" style="display:none;"/>' +

            '<input type="hidden" id="{{=it.id}}-progresstype" value="{{=it.progress}}"/>' +
            '<div id="{{=it.progress}}"></div>' +

            '<input type="hidden" name="elid" value="{{=it.elid}}" id="{{=it.id}}-elid"/>' +
            '{{?(it.plid != "")}}<input type="hidden" name="plid" value="{{=it.plid}}" id="{{=it.id}}-plid"/>{{?}}' +
            '{{?it.isUserexp}}' +
            '<div class="userexperience {{=it.arePages}}" data-level="{{=it.userexp}}" data-mn="msg_userexperience"> {{=it.userexpMsg}}</div>' +
            '{{?}}' +
            // check for form exist
              '{{?it.formstatus}}' +
              '{{=it.pages}}' +
          //submit buttons
          '{{?it.buttons.length}}' +
            '<div class="l-buttons i-buttons_form-type_{{=it.type}} l-buttons_for_form" data-type="buttons" id="{{=it.id}}-buttons">' +
            '{{~it.buttons :val :ind}}' +
              button +
            '{{~}}' +
            '</div>' +
          '{{?}}' +
          '{{?}}' +

              // check for form exist END
               '</div>' +
              '<div class="bands">{{=it.bands}}</div>' +
            '</form>' +
           '</div>' +
        '</div>' +
        '</div>' +
    '</div>';
  //captcha
  var formItemCaptcha = `<div class="b-captcha"><div class="b-captcha__inner"><div class="g-recaptcha" id="{{=it.id}}-{{=it.name}}" data-sitekey="{{=it.value}}"></div></div></div>`;

  //Input template
  var formItemInput = `<div class="l-form__input-wr {{=val.dependFields}} {{=val.setvalue}} {{=val.classes}}" >
      <input value="{{=val.value}}" {{=val.attr}} class="{{=val.classes}} force-hint b-input b-input_type_{{=val.type}} i-input-control" id="{{=val.name}}-{{=val.id}}" data-tabid="{{=val.id}}"/>
      {{?val.prefix}}<div class="b-input__prefix i-input__prefix">{{=val.prefix}}</div>{{?}}
    </div>`;

  //Input File Template
  var formItemFile = '<div class="{{=it.dependFields}} {{=it.setvalue}} b-input-file__wr" id="b-input-file__wr-{{=it.id}}">' +
      '<input  value="{{=it.value}}" {{=it.attr}} id="{{=it.name}}-{{=it.id}}" data-tabid="{{=it.id}}" class="b-input b-input_type_file {{=it.classes}}" />' +
      '<div class="b-input-file-fake" data-source="{{=it.name}}-{{=it.id}}">' +
        '<div class="b-input-file-fake__input hint" id="f-{{=it.name}}-{{=it.id}}" data-hint=""></div>' +
        '<div class="b-input-file-fake__btn">{{=it.msg}}</div>' +
      '</div>' +
    '</div>';

  //Password check template
  var passwdCheck = '<div class="checkpass-indicator-wrapper">' +
      '<div id="checkpass-indicator-wrapper-{{=it.name}}-{{=it.id}}">' +
        '<span class="strength-pass-indicator">' +
          '<span class="ci-square si-one"></span>' +
            '<span  class="ci-square si-two"></span>' +
            '<span class="ci-square si-three"></span>' +
            '<span class="ci-square si-four"></span>' +
          '</span>' +
          '<span class="strength-pass-text">' +
          '<span class="st-text st-one">{{=it.short}}</span>' +
          '<span class="st-text st-two">{{=it.weak}}</span>' +
          '<span class="st-text st-three">{{=it.good}}</span>' +
          '<span class="st-text st-four">{{=it.strong}}</span>' +
        '</span>' +
      '</div>' +
    '</div>';

  var confirmCheck = '<div class="b-form-confirm-message" id="check-confirm-{{=it.name}}-{{=it.id}}">{{=it.doNotMatch}}</div>';

  //Password
  var formItemPassword =
    '<div class="l-form__input-wr {{=it.dependFields}} {{=it.setvalue}}" >' +
      '<input {{=it.attr}} class="{{=it.classes}} b-input b-input_type_password force-hint i-input-control" id="{{=it.name}}-{{=it.id}}" data-parent="{{=it.name}}-{{=it.id}}" data-tabid="{{=it.id}}" value="{{=it.value}}" data-confirm-field="{{=it.confirmField}}" autocomplete="off"/>' +
      '<input type="text" id="{{=it.name}}-{{=it.id}}-fake" data-parent="{{=it.name}}-{{=it.id}}" data-tabid="{{=it.id}}" style="display:none;" data-confirm-field="{{=it.confirmField}}" class="fakePasswd {{=it.classes}} force-hint b-input i-input-control" autocomplete="off"/>' +
    '</div>';

  //Input with zoom
  var formItemInputWithZoom = '<div class="l-form__input-wr {{=it.dependFields}} {{=it.setvalue}}" >' +
      '<input value="{{=it.value}}" {{=it.inputAttr}} class="{{=it.inputClasses}} {{=it.classes}} force-hint b-input b-input_type_text i-input-control" id="{{=it.inputName}}-{{=it.id}}" data-tabid="{{=it.id}}"/>' +
      '<textarea class="{{=it.textareaClasses}} force-hint b-textarea" {{=it.textareaAttr}} data-tabid="{{=it.id}}"></textarea>' +
    '</div>';

  //Input with zoom
  var formItemInputWithZoom1 = '<div class="{{=it.dependFields}}" >' +
      '<input {{=it.attr}} class="{{=it.classes}} force-hint  b-input b-input_type_text i-input-control" id="{{=it.name}}-{{=it.id}}" data-tabid="{{=it.id}}"/>' +
      '<textarea class="{{=it.textareaClasses}} force-hint b-textarea" {{=it.textareaAttr}} data-tabid="{{=it.id}}"></textarea>' +
    '</div>';

  var formItemTextarea = '<div id="b-msg-templ-{{=it.name}}-{{=it.id}}" class="b-msg-templ__options"></div>' +
    '<div class="{{=it.setvalue}} {{=it.dependFields}} b-textarea__wrapper">' +
      '{{?it.quote}}' +
        '<div class="b-ticket-tools-link">' +
          '<a href="#" class="b-quote hint" data-target="{{=it.name}}-{{=it.id}}" data-hint-mn="hint_quote" data-hint="{{=App.u.escapeQuote(it.hint_quote)}}">{{=it.msg_quote}}</a>' +
        '</div>' +
      '{{?}}' +
      '{{?it.savedmessage}}' +
        '<div class="b-msg-templ__cont b-ticket-tools-link" data-target="{{=it.name}}-{{=it.id}}">' +
          '<a href="#" class="b-msg-templ__link hint" data-hint-mn="hint_savedmessage" data-hint="{{=App.u.escapeQuote(it.hint_savedmessage)}}" data-id="{{=it.name}}-{{=it.id}}" data-tabid="{{=it.id}}">{{=it.msg_savedmessage}}</a>' +
        '</div>' +
      '{{?}}' +
      '<textarea class="{{=it.classes}} force-hint b-textarea b-textarea_responsive_yes" id="{{=it.name}}-{{=it.id}}" {{=it.attr}} data-tabid="{{=it.id}}" data-codelang="{{=it.codelang}}">{{=it.value}}</textarea>' +
      '{{?it.editor}}<div id="{{=it.name}}-{{=it.id}}-editor" data-id="{{=it.name}}-{{=it.id}}"></div>{{?}}' +
      '<div class="b-resizer i-tip-target_st_textarea_resize {{?it.editor}}b-resizer_for_editor {{??}}b-resizer_for_textarea{{?}}" id="resizer_editor-{{=it.name}}-{{=it.id}}" data-id="{{=it.name}}-{{=it.id}}{{?it.editor}}-editor{{?}}" {{?it.editor}}data-move-trigger="resizeEditor"{{?}} data-tabid="{{=it.id}}"></div>' +
    '</div>';

  var formItemCheckbox = '<div class="b-checkbox__wrapper {{=val.dependFields}} {{=val.setvalue}} {{?val.img}}l-checkbox-img{{?}}">' +
    '{{?val.img}}' +
    '<div class="s-icon s16x16 {{=val.img}} b-checkbox__img"></div>' +
    '{{?}}' +
    '<div class="b-checkbox checkboxel">' +
      '<div class="b-checkbox__control {{=val.cbclass}} {{=val.readonly}} force-hint" tabindex="0" id="{{=val.id}}-{{=val.name}}" data-tabid="{{=val.id}}" data-id="{{=val.name}}"></div>' +
    '</div>' +
    '<div class="l-label__wrapper l-label__wrapper_for_checkbox">' +
      '<div class="b-label__visible b-label__visible_for_checkbox" data-tabid="{{=val.id}}" data-id="{{=val.name}}">{{=val.desc}}</div>' +
      '<div class="b-label__invisible b-label__invisible_for_checkbox">{{=val.desc}}</div>' +
      '<div class="b-label__line-dotted b-label__line-dotted_for_checkbox"></div>' +
    '</div>' +
    '<input type="hidden" value="{{=val.value}}" class="{{=val.classes}}" data-handler-val="{{=hash(val.value)}}" name="{{=val.name}}" data-type="checkbox" data-tabid="{{=val.id}}" {{=val.attrInput}}/>' +
  '</div>';

  var formItemHtmldata = '<div class="b-htmldata__inner b-htmldata">' +
      '{{?it.img}}' +
        '<div class="b-htmldata__img">' +
          '{{?it.img.src}}<img data-type="img" src="{{=it.img.src}}" id="{{=it.id}}-{{=it.img.name}}" width="{{=it.img.width}}" height="{{=it.img.height}}"/>{{??it.img.img}}<div class="{{=it.img.img}}"></div>{{?}}' +
        '</div>' +
      '{{?}}' +
      '<div id="{{=it.id}}-{{=it.name}}">{{=window.filterXSS(window.htmlEncode(it.value))}}</div>' +
      '<div class="b-htmldata__clear"></div>' +
    '</div>';

  var formItemSelectList = `{{~val.slist :value:index}}
      {{ var selected = ""; if (val.value == value.key) { selected="selected"; } }}
      {{ var dependelem = ""; if (value.depend != "" && value.depend != undefined) { dependelem="dependelem"; } else { dependelem="b-myselect__select-li_show_yes"; } }}
      <li data-val="{{=String(value.key).replace(/"/g, \'&quot;\')}}" data-code="{{=value.code}}" data-mask="{{=value.mask}}" data-handler-val="{{=hash(value.key)}}" data-dependkey="{{=value.depend}}" 
      class="{{=selected}} {{=dependelem}} {{?value.src||value.img}}b-myselect__item-image{{?}} b-myselect__select-li">
        {{?value.src}} <span class="b-myselect__img" style="background-image: url({{=value.src}}); 
        {{?value.width}}width:{{=value.width}}px;{{?}}
        {{?value.height}}height:{{=value.height}}px;{{?}}"></span>{{?}}
        {{?value.img}} <span class="b-myselect__img {{=value.img}}"></span>{{?}}
        <span class="{{=value.classes}} b-myselect__option-value">{{=value.value}}</span>
      </li>
      {{~}}`;

  var formItemSelect = `<div class="b-myselect b-myselect_st_close {{=val.search}} {{=val.depend}} {{=val.dependFields}} {{=val.readonly}} {{=val.setvalue}}" data-depend="{{=val.dependMaster}}" id="_{{=val.name}}-{{=val.id}}">
    <div class="b-myselect__select-selected" data-id="_{{=val.name}}-{{=val.id}}">
      <div class="b-myselect__select-value force-hint" tabindex="0" data-tabid="{{=val.id}}">{{=val.msg}}</div>
      <div class="b-myselect__arrow-down"><div class="b-myselect__triangle-down"></div></div>
    </div>
    {{?val.search}}<div class="b-myselect__search-box">
      <input type="text" class="scrlbr b-input b-input_for_search sb-input force-hint" data-id="{{=val.id}}-{{=val.name}}" data-tabId="{{=val.id}}" id="sb-cont-{{=val.id}}-{{=val.name}}"/>
      <div class="sb-info" id="sb-info-{{=val.id}}-{{=val.name}}"></div>
    </div>{{?}}

    <div class="b-myselect__option-wr" id="opt_{{=val.name}}-{{=val.id}}" data-tabid="{{=val.id}}">
      <div class="b-myselect__select-list" id="cont-{{=val.id}}-{{=val.name}}">
        <ul data-id="_{{=val.name}}-{{=val.id}}" id="{{=val.id}}-{{=val.name}}" class="b-myselect__select-ul">
          ${formItemSelectList}
        </ul>
      </div>
    </div>
    <input type="hidden" value="{{=val.value}}" class="{{=val.classes}}" {{?val.targetfontfamilyview}}data-targetview="{{=val.targetfontfamilyview}}"{{?}} data-handler-val="{{=hash(val.value)}}" name="{{=val.name}}" id="_{{=val.name}}-{{=val.id}}-val" data-type="select" data-tabid="{{=val.id}}" {{=val.attrInput}}/>
  </div>`;

  var formItemMSelect = '{{ var l, selectedClass = ""; if (it.hasValue) { selectedClass = "selected"; } }}' +
    '<div class="b-mselect {{=selectedClass}} {{=it.readonly}} {{=it.setvalue}}" data-depend="{{=it.dependMaster}}" id="{{=it.id}}-{{=it.name}}-ms">' +
      '<div class="b-mselect__view-value force-hint" data-id="{{=it.id}}-{{=it.name}}" tabindex="0" id="{{=it.name}}-{{=it.id}}" data-tabid="{{=it.id}}">' +
        '<div class="b-myselect__arrow-down b-myselect__arrow-down_for_mselect"><div class="b-myselect__triangle-down"></div></div>' +
        '<ul class="b-mselect__ul-view" id="{{=it.id}}-{{=it.name}}-ms-view" data-tabid="{{=it.id}}" data-maxselect="{{=it.maxselect}}">' +
          '<li class="b-mselect__item b-mselect__item_msg_unselected" data-default-msg="{{=it.msg}}">{{?it.mixed}}{{=it.msg_mixed}} {{??}} {{=it.msg}}{{?}}</li>' +
          '{{ var v = "", ind = 0; for (var i in it.values) {  }}' +
          '{{ var selected = ""; if (it.values[i]) { selected="chosen"; } }}' +
          '{{  if (it.slist[i]) { if (v !== "") { v += ","; } v += it.slist[i].key; ind++; }}' +
          '{{ var dependelem = ""; if (it.slist[i].depend != "" && it.slist[i].depend != undefined) { dependelem="dependelem"; } else { dependelem="b-myselect__select-li_show_yes"; } }}' +
            '<li class="b-mselect__item {{=selected}} {{=dependelem}} " data-val="{{=it.slist[i].key}}" data-dependkey="{{=it.slist[i].depend}}" unselectable="on" data-s-id="{{=it.id}}-{{=it.name}}-{{=i}}">' +
              '{{=it.slist[i].value}}' +
              '<span class="b-mselect__unselect"></span>' +
            '</li>' +
          '{{ } } }}' +
        '</ul>' +
      '</div>' +
      '<div class="b-mselect__options closed" id="{{=it.id}}-{{=it.name}}-ms-list-wrapper" data-id="{{=it.id}}-{{=it.name}}" data-tabid="{{=it.id}}">' +
        '<div class="b-mselect__list-value" id="{{=it.id}}-{{=it.name}}-ms-list">' +
          '<ul class="b-mselect__ul-choose" id="{{=it.id}}-{{=it.name}}-ms-list-ul" data-id="{{=it.id}}-{{=it.name}}">' +
            '<li class="b-mselect__item b-mselect__item_select-all">{{=it.msg_select_all}}</li>' +
            '{{ var l = it.slist.length; for (var i = 0; i < l; i++) {  }}' +
            '{{ var selected = ""; if (it.values[i]) { selected="chosen"; } }}' +
            '{{ var dependelem = ""; if (it.slist[i].depend != "" && it.slist[i].depend != undefined) { dependelem="dependelem"; } else { dependelem="b-myselect__select-li_show_yes"; } }}' +
              '<li class="b-mselect__item {{=selected}} {{=dependelem}}" data-handler-val="{{=hash(it.slist[i].key)}}" data-dependkey="{{=it.slist[i].depend}}" data-val="{{=it.slist[i].key}}" unselectable="on" id="{{=it.id}}-{{=it.name}}-{{=i}}">' +
               '{{=it.slist[i].value}}' +
                '<span class="b-mselect__unselect"></span>' +
              ' </li>' +
            '{{ } }}' +
          '</ul>' +
        '</div>' +
      '</div>' +
      //'<div class="b-input-btn b-input-btn_type_plus hint" data-hint-mn="msg_plus" data-hint="{{=App.u.escapeQuote(it.hintBtnPlus)}}" data-id="{{=it.id}}-{{=it.name}}"></div>' +
      //'<div class="b-input-btn b-input-btn_type_minus hint" data-hint-mn="msg_minus" data-hint="{{=App.u.escapeQuote(it.hintBtnMinus)}}" data-id="{{=it.id}}-{{=it.name}}"></div>' +
    '<input type="hidden" name="{{=it.name}}" class="{{=it.classes}}" value="{{=v}}" data-type="multiple" {{=it.requiredAttr}} id="{{=it.id}}-{{=it.name}}-ms-value" data-id="{{=it.id}}-{{=it.name}}" data-tabid="{{=it.id}}"/>' +
   '</div>';


  var formItemRadio = '<div class="b-radio {{=it.depend}} {{=it.dependFields}} {{=it.readonly}} {{=it.setvalue}}" id="{{=it.id}}-{{=it.name}}-radio" data-depend="{{=it.dependMaster}}">' +
  //foreach
    '{{~it.slist :value :index}}' +
  '{{ var rbclass = "", tabindex = ""; if (it.value == value.key) { rbclass="checked"; tabindex = "tabindex=0"; } }}' +
  '{{ var dependelem = ""; if (value.depend != "" && value.depend != undefined ) { dependelem="dependelem"; } else { dependelem="b-myselect__select-li_show_yes"; } }}' +
  '<div data-dependkey="{{=value.depend}}" class="{{=dependelem}} l-radio__item">' +
  '<div class="b-radio__control-wr">' +
      '<div {{=tabindex}} class="b-radio__control {{=it.name}}-{{=it.id}} {{=it.name}}-{{=it.id}}-{{=hash(value.key)}} {{=rbclass}} force-hint" data-id="{{=it.name}}-{{=it.id}}" data-tabid="{{=it.id}}"  data-val="{{=value.key}}" data-handler-val="{{=hash(value.key)}}">' +
    '</div>' +
    '</div>' +
  '<div class="l-label__wrapper l-label__wrapper_for_radio">' +
    '<div class="b-label__visible b-label__visible_for_radio" data-r-class="{{=it.name}}-{{=it.id}}-{{=hash(value.key)}}">{{=value.value}}</div>' +
      '<div class="b-label__invisible b-label__invisible_for_radio">{{=value.value}}</div>' +
      '<span class="b-label__line-dotted b-label__line-dotted_for_radio"></span>' +
    '</div>' +
  '</div>' +
  //end foreach
  '{{~}}' +
  '<input type="hidden" name="{{=it.name}}" data-handler-val="{{=hash(it.value)}}" id="{{=it.name}}-{{=it.id}}" value="{{=it.value}}" class="{{=it.classes}}" data-type="radio" data-tabid="{{=it.id}}" {{=it.attrInput}}/>' +
  '</div>';

  var formItemRadioImg = '<div class="b-radio {{=it.setvalue}} {{=it.readonly}}">' +
      '<table class="b-radio-img">' +
        '<tbody class="b-table__tbody">' +
      '{{~it.slist :value :index}}' +
      '{{ var rbclass = "", tabindex = ""; if (it.value == value.key) { rbclass="checked"; tabindex = "tabindex=0"; } }}' +
      '<tr class="b-radio-img__row" data-r-class="{{=it.name}}-{{=it.id}}-{{=hash(value.key)}}">' +
      '<td class="b-radio-img__col b-radio-img__col_radio">' +
        '<div class="b-radio__control {{=it.name}}-{{=it.id}} {{=rbclass}} {{=it.name}}-{{=it.id}}-{{=hash(value.key)}}" {{=tabindex}} data-id="{{=it.name}}-{{=it.id}}"  data-tabid="{{=it.id}}"  data-val="{{=value.key}}" data-handler-val="{{=hash(value.key)}}"></div>' +
      '</td>' +
      '<td class="b-radio-img__col b-radio-img__col_img">' +
        '<div class="b-radio-img__img-wrapper">' +
          '{{?value.src}} <span class="b-radio-img__img" style="background-image: url({{=value.src}}); ' +
          '{{?value.width}}width:{{=value.width}}px;{{?}}' +
          '{{?value.height}}height:{{=value.height}}px;{{?}}"></span>{{?}}' +
          '{{?value.img}} <span class="b-radio-img__img {{=value.img}}"></span>{{?}}' +
        '</div>' +
      '</td>' +
      '<td class="b-radio-img__col b-radio-img__col_desc"><div class="b-radio-img__desc">{{=window.htmlDecode(value.value)}}</div></td>' +
      '</tr>' +
      '{{~}}' +
      '</tbody>' +
      '</table>' +
      '<input type="hidden" name="{{=it.name}}" id="{{=it.name}}-{{=it.id}}" data-handler-val="{{=hash(it.value)}}" class="{{=it.classes}}" value="{{=it.value}}" data-type="radio" data-tabid="{{=it.id}}" />' +
      '</div>';

      var formItemLink = '<div class="b-form-link{{?it.internal}} m-item{{?}}"><a href="{{=it.href}}" data-url="{{=it.href}}" {{?!it.newtab}}data-parent="{{=it.id}}"{{?}} data-type="link" id="{{=it.id}}-{{=it.name}}" {{?it.target}}target="{{=it.target}}"{{?}} class="i-menu-link {{?it.newtab}}newtab{{?}}">{{=it.text}}</a></div>';

  var formItemExtrBtn = '<{{=it.extrabtn}} data-tname="{{=it.name}}-{{=it.id}}"/>';

  var formItemDesk = '<span class="desc">{{=it.value}}</span>';

  var formItemDeskRadio = '<div class="desk">' +
      '<div class="desk-visible">{{=it.value}}</div>' +
      '<div class="desk-invisible">{{=it.value}}</div>' +
      '<span class="b-label__line-dotted"></span>' +
    '</div>';

  var formItemTextData = '{{?it.img}}<div class="b-textdata__img">{{?it.img.src}}<img data-type="img" src="{{=it.img.src}}" id="{{=it.id}}-{{=it.img.name}}" width="{{=it.img.width}}" height="{{=it.img.height}}"/>{{??it.img.img}}<div class="{{=it.img.img}}"></div>{{?}}</div>{{?}}' +
    '<div class="b-textdata {{=it.classes}}" id="{{=it.id}}-{{=it.name}}" data-type="textdata"><div class="b-textdata__inner" {{?it.mtype === "msg" || it.mtype === "msgdata"}} data-mn="{{=it.msgname}}"{{?}} id="{{=it.id}}-{{=it.name}}-inner">{{=window.filterXSS(it.value)}}</div></div>' +
    '<div class="b-textdata__clear l-clear-both"></div>';

  var formItemLabel =
    '<div class="l-label__wrapper">' +
      '<div class="l-label__inner">' +
        '<label class="b-label__visible" data-tabid="{{=it.tabId}}" data-id="{{=it.id}}" data-fn="{{=it.func}}" data-mn="{{=it.id}}">{{=it.img}}{{=it.label}}</label>' +
        '<label class="b-label__invisible">{{=it.img}}{{=it.label}}</label>' +
        '<span class="b-label__line-dotted"></span>' +
        '{{?it.required}}<span class="b-required-star">*</span>{{?}}' +
      '{{?it.devMode}}' +
        '<div class="field-settings">' +
          '<a href="#" class="devel-link-settings devel-link-settings--field" data-elid="{{=it.id}}" data-tabid="{{=it.tabId}}"></a>' +
          '<a href="#" class="devel-link-delete devel-link-delete--field" data-elid="{{=it.id}}" data-name="{{=it.label}}" data-tabid="{{=it.tabId}}"></a>' +
        '</div>' +
      '{{?}}' +
      '</div>' +
    '</div>';

  var filterItemLabel = '<label data-mn="{{=it.name}}" data-fn="{{=it.func}}">{{=it.label}}</label>';

  var formItemSlider = '<table class="b-slider">' +
      '<tbody class="b-table__tbody">' +
      '<tr>' +
        '<td class="l-slider__col l-slider__col_cont_slider">' +
          '<div class="l-slider__wr {{=it.readonly}}">' +
            '<div class="b-slider__line"></div>' +
            '<div class="b-slider__border b-slider__border_pos_left"></div>' +
            '<div class="b-slider__c-border b-slider__c-border_pos_top"></div>' +
            '<div class="b-slider__c-border b-slider__c-border_pos_bottom b-slider__c-bottom-border"></div>' +
            '<a id="{{=it.id}}-{{=it.name}}-slider" class="b-slider__el force-hint" tabindex="0" data-min="{{=it.min}}" data-tabid="{{=it.id}}"  data-max="{{=it.max}}" data-step="{{=it.step}}" data-id="{{=it.id}}-{{=it.name}}" data-value="{{=it.value}}">' +
              '<div class="b-slider__core"></div>' +
            '</a>' +
            '<div class="b-slider__border b-slider__border_pos_right"></div>' +
          '</div>' +
        '</td>' +
        '<td class="l-slider__col l-slider__col_cont_input {{=it.setvalue}}">' +
          '<div class="l-slider__input-wr {{=it.setvalue}}">' +
            '<input type="text" len="32" {{?it.targetfontsizeview}}data-targetview="{{=it.targetfontsizeview}}"{{?}} class="b-input b-input_for_slider {{?it.targetfontsizeview}}i-font-size-control{{?}} {{=it.readonly}} force-hint i-input-control {{=it.inputClass}}" id="{{=it.id}}-{{=it.name}}" data-tabid="{{=it.id}}" name="{{=it.name}}" value="{{=it.value}}" {{=it.readonly}} {{=it.attrInput}}/>' +
          '</div>' +
        '</td>' +
      '</tr>' +
      '</tbody>' +
    '</table>';

  var formItemSliderEditInList = '<div class="l-form__row_type_slider">' +
      '<div class="l-form__control-wr">' +
        formItemSlider +
      '</div>' +
    '</div>';

  var formItemTicketMsg = '{{~it.mlist :value:index}}' +
      '<tr class="b-ticket__table-row {{?value.isCollapsed}} b-ticket__table-row_is_collapsible b-ticket__table-row_is_collapsed {{?}}">' +
        '<td class="b-ticket__table-col b-ticket__table-col_type_msg">' +
          '<div class="b-ticket__item b-ticket__item_{{=value.type}} ">' +
            '<div class="b-ticket__item-inner b-ticket__item-inner_{{=value.type}} {{?value.rate.is}}b-ticket__item-inner_has_rate{{?}}">' +
            '{{?value.type === "info"}}' +
              '<table class="b-ticket__table-info">' +
              '<tbody class="b-table__tbody">' +
              '{{~value.rows :v :i}}' +
              '<tr class="b-ticket__row-info {{?v.header}}b-ticket__row-info_type_header{{?}}">' +
              '{{?v.header}}' +
              '<td class="b-ticket__col-info b-ticket__col-info_type_header" colspan="2">{{=v.label}}</td>' +
              '{{??}}' +
              '<td class="b-ticket__col-info b-ticket__col-info_type_label">{{=v.label}}</td>' +
              '<td class="b-ticket__col-info b-ticket__col-info_type_value">{{=String(v.v).replace(/(\\r\\n|\\n|\\r)/g," ").replace(/\\s+/g," ")}}</td>' +
              '{{?}}' +
              '</tr>' +
              '{{~}}' +
              '</tbody>' +
              '</table>' +
            '{{??}}' +
            '<div class="b-ticket__btn-collapse i-ticket__btn-collapse s16x16 s-icon mbar-showall"></div>' +
            '{{?value.title}}<div class="b-ticket__title">{{=value.title}}</div>{{?}}' +
            '<div class="b-ticket__body b-ticket__body_same_prop">{{var b = String(value.body).replace(/\\s\\r\\n|\\r\\n|\\s\\n|\\n/g, "<br/>");}}{{=b}}</div>' +
            //file
            '{{?value.file.is}}' +
              '{{~value.file.elems :vv :ii}}' +
                '<div class="b-ticket__file">' +
                  '<a href="?func={{=vv.action}}{{~vv.params :v:i}}&{{=v.name}}={{=v.value}}{{~}}" target="_blank" class="b-ticket__file-link {{?vv.preview}}b-image-for-view{{?}}">{{=vv.name}}</a>' +
                '</div>' +
              '{{~}}' +
            '{{?}}' +
            //rate
            '{{?value.rate.is}}' +
              '<div class="b-ticket__rate">' +
                '{{~value.rate.items :vv :ii}}' +
                '<div class="b-ticket__rate-item" data-id="{{=vv.id}}" data-elid="{{=vv.elid}}">' +
                  '<span class="b-ticket__rate-msg">{{=vv.msg}}</span>' +
                  '{{~vv.items :v:i}}' +
                  '<div class="b-ticket__rate-{{=v.name}} {{=v.classes}}" data-name="{{=v.name}}" data-func="{{=v.func}}" data-type="{{=v.type}}"><img src="{{=v.img}}" data-hint="{{=App.u.escapeQuote(window.filterXSS(v.hint))}}" class="b-ticket__rate-img hint"/><span class="b-ticket__rate-text">{{=v.msg}}</span></div>' +
                  '{{~}}' +
                  '</div>' +
                '{{~}}' +
                '</div>' +
            '{{?}}' +
            '<div class="b-ticket__clear"></div>' +
          '{{?}}' +
          '</div>' +
          '</div>' +
        '</td>' +
        '<td class="b-ticket__table-col b-ticket__table-col_type_avatar">' +
        '{{?value.avatar.is && (value.type === "incoming" || value.type === "outcoming")}}' +
          '<div class="b-ticket__avatar b-ticket__avatar_{{=value.type}}">' +
            '<img src="{{=value.avatar.src}}" width="{{=value.avatar.width}}" height="{{=value.avatar.height}}" class="b-ticket__avatar-img"/>' +
          '</div>' +
        '{{?}}' +
      '</td>' +
      '</tr>' +
    '{{~}}';

  var formItemTicket = '<div class="b-ticket" {{?it.fontsize||it.fontfamily}} style="{{?it.fontsize}}font-size: {{=it.fontsize}}px;{{?}} {{?it.fontfamily}}font-family: {{=String(it.fontfamily).replace(/"/g, \'&quot;\')}}{{?}}{{?}}">' +
      '<div class="b-ticket__btn-move-wrapper"><div class="b-ticket__btn-move_up b-ticket__btn-move i-ticket__btn-move_up" data-tabid="{{=it.id}}"></div><div class="b-ticket__btn-move_down b-ticket__btn-move i-ticket__btn-move_down" data-tabid="{{=it.id}}"></div></div>' +
      '<table class="b-ticket__table {{?it.fmsgtype === "outcoming"}}b-ticket__table_my_outcoming{{?}}" id="{{=it.id}}-{{=it.name}}" data-type="ticket">' +
        '<tbody class="b-table__tbody">' +
        formItemTicketMsg +
        '</tbody>' +
      '</table>' +
    '</div>';

  var formItemSelectAutocomplete = '<div class="{{=it.depend}} b-select-ac">' +
    '<input type="text" autocomplete="off" data-name="{{=it.name}}" {{=it.attr}} class="{{=it.classes}} b-input b-select-ac__input force-hint" id="{{=it.name}}-{{=it.id}}" data-tabid="{{=it.id}}" />' +
    '</div>' +
    '<div class="b-select-ac__list-scroll-wrapper" id="opt-{{=it.name}}-{{=it.id}}" data-tabid="{{=it.id}}">' +
      '<div class="b-select-ac__list-wrapper {{=it.dependFields}}" id="cont-b-select-ac-list__{{=it.name}}-{{=it.id}}">' +
        '<ul class="b-select-ac__list" data-id="{{=it.name}}-{{=it.id}}" id="b-select-ac-list__{{=it.name}}-{{=it.id}}"></ul>' +
        '<input value="{{=it.value}}" type="hidden" name="{{=it.name}}" class="{{=it.classes}}" id="key-{{=it.name}}-{{=it.id}}" data-tabid="{{=it.id}}"/>' +
      '<div>' +
    '</div>';

  var formItemFrame = '<div class="b-form-frame">' +
      '<iframe frameborder="0" id="{{=it.name}}-{{=it.id}}" name="{{=it.name}}" class="{{?it.fullheight}}i-control__fullwidth{{?}}" data-type="frame" src="{{=it.value}}" width="100%" height="{{=it.height}}"></iframe>' +
      '<div class="b-resizer" id="resizer_editor-{{=it.id}}" data-id="{{=it.name}}-{{=it.id}}" data-tabid="{{=it.id}}"></div>' +
      '</div>';

  var formItemDateTime = '<div class="b-form-datetime" id="{{=it.id}}-{{=it.name}}" data-type="datetime" data-difftime="{{=it.difftime}}">{{=it.value}}</div>';

  var formPageTitle = '<h3 class="l-form-page__title-wr" data-name="{{=it.name}}" id="tblock-{{=it.id}}" data-type="{{=it.type}}" data-block-type="{{=it.blockType}}">' +
    '<div tabindex="0" class="b-form-page__title i-form-page__title">' +
      '<span class="b-form-page__title-content" data-mn="{{=it.name}}">{{=it.title}}</span>' +
      '{{?it.reload}}<span class="dashblock-reload hint" data-hint-mn="hint_reload" data-hint="{{=App.u.escapeQuote(it.hintReload)}}"></span>{{?}}' +
      '<span class="b-triangle hint" data-hint-expanded="{{=App.u.escapeQuote(it.hintCollapse)}}" data-hint-collapsed="{{=App.u.escapeQuote(it.hintExpand)}}" data-state="{{?it.collapsed}}collapsed{{??}}expanded{{?}}"></span>' +
    '</div>' +
    '<div class="b-form-page__vline"></div>' +
  '</h3>';

  var formItemMgrview = '<div class="mgrview" id="mgrview-{{=it.tabId}}"><!--<img src="{{=it.theme}}/img/hue.png" width="251" height="168"/>--><div id="{{=it.tabId}}-color1" class="color1 color"></div><div class="color2 color" id="{{=it.tabId}}-color2" ></div><div class="color3 color" id="{{=it.tabId}}-color3" ></div><div class="color4 color" id="{{=it.tabId}}-color4" ></div><div class="color5 color" id="{{=it.tabId}}-color5" ></div><div class="color6 color" id="{{=it.tabId}}-color6" ></div><div class="color7 color" id="{{=it.tabId}}-color7" ></div></div>';

  var formPageWrapper = '<div class="b-form-page b-form-page_view_{{=it.view}} {{=it.classes}} {{?it.withList}}b-form-page_withlist_yes{{?}} {{?it.collapsed}}b-form-page_st_collapsed{{?}}" id="page-{{=it.name}}-{{=it.tabId}}" data-tabid="{{=it.tabId}}" {{ if (it.hide) { for(var i =0; i< it.hide.length; i++) { }} {{=it.hide[i].name + "-" + hash(it.hide[i].value)}}="yes" {{ } } }} {{ if (it.show) { for (var i =0; i< it.show.length; i++) { }} {{=it.show[i].name + "-" + it.hash(it.show[i].value)}}="yes" {{ } } }}>' +
    '{{=it.title}}' +
    '<div class="b-form-page__inner" style="display:{{=it.display}};" >' +
      '<table class="l-form__table">' +
        '<tbody class="b-table__tbody">' +
        '{{=it.content}}' +
        '</tbody>' +
      '</table>' +
    '</div>' +
  '</div>';

  var filterWrapper = '<div class="filter-inner">' +
    '<form name="frm-{{=it.tabId}}" id="frm-{{=it.tabId}}">' +
      '<input type="hidden" value="{{=it.func}}" name="func"/>' +
      '<div class="filter-inner-inner">' +
        '<div class="filter-cont"><table><tr>{{=it.form}}</tr></table></div>' +
        '<div class="filter-btn-wrapper">' +
          '<div class="filter-btns">' +
            '<div class="b-button b-button__filter-set b-button_style_ok" data-tabid="{{=it.tabId}}" data-disabled="{{=it.disabled}}" tabindex="0">{{=it.filterMsg.findMsg}}</div>' +
            '<div class="b-button b-button__filter-save" data-id="{{=it.tabId}}" tabindex="0">{{=it.filterMsg.saveMsg}}<div class="b-button__filter-save-name">{{=it.sfname||""}}</div></div>' +
            '<div class="b-button b-button__filter-clear" data-tabid="{{=it.tabId}}" tabindex="0">{{=it.filterMsg.clearMsg}}</div>' +
          '</div>' +
        '</div>' +
        '<div class="clearBoth"></div>' +
      '</div>' +
    '</form>' +
  '</div>';

  var filterItem =
      '<tr class="filter-item {{=it.classes}} l-form__row" {{ if (it.hide) { for (var i = 0; i < it.hide.length; i++) { }} {{=it.hide[i].name + "-" + hash(it.hide[i].value)}}="yes" {{ } } }} {{ if (it.show) { for (var i = 0; i < it.show.length; i++) { }} {{=it.show[i].name + "-" + hash(it.show[i].value)}}="yes" {{ } } }}>' +
        '<td class="filter-first">{{=it.first}}</td>' +
        '<td class="filter-second"><div class="filter-input">{{=it.second}}</div></td>' +
      '</tr>';

  var filterRow = '<td class="filter-col">' +
      '<table class="filter-item__table filter-table_n_{{=it.index}}">{{=it.content}}</table>' +
      '</td>';

  var filterSavedItem =
      '<div class="b-filter__saved-item {{?it.active}}b-filter__saved-item_st_active{{?}}">' +
          '<div class="b-filter__saved-item-inner">' +
            '<input type="text" class="b-filter__saved-name-edit" ' +
          'id="b-filter__saved-name-edit_tid_{{=it.id}}" value="{{=it.name}}" ' +
          'data-id="{{=it.id}}" data-func="{{=it.func}}" data-tabid="{{=it.tabId}}" data-name="{{=it.name}}" />' +
            '<span class="b-filter__saved-name">{{=it.name}}</span>' +
          '</div>' +
          '<span class="b-filter__saved-edit" data-id="{{=it.id}}"></span>' +
          '<span class="b-filter__saved-remove" data-id="{{=it.id}}"></span>' +
      '</div>';

  var formItemRowDesc = '<tr class="{{=it.classes}} l-form__row" {{ if (it.hide) { for (var i = 0; i < it.hide.length; i++) { }} {{=it.hide[i].name + "-" + hash(it.hide[i].value)}}="yes" {{ } } }} {{ if (it.show) { for (var i  =0; i < it.show.length; i++) { }} {{=it.show[i].name + "-" + hash(it.show[i].value)}}="yes" {{ } } }}>' +
    '<td class="l-form__col l-form__col_cont_label" colspan="4">{{=it.second}}</td>' +
  '</tr>';

  var formItemRow = '<tr class="{{=it.classes}} l-form__row i-form__item" {{ if (it.hide) { for (var i =0; i < it.hide.length; i++) { }} {{=it.hide[i].name + "-" + hash(it.hide[i].value)}}="yes" {{ } } }} {{ if (it.show) { for (var i =0; i < it.show.length; i++) { }} {{=it.show[i].name + "-" + hash(it.show[i].value)}}="yes" {{ } } }}>' +
    '<td class="l-form__col l-form__col_cont_label">{{=it.first}}</td>' +
    '<td class="l-form__col l-form__col_cont_control" {{=it.colspan}}>' +
      '<div class="l-form__table-control-wrapper">' +
      '<table class="l-form__table-control">' +
        '<tbody class="b-table__tbody">' +
        '<tr>' +
          '<td class="l-form__col-control">' +
            '<div class="l-form__control-wr">{{=it.second}}</div>' +
          '</td>' +
          '<td class="l-form__col l-form__col_cont_hint">' +
            '<div class="field-help {{=it.hint}} hint" data-hint-mn="{{=it.fname}}" data-hint="{{=it.third}}"></div>' +
          '</td>' +
          '<td class="l-form__col l-form__col_cont_status">' +
            '<div class="field-desc" data-mn="{{=it.descName}}">{{=it.desc}}</div>' +
            '<div class="field-status"></div>' +
            '{{?it.devMode || it.testMode}}' +
              '<div class="field-settings">' +
                '{{?it.devMode}}' +
                '<a href="#" class="devel-link-settings devel-link-settings--field " data-elid="{{=it.fname}}" data-tabid="{{=it.tabId}}"></a>' +
                '<a href="#" class="devel-link-delete devel-link-delete--field" data-elid="{{=it.fname}}" data-name="{{=it.label}}" data-tabid="{{=it.tabId}}"></a>' +
                '{{??}}' +
                '<a href="#" class="testmode__form-link b-elem_style_gracescale" data-elid="{{=it.fname}}" data-tabid="{{=it.tabId}}"></a>' +
                '{{?}}' +
              '</div>' +
            '{{?}}' +
          '</td>' +
        '</tr>' +
        '<tr class="l-form__col-error">' +
          '<td colspan="3" class="">' +
            '<div class="b-error-box__wrapper" data-id="{{=it.id}}">' +
              '<div class="b-error-box">' +
                '<div class="b-error-box__top-triangle"></div>' +
                '<div class="b-error-box__inner">{{=it.error}}</div>' +
              '</div>' +
            '</div>' +
          '</td>' +
        '</tr>' +
        '</tbody>' +
      '</table>' +
      '</div>' +
    '</td>' +
    '<td class="l-form__col l-form__col_cont_row-end"></td>' +
  '</tr>';

  var formItemFullWidthRow = '<tr class="{{=it.classes}} l-form__row i-form__item" {{ if (it.hide) { for (var i =0; i < it. hide.length; i++) { }} {{=it.hide[i].name + "-" + hash(it.hide[i].value)}}="yes" {{ } } }} {{ if (it.show) { for (var i =0; i < it.show.length; i++) { }} {{=it.show[i].name + "-" + hash(it.show[i].value)}}="yes" {{ } } }}>' +
    '<td colspan="3" class="l-form__col_type_fullwidth l-form__col l-form__col_cont_control">' +
      '{{=it.first}}' +
      '<table class="l-table-fullwidth">' +
        '<tbody class="b-table__tbody">' +
        '<tr>' +
          '<td class="l-form__col-control">' +
            '<div class="l-form__control-wr">{{=it.second}}</div>' +
          '</td>' +
          '<td class="l-form__col l-form__col_cont_hint">' +
            '<div class="field-help {{=it.hint}} hint" data-hint-mn="{{=it.fname}}" data-hint="{{=it.third}}"></div>' +
          '</td>' +
          '<td class="l-form__col l-form__col_cont_status">' +
            '<div class="field-status" ></div>' +
             '{{?it.devMode || it.testMode}}' +
              '<div class="field-settings">' +
                '{{?it.devMode}}' +
                '<a href="#" class="devel-link-settings devel-link-settings--field " data-elid="{{=it.fname}}" data-tabid="{{=it.tabId}}"></a>' +
                '<a href="#" class="devel-link-delete devel-link-delete--field" data-elid="{{=it.fname}}" data-name="{{=it.label}}" data-tabid="{{=it.tabId}}"></a>' +
                '{{??}}' +
                '<a href="#" class="testmode__form-link b-elem_style_gracescale" data-elid="{{=it.fname}}" data-tabid="{{=it.tabId}}"></a>' +
                '{{?}}' +
              '</div>' +
            '{{?}}' +
          '</td>' +
        '</tr>' +
        '<tr class="l-form__col-error">' +
          '<td colspan="3" class="error">' +
            '<div class="b-error-box__wrapper" data-id="{{=it.id}}">' +
              '<div class="b-error-box">' +
                '<div class="b-error-box__top-triangle"></div>' +
                '<div class="b-error-box__inner">{{=it.error}}</div>' +
              '</div>' +
            '</div>' +
          '</td>' +
        '</tr>' +
        '</tbody>' +
      '</table>' +
    '</td>' +
  '</tr>';

  var formItemFormWidthRow = '<tr class="{{=it.classes}} l-form__row i-form__item" {{ if (it.hide) { for (var i =0; i < it. hide.length; i++) { }} {{=it.hide[i].name + "-" + hash(it.hide[i].value)}}="yes" {{ } } }} {{ if (it.show) { for (var i =0; i < it.show.length; i++) { }} {{=it.show[i].name + "-" + hash(it.show[i].value)}}="yes" {{ } } }}>' +
    '<td colspan="2" class="formwidth l-form__col l-form__col_cont_control">' +
      '{{=it.first}}' +
      '<table class="l-form__table-formwidth l-table-clean">' +
        '<tbody class="b-table__tbody">' +
        '<tr>' +
          '<td class="l-form__col-control">' +
            '<div class="l-form__control-wr">{{=it.second}}</div>' +
          '</td>' +
          '<td class="l-form__col l-form__col_cont_hint">' +
            '<div class="field-help {{=it.hint}} hint" data-hint-mn="{{=it.fname}}" data-hint="{{=it.third}}"></div>' +
          '</td>' +
          '<td class="l-form__col l-form__col_cont_status">' +
            '<div class="field-desc"></div>' +
            '<div class="field-status" ></div>' +
          '</td>' +
        '</tr>' +
        '<tr class="l-form__col-error">' +
          '<td colspan="3" class="error">' +
            '<div class="b-error-box__wrapper" data-id="{{=it.id}}">' +
              '<div class="b-error-box">' +
                '<div class="b-error-box__top-triangle"></div>' +
                '<div class="b-error-box__inner">{{=it.error}}</div>' +
              '</div>' +
            '</div>' +
          '</td>' +
        '</tr>' +
        '</tbody>' +
      '</table>' +
    '</td>' +
    '<td class="l-form__col l-form__col_cont_row-end"></td>' +
  '</tr>';

  var formItemRowWithoutLabel = '<tr class="{{=it.classes}} l-form__row i-form__item without-label" {{ if (it.hide) { for (var i =0; i < it.hide.length; i++) { }} {{=it.hide[i].name + "-" + hash(it.hide[i].value)}}="yes" {{ } } }} {{ if (it.show) { for (var i = 0; i< it.show.length; i++) { }} {{=it.show[i].name + "-" + hash(it.show[i].value)}}="yes" {{ } } }}>' +
    '<td class="l-form__col l-form__col_cont_control" colspan="2">' +
      '<table class="l-table-clean">' +
        '<tbody class="b-table__tbody">' +
        '<tr>' +
          '<td class="l-form__col-control">' +
            '<div class="l-form__control-wr">{{=it.second}}</div>' +
          '</td>' +
          '<td class="l-form__col l-form__col_cont_hint">' +
            '<div class="field-help {{=it.hint}} hint" data-hint-mn="{{=it.fname}}" data-hint="{{=it.third}}"></div>' +
          '</td>' +
          '<td class="l-form__col l-form__col_cont_status">' +
            '<div class="field-desc">{{=it.desc}}</div>' +
            '<div class="field-status"></div>' +
          '{{?it.devMode}}' +
            '<div class="field-settings">' +
              '<a href="#" class="devel-link-settings devel-link-settings--field" data-elid="{{=it.fname}}" data-tabid="{{=it.tabId}}"></a>' +
              '<a href="#" class="devel-link-delete devel-link-delete--field" data-elid="{{=it.fname}}" data-name="{{=it.label}}" data-tabid="{{=it.tabId}}"></a>' +
            '</div>' +
          '{{?}}' +
          '</td>' +
        '</tr>' +
        '<tr class="l-form__col-error">' +
          '<td colspan="3" class="error">' +
            '<div class="b-error-box__wrapper" data-id="{{=it.id}}">' +
              '<div class="b-error-box">' +
                '<div class="b-error-box__top-triangle"></div>' +
                '<div class="b-error-box__inner">{{=it.error}}</div>' +
              '</div>' +
            '</div>' +
          '</td>' +
        '</tr>' +
        '</tbody>' +
      '</table>' +
    '<td class="l-form__col l-form__col_cont_row-end"></td>' +
//    '</td>' +
  '</tr>';

  var formItemRowHidden = '<tr class="hidden l-form__row_type_hidden">' +
      '<td class="l-form__col l-form__col_cont_control" colspan="4">{{=it.second}}</td>' +
    '</tr>';

  var formItemRowTextdata = '<tr class="{{=it.classes}} l-form__row i-form__item" {{ if (it.hide) { for (var i = 0; i < it.hide.length; i++) { }} {{=it.hide[i].name + "-" + hash(it.hide[i].value)}}="yes" {{ } } }} {{ if (it.show) { for (var i =0; i < it.show.length; i++) { }} {{=it.show[i].name + "-" + hash(it.show[i].value)}}="yes" {{ } } }}>' +
    '<td colspan="3">{{=it.second}}</td>' +
    '</tr>';

  var formPlainHint = '<tr data-show-{{=it.name}}-{{=window.hash(it.key)}}="yes" class="depended-hidden-s l-form__row l-form__row_type_plainhint">' +
        '<td class="l-form__col-control" colspan="2">{{=window.htmlEncode(it.content)}}</td>' +
        '<td class="l-form__col l-form__col_cont_row-end"></td>' +
      '</tr>';

  var tabLi = '<li class="tab-group" id="{{=it.tabId}}">' +
    '<span class="subtab switch first hint {{?it.isPin}}subtab_is_pin{{?}}" id="switch-{{=it.tabId}}" data-hint="{{=it.hint}}" data-tabid="{{=it.tabId}}">' +
      '<a href="#" data-tabid="{{=it.tabId}}"><div {{=it.pinIcon}}></div><span class="short">{{=it.shortTitle}}</span><span class="full">{{=it.title}}</span></a>' +
      '<a href="#" class="close" rel="{{=it.tabId}}"><div class="b-tab-close"></div></a>' +
    '</span>' +
  '</li>';

  var tabChld = '<span id="{{=it.tabId}}"><span class="sepr"></span>' +
    '<span class="subtab switch hint" id="switch-{{=it.tabId}}" data-hint="{{=it.hint}}" data-tabid="{{=it.tabId}}">' +
      '<a href="#"  data-tabid="{{=it.tabId}}"><span class="short">{{=it.shortTitle}}</span><span class="full">{{=it.title}}</span></a>' +
      '<a href="#" class="close" rel="{{=it.tabId}}"><div class="i-tab-close b-tab-close"></div></a>' +
    '</span>' +
  '</span>';

  var progressBar = '<div id="{{=it.tabId}}-progressbar" class="b-progressbar__outer">' +
    '<div class="b-progressbar__inner">' +
      '<div class="b-progressbar__comment">{{=it.comment}}</div>' +
      '<div class="b-progressbar__loader-wr">' +
        '<div class="b-progressbar__loader {{=it.colorClass}}" style="width: {{=it.width}}%;">{{=it.per}}</div>' +
      '</div>' +
    '</div>' +
  '<div/>';

  var reportBand = '<div class="band-content {{=it.fullwidth}}" id="{{=it.aid}}">' +
    '<div class="band-title {{=it.titleClass}}">{{=it.title}}</div>' +
    '<div class="band-graphic" ><div class="anychart" id="{{=it.gid}}">' +
    //wrappers for graphics
    '{{ for (var i = 0; i < it.dc; i++) { }}' +
      '<div id="{{=it.gid}}{{=i}}"></div>' +
    '{{ } }}' +
  //wrappers for graphics
    '</div></div>' +
    '<div class="band_show">' +
    '<div class="band_show_button {{=it.hidden}}" data-id="{{=it.id}}">' +
      '<span class="show_msg">{{=it.showMsg}}</span>' +
      '<span class="hide_msg">{{=it.hideMsg}}</span>' +
      '<span class="triangle-band"></span></div>' +
    '</div>' +
    '<div class="band-table block-table {{=it.hiddenClass}}" id="{{=it.id}}">{{=it.table}}</div>' +
  '</div>';

  var emptyBandOverlay = '<div class="b-band__empty-overlay"></div>' +
      '<div class="b-band__empty-msg">{{=it.emptymsg}}</div>' +
      '<div class="b-band__empty-wrapper" id="{{=it.tabId}}-band-empty"></div>';

  var reportBandDash = '<div class="band-content {{=it.fullwidth}}">' +
    '{{?it.empty}}' +
      emptyBandOverlay +
    '{{?}}' +
    '<div class="band-title {{=it.titleClass}}">{{=it.title}}</div>' +
    '<div id="{{=it.gid}}" class="band-chart-cont"></div></div>' +
  '</div>';

  var fatalError = '<div id="fatal-error-{{=it.id}}" class="b-fatal-error b-err__{{=it.type}}">' +
    '<div class="b-fatal-error__round">' +
      '<div class="b-fatal-error__inner">' +
        '<div class="b-fatal-error__sign">' +
          '<div class="b-fatal-error__sign-top"></div>' +
          '<div class="b-fatal-error__sign-body"></div>' +
          '<div class="b-fatal-error__sign-empty"></div>' +
          '<div class="b-fatal-error__sign-dot"></div>' +
        '</div>' +
        '<div class="b-fatal-error__message">' +
            '{{=it.message}}' +
          '{{?it.ref}}' +
            '<div class="more b-fatal-error__more-link"><a href="{{=it.ref}}&newwindow=yes" target="_blank">{{=it.moreMsg}}</a></div>' +
          '{{?}}' +
          '{{?it.refreshLink}}' +
            '<div class="m-item b-fatal-error__refresh-link"><a href="#" data-url="{{=it.refreshLink}}" >{{=it.refreshLinkMsg}}</a></div>' +
          '{{?}}' +
        '</div>' +
        '{{?it.id}}' +
        '<div class="l-buttons l-buttons_for_fatalerror">' +
          '<div class="b-button b-button_type_cancel b-button_for_fatalerror i-button_type_cancel" data-flags="refresh" tabindex="0" data-tabid="{{=it.id}}">{{=it.msgClose}}</div>' +
        '</div>' +
        '{{?}}' +
      '</div>' +
    '</div>' +
    '<div class="b-fatal-error__triangle">' +
    '</div>' +
  '</div>';

  var editinListForm = '<div>' +
    '<form id="editinlist-form-{{=it.id}}" class="l-form__row">' +
      '{{=it.field}}' +
      '<input type="hidden" name="elid" value="{{=it.elid}}" />' +
      '<input type="hidden" name="sok" value="ok" />' +
      '<input type="hidden" name="func" value="{{=it.func}}" />' +
    '</form>' +
    '<div class="l-buttons l-buttons_for_editinlist">' +
      '<div class="b-button b-button_style_small b-button_style_green i-btn-editlis-ok" data-id="{{=it.id}}">&#10004</div>' +
      '<div class="b-button b-button_style_small b-button_style_red i-btn-editlis-cancel" data-id="{{=it.id}}">&#10008</div>' +
    '</div>' +
    '<div id="err-cont-{{=it.id}}" class="editlist-err-cont"></div>' +
  '</div>';

  var hintList = '{{?val.hintByName}}<div class="field-help field-help_available_yes hint b-form-list__hint" data-hint="{{=App.u.escapeQuote(val.hintByName)}}"></div>{{?}}';


  var formListFilterWrapper = '<div id="{{=it.id}}-{{=it.name}}" data-type="listfilter">{{=it.content}}</div>';

  var formListFilter = '<div class="checkbox i-form__item i-form-list__filter" data-srcname="{{=it.srcName}}" data-tabid="{{=it.id}}">' +
         '<div class="b-form-list__filter">' +
            '{{~it.list :val :ind}}' +
              '{{val.id = it.id;}}' +
              formItemCheckbox +
            '{{~}}' +
          '</div>' +
          '<div class="b-form-list__filter-clear i-form-list__filter-clear">{{=it.resetMsg}}</div>' +
          '<div class="b-form-list__filter-notfound">{{=it.notFoundMsg}}</div>' +
        '</div>';

  var formListContent =
      `<div class="b-form-list b-form-list_view_{{=it.view}} i-form-list" id="form-list-{{=it.id}}-{{=it.name}}">
          <table class="b-form-list__table" data-name="{{=it.name}}" data-key="{{=it.key}}" id="inner-form-list-{{=it.id}}-{{=it.name}}">
            <tbody class="b-table__tbody">
          {{~it.rows :v :i}}
            <tr class="b-form-list__row b-form-list__row_t_{{?(i % 2) === 0}}even{{??}}odd{{?}}
             {{?it.filterfield && v[it.filterfield]}} row__has__tags
              {{~v[it.filterfield].v :val :ind}} filter__{{=val}} {{~}}{{??}} row__nohas__tags{{?}}">
              {{ for (var key in it.coldata) { }}
                <td class="b-form-list__col b-form-list__col_align_{{=it.coldata[key].align}} b-form-list__col_type_{{=it.coldata[key].type}} {{?v[key] && v[key].header}}b-form-list__col_header_yes{{?}} b-form-list__col_name_{{=key}}" data-colname="{{=key}}" style="width: {{=it.coldata[key].width}}; min-width: {{=it.coldata[key].width}}">
                  <div class="b-form-list__col-inner b-form-list__col-inner_type_{{=it.coldata[key].type}} {{?it.coldata[key].hint && v[key + "_hint"]}}hint{{?}}" {{?it.coldata[key].hint && v[key + "_hint"]}}data-hint="{{=App.u.escapeQuote(v[key + "_hint"].v)}}" {{?}}>
                  {{?v[key]}}
                    {{?it.coldata[key].type === "data" || it.coldata[key].type === "msg" || v[key].header}}
                      <div class="b-form-list__data {{?v[key].color}}status-{{=v[key].color}}{{?}} {{?it.testMode}}i-testmode-field{{?}}">
                       {{~v[key].props :prop :index }}
                          {{?index !== 0}}
                          <div class="s-icon s16x16 props  hint" style="background-image: url({{=prop.img}})" data-hint="{{=App.u.escapeQuote(prop.hint)}}"></div>
                          {{?}}
                       {{~}}
                       {{=window.filterXSS(window.htmlDecode(v[key].v))}}</div>
                    {{??it.coldata[key].type === "img"}}
                      {{?v[key].src}}
                        {{?v[key].preview}}
                          <a href="{{=v[key].src}}" class="b-image-for-view" data-lightbox="formlist" target="_blank">
                        {{?}}
                        <img src="{{=v[key].src}}" class="b-form-list__img" width="{{=v[key].width}}" height="{{=v[key].height}}"/>
                        {{?v[key].preview}}
                          </a>
                        {{?}}
                      {{??v[key].img}}
                        <div class="{{=v[key].img}}"></div>
                      {{?}}
                    {{??it.coldata[key].type === "button"}}
                       {{~v[key] :val :ind}}
                          ${button}
                       {{~}}
                    {{??it.coldata[key].type === "control"}}
                      {{~v[key] :val :ind}}
                          {{?val.type === "checkbox"}}
                            {{val.id = it.id;}}
                           <div class="i-form__item b-form-list__form-item"><div class="b-form-list__control-wrapper">${formItemCheckbox}</div>${hintList}</div>
                         {{??val.type === "select"}}
                            {{val.id = it.id;}}
                            <div class="i-form__item b-form-list__form-item"><div class="b-form-list__control-wrapper">${formItemSelect}</div>${hintList}</div>
                          {{??val.type === "text"}}
                            {{val.id = it.id;}}
                            <div class="i-form__item b-form-list__form-item"><div class="b-form-list__control-wrapper">${formItemInput}</div>${hintList}</div>
                        {{?}}
                      {{~}}
                    {{?}}
                  {{?}}
                  </div>
                </td>
              {{ } }}
            </tr>
          {{~}}
          </tbody>
          </table>
      </div>`;

  var formListBlocksContent = '{{?it.label}}<h3 class="b-form-blocks__label">{{=it.label}}</h3>{{?}}' +
   '<div class="b-form-blocks">' +
      '{{~it.rows :v :i}}' +
        '<div class="b-form-blocks__block {{?it.filterfield && v[it.filterfield]}} row__has__tags' +
              '{{~v[it.filterfield].v :val :ind}} filter__{{=val}} {{~}}{{??}} row__nohas__tags{{?}}">' +
          '{{ for (var key in it.coldata) { }}' +
    //      '<td class="b-form-list__col align-{{=it.coldata[key].align}}" style="width: {{=it.coldata[key].width}};">' +
            '<div class="b-form-list__col-inner b-form-blocks__col-inner_type_{{=it.coldata[key].type}}">' +
            '{{?v[key]}}' +
              '{{?it.coldata[key].type === "data" || it.coldata[key].type === "msg"}}' +
              '<div class="b-form-list__data {{?v[key].color}}status-{{=v[key].color}}{{?}}">{{=window.filterXSS(window.htmlDecode(v[key].v))}}</div>' +
              '{{??it.coldata[key].type === "img"}}' +
                '{{?v[key].src}}' +
                  '<img src="{{=v[key].src}}" class="b-form-list__img" width="{{=v[key].width}}" height="{{=v[key].height}}"/>' +
                '{{??v[key].img}}' +
                  '<div class="{{=v[key].img}}"></div>' +
                '{{?}}' +
              '{{??it.coldata[key].type === "button"}}' +
              '<div class="b-form-list__button-wrapper">' +
              '{{~v[key] :val :ind}}' +
                button +
              '{{~}}' +
              '</div>' +
              '{{?}}' +
            '{{?}}' +
            '</div>' +
    //      '</td>' +
          '{{ } }}' +
        '</div>' +
      '{{~}}' +
      '</div>';

  var formListItemRow =
      '<tr class="{{=it.classes}} l-form__row" {{ if (it.hide) { for (var i =0; i < it.hide.length; i++) { }} {{=it.hide[i].name + "-" + hash(it.hide[i].value)}}="yes" {{ } } }} {{ if (it.show) { for (var i =0; i < it.show.length; i++) { }} {{=it.show[i].name + "-" + hash(it.show[i].value)}}="yes" {{ } } }}>' +
        '<td class="l-form__col l-form__col_cont_control" colspan="3">' +
          '<div id="{{=it.id}}-{{=it.name}}" class="{{=it.id}}-list" data-type="list" data-name="{{=it.name}}">' +
            '{{?it.view == "block"}}' +
              formListBlocksContent +
            '{{??}}' +
              formListContent +
            '{{?}}' +
          '</div>' +
        '</td>' +
      '</tr>';

  var tip = '<div class="b-tip b-tip_name_{{=it.name}}">' +
        '<div class="b-tip__inner">' +
          '{{=it.content}}' +
        '</div>' +
      '<div class="b-tip__close" data-name="{{=it.name}}"></div>' +
    '</div>';

  var usefulLinks = '<div class="b-useful-links {{?it.isCollapsed}}b-useful-links_is_collapsed{{?}}">' +
      '<div class="b-tip__close i-userful-links-collapse"></div>' +
      '<div class="b-tip__inner">' +
        '<div class="b-useful-links__title">{{=it.title}}</div>' +
        '<div class="b-useful-links__content">{{=it.content}}</div>' +
      '</div>' +
    '</div>';

  var infoList = '<div class="b-infolist">' +
        '<table class="b-infolist__table">' +
        '<tbody class="b-table__tbody">' +
          '{{~it.rows :v :i}}' +
          '<tr class="b-infolist__row {{?v.type === "header"}}b-infolist__row_type_header{{?}}">' +
            '{{?v.type === "header"}}' +
              '<td class="b-infolist__col b-infolist__col_type_header" colspan="2">{{=v.label}}</td>' +
            '{{??v.type === "data"}}' +
              '<td class="b-infolist__col b-infolist__col_type_label">{{=v.label}}</td>' +
              '<td class="b-infolist__col b-infolist__col_type_value status-{{=v.color}} {{?it.testMode}}i-testmode-field{{?}} hint" data-hint="{{=v.hint}}" data-name="{{=v.name}}">{{=v.value}}</td>' +
            '{{??v.type === "link"}}' +
              '<td class="b-infolist__col b-infolist__col_type_label">{{=v.label}}</td>' +
              '{{?v.link}}' +
              '<td class="b-infolist__col b-infolist__col_type_value m-item"><a href="#" data-url="{{=v.link}}" data-name="{{=v.name}}" data-hint="{{=v.hint}}" class="i-menu-link b-infolist__col_type_value {{?it.testMode}}i-testmode-field{{?}} hint">{{=v.value}}</a></td>' +
              '{{??v.url}}' +
              '<td class="b-infolist__col b-infolist__col_type_value"><a href="{{=v.url}}" target="_blank" class="b-infolist__col_type_value {{?it.testMode}}i-testmode-field{{?}} hint" data-hint="{{=v.hint}}">{{=v.value}}</a></td>' +
              '{{?}}' +
            '{{??v.type === "indicator"}}' +
              '<td class="b-infolist__col b-infolist__col_type_label">{{=v.label}}</td>' +
              '<td class="b-infolist__col b-infolist__col_type_value m-item {{?it.testMode}}i-testmode-field{{?}}" data-name="{{=v.name}}">{{=v.value}} (<span class="status-{{=v.color}}">{{=v.suffix}}</span>)</td>' +
            '{{?}}' +
          '</tr>' +
          '{{~}}' +
        '</tbody>' +
        '</table>' +
      '</div>';

  var licenseDashBlock = `<div class="b-license-block">
    <div class="b-license-block__line">{{=it.msg_limit}}:
    {{?it.limit_webdomain === 'infinit'}} {{=it.msg_infinit}} {{??}}
    {{=it.msg_before}} {{=it.limit_webdomain}} {{=it.msg_domains}} <span class="{{?it.left_webdomain_warn}}b-license-block__warning{{?}}">({{=it.msg_left}} {{=it.left_webdomain}})</span>
    {{?}}
    </div>
    <div class="b-license-block__line">{{=it.msg_version}}: {{=it.version}} 
      {{?it.has_update}}<a class="b-menu-item b-license-block__update" data-url="?func={{=it.update_func}}">{{=it.msg_update_panel}}</a>{{?}}
    </div>
    {{?it.limit_webdomain !== 'infinit'}} 
    <div class="b-button b-menu-item" data-url="?func={{=it.change_limit_func}}">{{=it.msg_change_limit}}</div>
    {{?}}
    <div class="b-button b-button_type_cancel b-menu-item" data-url="?func={{=it.details_func}}">{{=it.msg_details}}</div>
  </div>`;


  const updateToIsp6 = `
    <div class="b-update-block">
      <p class="b-update-block__text">{{=it.msg_created}} {{=it.used_webdomain}}{{=it.msg_webdomains}} {{=it.msg_recommended}} <strong>{{=it.recommended_pricelist}}</strong>{{?it.recommended_unlimit === 'on'}}{{=it.msg_unlimit_allows_use}}{{??}}{{=it.msg_limit_allows_use}} {{=it.recommended_count}} {{?}} {{=it.msg_sites}}</p>
      <div class="b-button b-menu-item" data-url="?func={{=it.pricelist_func}}">{{=it.msg_change_pricelist}}</div>
      <div class="b-button b-button_type_cancel b-menu-item" data-url="?func={{=it.changes_func}}">{{=it.msg_changelog}}</div>
    </div>
  `;

  var fatalAlert = '<div class="b-alert__inner {{?it.refreshLink}} b-alert__inner_t_refresh-link{{?}}">' +
      '<div class="b-alert__icon">' +
        '<div class="b-alert__sign">' +
          '<div class="b-alert__sign-top"></div>' +
          '<div class="b-alert__sign-body"></div>' +
          '<div class="b-alert__sign-empty"></div>' +
          '<div class="b-alert__sign-dot"></div>' +
        '</div>' +
      '</div>' +
      '<div class="b-alert__msg-outter"><div class="b-alert__msg">{{=it.msg}}</div></div>' +
        '{{?it.ref}}' +
          '<div class="more b-fatal-error__more-link">' +
            '<a href="{{=it.ref}}" target="_blank">{{=it.moreMsg}}</a>' +
          '</div>' +
        '{{?}}' +
        '{{?it.refreshLink}}' +
          '<div class="m-item b-fatal-error__refresh-link">' +
            '<a href="#" data-url="{{=it.refreshLink}}" >{{=it.refreshLinkMsg}}</a>' +
          '</div>' +
        '{{?}}' +
      '</div>' +
      '<div class="b-alert__clear"></div>';

  var msgTemplList = '<div class="b-msg-templ" data-target="{{=it.id}}">' +
      '<div class="b-msg-templ__table">' +
        '<div class="b-msg-templ__table-col b-msg-templ__table-col_content_yes">' +
          '<ul class="b-msg-templ__title-content">' +
            '{{~it.templList  :v :i}}' +
              '<li class="b-msg-templ__title-content-item b-msg-templ__title-content-item_ind_{{=i}}">{{=v.msg}}</li>' +
            '{{~}}' +
          '</ul>' +
        '</div>' +
        '<div class="b-msg-templ__table-col b-msg-templ__table-col_title_yes">' +
          '<ul class="b-msg-templ__title-list">' +
            '{{~it.templList  :v :i}}' +
              '{{?i !== 0}}<li class="b-msg-templ__title-list-item b-msg-templ__title-list-item_is_comma">, </li>{{?}}<li class="b-msg-templ__title-list-item" data-ind="{{=i}}" data-id="{{=v.id}}">{{=v.name}}</li>' +
            '{{~}}' +
          '</ul>' +
        '</div>' +
      '</div>' +
    '</div>';

  var t = doT.template,
      vSettings = {};
  $.extend(vSettings, doT.templateSettings, { varname: 'val' });

  return {
    tabCont: t(tabCont),
    tabContEmpty: t(tabContEmpty),
    tabContForm: t(tabContForm),
    tabContMap: t(tabContMap),
    listPager: t(listPager),
    tabContDashBoard: t(tabContDashBoard),
    tabLi: t(tabLi),
    tabChld: t(tabChld),
    formPageTitle: t(formPageTitle),
    formItemInput: t(formItemInput, vSettings),
    formItemCaptcha: t(formItemCaptcha),
    formItemFile: t(formItemFile),
    formItemPassword: t(formItemPassword),
    formItemInputWithZoom: t(formItemInputWithZoom),
    formItemInputWithZoom1: t(formItemInputWithZoom1),
    formItemTextarea: t(formItemTextarea),
    formItemCheckbox: t(formItemCheckbox, vSettings),
    formItemLabel: t(formItemLabel),
    formItemExtrBtn: t(formItemExtrBtn),
    formItemDesk: t(formItemDesk),
    formItemDeskRadio: t(formItemDeskRadio),
    formItemSelect: t(formItemSelect, vSettings),
    formItemSelectList: t(formItemSelectList, vSettings),
    formItemMSelect: t(formItemMSelect),
    formItemHtmldata: t(formItemHtmldata),
    formItemTicket: t(formItemTicket),
    formItemLink: t(formItemLink),
    formItemSelectAutocomplete: t(formItemSelectAutocomplete),
    formItemTicketMsg: t(formItemTicketMsg),
    formPageWrapper: t(formPageWrapper),
    formItemRow: t(formItemRow),
    formItemFullWidthRow: t(formItemFullWidthRow),
    formItemFormWidthRow: t(formItemFormWidthRow),
    formItemRowWithoutLabel: t(formItemRowWithoutLabel),
    formItemRowTextdata: t(formItemRowTextdata),
    formItemRowHidden: t(formItemRowHidden),
    formItemFrame: t(formItemFrame),
    formListContent: t(formListContent),
    formListBlocksContent: t(formListBlocksContent),
    filterWrapper: t(filterWrapper),
    filterSavedItem: t(filterSavedItem),
    filterRow: t(filterRow),
    filterItemLabel: t(filterItemLabel),
    filterItem: t(filterItem),
    formItemRowDesc: t(formItemRowDesc),
    formListItemRow: t(formListItemRow),
    formPlainHintRow: t(formPlainHint),
    formItemSlider: t(formItemSlider),
    formItemMgrview: t(formItemMgrview),
    formItemRadio: t(formItemRadio),
    formItemRadioImg: t(formItemRadioImg),
    formItemTextData: t(formItemTextData),
    dashTaskbar: t(dashTaskbar),
    progressBar: t(progressBar),
    reportBand: t(reportBand),
    reportBandDash: t(reportBandDash),
    banner: t(banner),
    buttons: t(buttons),
    fatalError: t(fatalError),
    passwdCheck: t(passwdCheck),
    editinListForm: t(editinListForm),
    confirmCheck: t(confirmCheck),
    formItemSliderEditInList: t(formItemSliderEditInList),
    tip: t(tip),
    infoList: t(infoList),
    fatalAlert: t(fatalAlert),
    msgTemplList: t(msgTemplList),
    emptyBandOverlay: t(emptyBandOverlay),
    usefulLinks: t(usefulLinks),
    formListFilter: t(formListFilter),
    formListFilterWrapper: t(formListFilterWrapper),
    formItemDateTime: t(formItemDateTime),
    licenseDashBlock: t(licenseDashBlock),
    updateToIsp6: t(updateToIsp6),
  };
}());