1<!DOCTYPE html> 2<!--#set $active_lang=$active_lang.replace('_', '-').lower()#--> 3<html lang="$active_lang" <!--#if $rtl#-->dir="rtl"<!--#end if#--> id="sabnzbd" data-bind="filedrop: { overlaySelector: '.main-filedrop', onFileDrop: addNZBFromFile }"> 4 <head> 5 <!-- 6 Glitter V2 7 By Safihre (2016) - safihre@sabnzbd.org 8 9 Code extended from Shiny-template 10 Code examples used from Knockstrap-template 11 12 Many things are inserted on-load, making the 13 output hard to read. If you want to know what's 14 going on, read the main.tmpl file! 15 --> 16 <title data-bind="text: title">SABnzbd</title> 17 18 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 19 <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no, maximum-scale=1" /> 20 <meta name="mobile-web-app-capable" content="yes" /> 21 <meta name="application-name" content="SABnzbd"> 22 <meta name="apple-mobile-web-app-capable" content="yes" /> 23 <meta name="apple-mobile-web-app-title" content="SABnzbd" /> 24 <meta name="apple-mobile-web-app-status-bar-style" content="black" /> 25 <meta name="msapplication-navbutton-color" content="#000000" /> 26 <meta name="theme-color" content="#000000" /> 27 28 <link rel="apple-touch-icon" sizes="76x76" href="./staticcfg/ico/apple-touch-icon-76x76-precomposed.png" /> 29 <link rel="apple-touch-icon" sizes="120x120" href="./staticcfg/ico/apple-touch-icon-120x120-precomposed.png" /> 30 <link rel="apple-touch-icon" sizes="152x152" href="./staticcfg/ico/apple-touch-icon-152x152-precomposed.png" /> 31 <link rel="apple-touch-icon" sizes="180x180" href="./staticcfg/ico/apple-touch-icon-180x180-precomposed.png" /> 32 <link rel="apple-touch-icon" sizes="192x192" href="./staticcfg/ico/android-192x192.png" /> 33 <link rel="mask-icon" href="./staticcfg/ico/safari-pinned-tab.svg" color="#383F45"> 34 <link rel="shortcut icon" type="image/ico" href="./staticcfg/ico/favicon.ico?v=$version" data-bind="attr: { 'href': SABIcon }" /> 35 36 <link rel="stylesheet" type="text/css" href="./static/bootstrap/css/bootstrap.min.css?v=$version" /> 37 <link rel="stylesheet" type="text/css" href="./static/stylesheets/glitter.css?v=$version" /> 38 <link rel="stylesheet" type="text/css" href="./static/stylesheets/glitter.mobile.css?v=$version" media="all and (max-width: 768px)" /> 39 <!--#if $color_scheme not in ('Light', '') #--> 40 <link rel="stylesheet" type="text/css" href="./static/stylesheets/colorschemes/${color_scheme}.css?v=$version"/> 41 <!--#end if#--> 42 43 <!-- Make translations available in scripts --> 44 <script type="text/javascript"> 45 var apiKey = "$apikey"; 46 var displayLang = "$active_lang"; 47 var sabSpeedHistory = [$bytespersec_list]; 48 var newRelease = "$new_release"; 49 var newReleaseUrl = "$new_rel_url"; 50 var glitterIsBeta = ("$version".search(/[develop|Alpha|Beta|RC]/)) > 0; 51 52 var glitterTranslate = new Object(); 53 glitterTranslate.paused = "$T('post-Paused')"; 54 glitterTranslate.left = "$T('Glitter-left')"; 55 glitterTranslate.clearWarn = "$T('confirm')"; 56 glitterTranslate.pausePromptFail = "$T('Glitter-pausePromptFail')" 57 glitterTranslate.pauseFor = "$T('pauseFor')" 58 glitterTranslate.minutes = "$T('mins')" 59 glitterTranslate.shutdown = "$T('shutdownOK?')"; 60 glitterTranslate.restart = "$T('explain-Restart') $T('explain-needNewLogin')".replace(/\<br(\s*\/|)\>/g, '\n'); 61 glitterTranslate.repair = "$T('explain-Repair')".replace(/<br \/>/g, "\n").replace(/"/g,'"'); 62 glitterTranslate.deleteMsg = "$T('nzo-delete')"; 63 glitterTranslate.removeDown = "$T('confirm')"; 64 glitterTranslate.removeDow1 = "$T('confirm')"; 65 glitterTranslate.renameAbort = "$T('Glitter-confirmAbortDirectUnpack')\n$T('confirm')"; 66 glitterTranslate.retryAll = "$T('link-retryAll')?"; 67 glitterTranslate.fetch = "$T('Glitter-fetch')"; 68 glitterTranslate.encrypted = "$T('Glitter-encrypted')"; 69 glitterTranslate.duplicate = "$T('Glitter-duplicate')"; 70 glitterTranslate.tooLarge = "$T('Glitter-tooLarge')"; 71 glitterTranslate.unwanted = "$T('Glitter-unwanted')"; 72 glitterTranslate.incomplete = "$T('Glitter-incomplete')"; 73 glitterTranslate.filtered = "$T('Glitter-filtered')"; 74 glitterTranslate.waitSec = "$T('Glitter-waitSec')"; 75 glitterTranslate.checking = "$T('post-Checking')"; 76 glitterTranslate.misingArt = "$T('missingArt')"; 77 glitterTranslate.noSelect = "$T('Glitter-noSelect')"; 78 glitterTranslate.sendThanks = "$T('Glitter-sendThanks')"; 79 glitterTranslate.chooseFile = "$T('Glitter-chooseFile')"; 80 glitterTranslate.orphanedJobsMsg = "$T('explain-orphans')"; 81 glitterTranslate.useCache = "$T('explain-cache_limitstr').replace("64M", "256M").replace("128M", "512M")"; 82 glitterTranslate.noLocalStorage = "$T('Glitter-noLocalStorage')"; 83 glitterTranslate.glitterTips = "$T('Glitter-glitterTips')"; 84 glitterTranslate.updateAvailable = "$T('Glitter-updateAvailable')"; 85 glitterTranslate.defaultText = "$T('default')"; 86 glitterTranslate.noneText = "$T('None')"; 87 glitterTranslate.moreText = "$T('Glitter-more')"; 88 89 glitterTranslate.status = []; 90 glitterTranslate.status['DirectUnpack'] = "$T('opt-direct_unpack')"; 91 glitterTranslate.status['Completed'] = "$T('post-Completed')"; 92 glitterTranslate.status['Failed'] = "$T('post-Failed')"; 93 glitterTranslate.status['Queued'] = "$T('post-Queued')"; 94 glitterTranslate.status['Repairing...'] = "$T('post-Repairing')"; 95 glitterTranslate.status['Extracting...'] = "$T('post-Extracting')"; 96 glitterTranslate.status['Moving...'] = "$T('post-Moving')"; 97 glitterTranslate.status['Running script...'] = "$T('post-Running')"; 98 glitterTranslate.status['Fetching extra blocks...'] = "$T('post-Fetching')"; 99 glitterTranslate.status['Quick Check...'] = "$T('post-QuickCheck')"; 100 glitterTranslate.status['Verifying...'] = "$T('post-Verifying')"; 101 glitterTranslate.status['Checking'] = "$T('post-Checking')"; 102 glitterTranslate.status['Download'] = "$T('stage-download')"; 103 glitterTranslate.status['Repair'] = "$T('stage-repair')"; 104 glitterTranslate.status['Filejoin'] = "$T('stage-filejoin')"; 105 glitterTranslate.status['Unpack'] = "$T('stage-unpack')"; 106 glitterTranslate.status['Script'] = "$T('stage-script')"; 107 glitterTranslate.status['Source'] = "$T('stage-source')"; 108 glitterTranslate.status['Servers'] = "$T('stage-servers')"; 109 glitterTranslate.status['INFO'] = "$T('log-info')".replace('+', '').toUpperCase(); 110 glitterTranslate.status['WARNING'] = "$T('Glitter-warning')"; 111 glitterTranslate.status['ERROR'] = "$T('Glitter-error')"; 112 113 glitterTranslate.pp = []; 114 glitterTranslate.pp['Download'] = "$T('pp-none')"; 115 glitterTranslate.pp['+Repair'] = "$T('pp-repair')"; 116 glitterTranslate.pp['+Unpack'] = "$T('pp-unpack')"; 117 glitterTranslate.pp['+Delete'] = "$T('pp-delete')"; 118 119 glitterTranslate.priority = []; 120 glitterTranslate.priority['Force'] = "$T('pr-force')"; 121 glitterTranslate.priority['High'] = "$T('pr-high')"; 122 glitterTranslate.priority['Normal'] = "$T('pr-normal')"; 123 glitterTranslate.priority['Low'] = "$T('pr-low')"; 124 glitterTranslate.priority['Stop'] = "$T('pr-stop')"; 125 </script> 126 127 <!-- Inclusion is faster than external scripts. We load momentJS locale seperatly so failure won't break anything --> 128 <script type="text/javascript"> 129 <!--#include raw $webdir + "/static/javascripts/jquery-3.5.1.min.js"#--> 130 <!--#include raw $webdir + "/static/javascripts/jquery-ui.min.js"#--> 131 <!--#include raw $webdir + "/static/javascripts/jquery.peity.min.js"#--> 132 <!--#include raw $webdir + "/static/javascripts/moment-2.26.0.min.js"#--> 133 <!--#include raw $webdir + "/static/javascripts/knockout-3.5.1.min.js"#--> 134 <!--#include raw $webdir + "/static/javascripts/knockout-extensions.js"#--> 135 <!--#include raw $webdir + "/static/bootstrap/js/bootstrap.min.js"#--> 136 <!--#include $webdir + "/static/javascripts/glitter.js"#--> 137 </script> 138 <!--#if active_lang != 'en'#--> 139 <script type="text/javascript" src="./static/javascripts/momentjs_locale/${active_lang}.js"></script> 140 <!--#end if#--> 141 </head> 142 <body> 143 <div class="container main-navbar"> 144 <!--#include $webdir + "/include_menu.tmpl"#--> 145 </div> 146 147 <div class="container main-content"> 148 <div class="history-queue-swicher"> 149 <ul class="nav nav-tabs"> 150 <li class="active"> 151 <a href="#queue-tab" data-toggle="tab">$T('menu-queue') <span class="badge" data-bind="text: queue.totalItems"></span></a> 152 </li> 153 <li> 154 <a href="#history-tab" data-toggle="tab">$T('menu-history')<span class="badge" data-bind="text: history.totalItems"></span></a> 155 </li> 156 <li> 157 <a href="#queue-messages" data-toggle="tab">$T('warnings')<span class="badge" data-bind="text: hasMessages, css: { 'badge-warning': hasMessages() }"></span></a> 158 </li> 159 </ul> 160 </div> 161 162 <!--#include $webdir + "/include_queue.tmpl"#--> 163 <!--#include $webdir + "/include_messages.tmpl"#--> 164 <!--#include $webdir + "/include_history.tmpl"#--> 165 </div> 166 167 <!--#include $webdir + "/include_overlays.tmpl"#--> 168 </body> 169</html> 170