2016-04-27 13:48:01 +02:00
<!doctype html>
2013-03-19 21:57:52 +01:00
< html >
<!-- {{{ head -->
< head >
< link rel = "icon" href = "favicon.ico" / >
< meta charset = "utf-8" >
< meta http-equiv = "X-UA-Compatible" content = "IE=edge,chrome=1" >
< meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
2017-09-13 15:37:55 +02:00
< meta name = "theme-color" content = "#0A8476" >
2013-03-19 21:57:52 +01:00
2015-03-22 12:31:54 +01:00
< title ng-bind = "$root.pageTitle" > Aria2 WebUI< / title >
2013-03-19 21:57:52 +01:00
2016-12-23 11:31:01 +01:00
< link rel = "stylesheet" href = "css/bootstrap.min.css" >
2014-06-09 03:35:50 +02:00
< link rel = "stylesheet" href = "css/font-awesome.min.css" >
2015-10-30 08:53:40 +01:00
< link rel = "stylesheet" href = "css/flag-icon.min.css" >
2013-03-19 21:57:52 +01:00
< link rel = "stylesheet" href = "css/style.css" >
< link rel = "stylesheet" href = "css/download.css" >
< link rel = "stylesheet" href = "css/modals.css" >
2018-08-30 19:58:55 +02:00
< script src = "app.js" > < / script >
2013-03-19 21:57:52 +01:00
< / head >
<!-- }}} -->
2016-09-19 16:51:05 +02:00
< body ng-controller = "MainCtrl" ng-cloak >
2013-03-19 21:57:52 +01:00
<!-- {{{ header -->
2016-09-19 16:51:05 +02:00
< div class = "navbar main-navbar navbar-static-top" ng-controller = "NavCtrl" >
2013-03-19 21:57:52 +01:00
< div class = "container" >
2015-03-13 09:39:35 +01:00
< div class = "navbar-header" >
< button type = "button" class = "navbar-toggle collapsed" ng-click = "collapsed = !collapsed" >
2015-10-30 01:47:15 +01:00
< span class = "sr-only" > {{ 'Toggle navigation' | translate }}< / span >
2015-03-13 09:39:35 +01:00
< span class = "icon-bar" > < / span >
< span class = "icon-bar" > < / span >
< span class = "icon-bar" > < / span >
< / button >
< a class = "navbar-brand" > < span class = "fa fa-fw fa-arrow-circle-down" > < / span > {{ name }}< / a >
< / div >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< form class = "navbar-form navbar-right" role = "search" >
< div class = "form-group" >
2015-10-28 17:31:35 +01:00
< input class = "form-control" type = "text" placeholder = "{{ 'Search' | translate }}" ng-model = "downloadFilter" autocomplete = "off" ng-change = "onDownloadFilter()" / >
2015-03-13 09:39:35 +01:00
< / div >
2014-05-31 19:32:46 +02:00
< / form >
<!-- {{{ Nav menu -->
2015-03-22 00:15:07 +01:00
< div class = "collapse navbar-collapse" collapse = "collapsed" >
2015-03-13 09:39:35 +01:00
< ul class = "nav navbar-nav" >
< li class = "dropdown" dropdown >
< a class = "dropdown-toggle" href = "#" dropdown-toggle >
2015-10-28 17:31:35 +01:00
{{ 'Add' | translate }} < span class = "caret" > < / span >
2015-03-13 09:39:35 +01:00
< / a >
< ul class = "dropdown-menu" >
< li >
< a href = "#" ng-click = "addUris()" >
2017-05-16 04:54:02 +02:00
< span class = "fa fa-fw fa-link" > < / span > {{ 'By URIs' | translate }}
2015-03-13 09:39:35 +01:00
< / a >
< / li >
< li ng-show = "isFeatureEnabled('BitTorrent') && enable.torrent" >
< a href = "#" ng-click = "addTorrents()" >
2015-10-28 17:31:35 +01:00
< span class = "fa fa-fw fa-cloud-download" > < / span > {{ 'By Torrents' | translate }}
2015-03-13 09:39:35 +01:00
< / a >
< / li >
< li ng-show = "isFeatureEnabled('Metalink') && enable.metalink" >
< a href = "#" ng-click = "addMetalinks()" >
2015-10-28 17:31:35 +01:00
< span class = "fa fa-fw fa-file-text-o" > < / span > {{ 'By Metalinks' | translate }}
2015-03-13 09:39:35 +01:00
< / a >
< / li >
< / ul >
2013-03-19 21:57:52 +01:00
< / li >
2015-03-13 09:39:35 +01:00
< li class = "dropdown" dropdown >
2015-10-28 17:31:35 +01:00
< a class = "dropdown-toggle" href = "#" dropdown-toggle > {{ 'Manage' | translate }} < span class = "caret" > < / span > < / a >
2015-03-13 09:39:35 +01:00
< ul class = "dropdown-menu" >
< li >
< a
href="#"
2015-10-28 17:31:35 +01:00
ng-click="forcePauseAll()">< span class = "fa fa-fw fa-pause" > < / span > {{ 'Pause All' | translate }}< / a >
2015-03-13 09:39:35 +01:00
< / li >
< li >
< a
href="#"
2015-10-28 17:31:35 +01:00
ng-click="unpauseAll()">< span class = "fa fa-fw fa-play" > < / span > {{ 'Resume Paused' | translate }}< / a >
2015-03-13 09:39:35 +01:00
< / li >
< li >
< a
href="#"
2015-10-28 17:31:35 +01:00
ng-click="purgeDownloadResult()">< span class = "fa fa-fw fa-times-circle" > < / span > {{ 'Purge Completed' | translate }}< / a >
2015-03-13 09:39:35 +01:00
< / li >
2016-03-30 08:51:01 +02:00
< li >
< a
href="#"
ng-click="shutDownServer()">< span class = "fa fa-fw fa-power-off" > < / span > {{ 'Shutdown Server' | translate }}< / a >
< / li >
2015-03-13 09:39:35 +01:00
<!-- not adding remove all as requires many rpc syscalls to finish
< li >
< a
href="#"
ng-click="removeAll()">< span class = "fa fa-fw fa-fire" > < / span > Remove All< / a >
< / li >
-->
< / ul >
2013-03-19 21:57:52 +01:00
< / li >
2015-03-13 09:39:35 +01:00
2013-03-19 21:57:52 +01:00
< / ul >
2015-03-13 09:39:35 +01:00
< ul class = "nav navbar-nav" >
< li class = "dropdown" dropdown >
< a
href="#"
2015-10-28 17:31:35 +01:00
class="dropdown-toggle" dropdown-toggle>{{ 'Settings' | translate }} < span class = "caret" > < / span > < / a >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< ul class = "dropdown-menu" >
< li >
< a
ng-click="changeCSettings()"
2017-05-16 04:54:02 +02:00
href="#">< span class = "fa fa-fw fa-cog" > < / span > {{ 'Connection Settings' | translate }}< / a >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< li >
< a
ng-click="changeGSettings()"
2017-05-16 04:54:02 +02:00
href="#">< span class = "fa fa-fw fa-cogs" > < / span > {{ 'Global Settings' | translate }}< / a >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< li >
< a
ng-click="showServerInfo()"
2015-10-28 17:31:35 +01:00
href="#">< span class = "fa fa-fw fa-info-circle" > < / span > {{ 'Server info' | translate }}< / a >
2015-03-13 09:39:35 +01:00
< / li >
2014-02-17 01:13:25 +01:00
2015-03-13 09:39:35 +01:00
< li >
< a
ng-click="showAbout()"
2015-10-28 17:31:35 +01:00
href="#">< span class = "fa fa-fw fa-question-circle" > < / span > {{ 'About and contribute' | translate }}< / a >
2015-03-13 09:39:35 +01:00
< / li >
< / ul >
< / li >
< / ul >
2014-02-17 01:13:25 +01:00
2015-03-13 09:39:35 +01:00
< ul class = "nav navbar-nav pull-right" ng-show = "false" >
< li class = "dropdown" dropdown >
< a
class="dropdown-toggle" dropdown-toggle
2015-10-30 01:47:15 +01:00
href="#">{{ 'Miscellaneous' | translate }} < span class = "caret" > < / span > < / a >
2015-03-13 09:39:35 +01:00
< ul class = "dropdown-menu" >
< li >
2015-10-29 16:02:28 +01:00
< a href = "#" > < span class = "fa fa-fw fa-list-alt" > < / span > {{ 'Global Statistics' | translate }}< / a >
2015-03-13 09:39:35 +01:00
< / li >
< li >
2015-10-30 01:47:15 +01:00
< a href = "#" > < span class = "fa fa-fw fa-info-circle" > < / span > {{ 'About' | translate }}< / a >
2015-03-13 09:39:35 +01:00
< / li >
< / ul >
< / li >
< / ul >
2015-10-30 08:53:40 +01:00
< ul class = "nav navbar-nav" >
< li class = "dropdown" dropdown >
< a
href="#"
class="dropdown-toggle" dropdown-toggle>{{ 'Language' | translate }} < span class = "caret" > < / span > < / a >
< ul class = "dropdown-menu" >
< li >
< a
ng-click="changeLanguage('en_US')"
href="#">< span class = "fa fa-fw flag-icon flag-icon-us" > < / span > English< / a >
< / li >
< li >
< a
ng-click="changeLanguage('th_TH')"
2015-10-30 15:41:55 +01:00
href="#">< span class = "fa fa-fw flag-icon flag-icon-th" > < / span > ไทย< / a >
2015-10-30 08:53:40 +01:00
< / li >
2015-10-30 15:04:18 +01:00
< li >
< a
ng-click="changeLanguage('nl_NL')"
2015-10-30 15:41:55 +01:00
href="#">< span class = "fa fa-fw flag-icon flag-icon-nl" > < / span > Nederlands< / a >
2015-10-30 15:04:18 +01:00
< / li >
2015-10-30 08:53:40 +01:00
< li >
< a
ng-click="changeLanguage('zh_CN')"
href="#">< span class = "fa fa-fw flag-icon flag-icon-cn" > < / span > 简体中文< / a >
< / li >
2016-12-23 08:07:58 +01:00
< li >
< a
ng-click="changeLanguage('zh_TW')"
href="#">< span class = "fa fa-fw flag-icon flag-icon-tw" > < / span > 繁體中文< / a >
< / li >
2016-02-02 16:30:15 +01:00
< li >
< a
ng-click="changeLanguage('pl_PL')"
href="#">< span class = "fa fa-fw flag-icon flag-icon-pl" > < / span > Polish< / a >
2016-02-18 20:51:54 +01:00
< / li >
< li >
< a
ng-click="changeLanguage('fr_FR')"
2016-02-18 20:53:41 +01:00
href="#">< span class = "fa fa-fw flag-icon flag-icon-fr" > < / span > Français< / a >
2016-05-01 18:12:31 +02:00
< / li >
2016-04-23 12:31:50 +02:00
< li >
< a
ng-click="changeLanguage('de_DE')"
href="#">< span class = "fa fa-fw flag-icon flag-icon-de" > < / span > Deutsch< / a >
2016-04-27 13:57:48 +02:00
< / li >
2016-04-30 05:34:16 +02:00
< li >
< a
ng-click="changeLanguage('es_ES')"
2016-04-30 05:41:58 +02:00
href="#">< span class = "fa fa-fw flag-icon flag-icon-es" > < / span > Español< / a >
2016-04-30 05:34:16 +02:00
< / li >
2016-08-24 13:16:06 +02:00
< li >
< a
ng-click="changeLanguage('ru_RU')"
href="#">< span class = "fa fa-fw flag-icon flag-icon-ru" > < / span > Русский< / a >
< / li >
2016-09-05 11:43:58 +02:00
< li >
< a
ng-click="changeLanguage('it_IT')"
href="#">< span class = "fa fa-fw flag-icon flag-icon-it" > < / span > Italiano< / a >
< / li >
2016-12-24 16:18:46 +01:00
< li >
< a
ng-click="changeLanguage('tr_TR')"
href="#">< span class = "fa fa-fw flag-icon flag-icon-tr" > < / span > Turkish< / a >
< / li >
2017-04-08 00:04:23 +02:00
< li >
< a
ng-click="changeLanguage('cs_CZ')"
href="#">< span class = "fa fa-fw flag-icon flag-icon-cz" > < / span > Czech< / a >
< / li >
2018-01-14 15:13:23 +01:00
< li >
< a
ng-click="changeLanguage('fa_IR')"
href="#">< span class = "fa fa-fw flag-icon flag-icon-ir" > < / span > Farsi< / a >
< / li >
2018-02-17 13:59:00 +01:00
< li >
< a
ng-click="changeLanguage('id_ID')"
href="#">< span class = "fa fa-fw flag-icon flag-icon-id" > < / span > Indonesian< / a >
< / li >
2018-04-09 20:49:37 +02:00
< li >
< a
ng-click="changeLanguage('pt_BR')"
href="#">< span class = "fa fa-fw flag-icon flag-icon-br" > < / span > Brazilian Portuguese< / a >
< / li >
2015-10-30 08:53:40 +01:00
< / ul >
< / li >
< / ul >
2015-03-13 09:39:35 +01:00
< / div >
2014-05-31 19:32:46 +02:00
<!-- }}} -->
2013-03-19 21:57:52 +01:00
< / div > <!-- /.nav - collapse -->
< / div >
< / div >
<!-- }}} -->
2013-03-20 08:45:28 +01:00
<!-- {{{ body -->
2014-06-01 18:27:19 +02:00
< div role = "main" class = "container-fluid" >
2013-03-19 21:57:52 +01:00
<!-- {{{ alerts -->
2014-06-02 21:36:21 +02:00
< div ng-controller = "AlertCtrl" class = "row-fluid alerts" >
2015-03-22 12:31:54 +01:00
< div class = "alert alert-{{alert.type == 'error' ? 'danger' : alert.type}}" ng-repeat = "alert in pendingAlerts" >
2013-03-19 21:57:52 +01:00
< button type = "button" class = "close" ng-click = "removeAlert($index)" > x< / button >
2014-06-09 04:21:02 +02:00
< span ng-bind-html = "alert.msg" > < / span >
2013-03-19 21:57:52 +01:00
< / div >
< / div >
<!-- }}} -->
2014-06-01 18:27:19 +02:00
< div class = "row-fluid" >
2015-03-13 09:39:35 +01:00
< div ng-class = "{'col-md-3': enable.sidebar.show}" ng-show = "enable.sidebar.show" >
2014-06-01 18:27:19 +02:00
<!-- {{{ nav side bar -->
2016-09-19 16:51:05 +02:00
< div class = "sidebar-nav" >
2014-06-02 12:58:58 +02:00
2014-06-09 04:35:04 +02:00
<!-- {{{ global statistics -->
< ul class = "nav nav-list" ng-if = "enable.sidebar.stats" >
2015-10-29 16:02:28 +01:00
< li class = "nav-header" ng-show = "totalAria2Downloads()" > {{ 'Global Statistics' | translate }}< / li >
2014-06-09 04:35:04 +02:00
< li >
< div
2016-12-30 15:55:40 +01:00
id="global-graph"
2014-06-09 04:35:04 +02:00
yticks="3"
2014-06-11 07:53:16 +02:00
xticks="1"
2014-06-09 04:35:04 +02:00
dspeed="gstats.downloadSpeed"
uspeed="gstats.uploadSpeed"
dgraph ng-show="totalAria2Downloads()"
nolabel="true"
draw="true">
< / div >
< / li >
2016-12-30 15:55:40 +01:00
< li >
< span title = "Upload Speed" > < span class = "fa fa-fw fa-arrow-circle-o-up" > < / span > {{gstats.uploadSpeed | bspeed}}< / span > < br / >
< span title = "Download Speed" > < span class = "fa fa-fw fa-arrow-circle-o-down" > < / span > {{gstats.downloadSpeed | bspeed}}< / span >
< / li >
2014-06-09 04:35:04 +02:00
< / ul >
<!-- }}} -->
2015-10-30 01:47:15 +01:00
< br / >
2014-06-09 04:35:04 +02:00
2014-06-02 12:58:58 +02:00
<!-- {{{ download filters -->
2014-06-03 02:28:55 +02:00
< ul id = "filters" class = "clearfix nav nav-list" ng-show = "enable.sidebar.filters" >
2015-10-28 17:31:35 +01:00
< li class = "nav-header" > {{ 'Download Filters' | translate }}< / li >
2015-03-13 09:39:35 +01:00
< li class = "checkbox" >
2014-06-01 18:27:19 +02:00
< label for = "filter-speed" >
< input type = "checkbox" ng-model = "filterSpeed" ng-change = "persistFilters()" id = "filter-speed" >
2015-10-28 17:31:35 +01:00
{{ 'Running' | translate }}
2014-06-01 18:27:19 +02:00
< / label >
< / li >
2015-03-13 09:39:35 +01:00
< li class = "active checkbox" >
2014-06-01 18:27:19 +02:00
< label for = "filter-active" >
< input type = "checkbox" ng-model = "filterActive" ng-change = "persistFilters()" id = "filter-active" >
2015-10-28 17:31:35 +01:00
{{ 'Active' | translate }}
2014-06-01 18:27:19 +02:00
< / label >
< / li >
2015-03-13 09:39:35 +01:00
< li class = "checkbox" >
2014-06-01 18:27:19 +02:00
< label for = "filter-waiting" >
< input type = "checkbox" ng-model = "filterWaiting" ng-change = "persistFilters()" id = "filter-waiting" >
2015-10-28 17:31:35 +01:00
{{ 'Waiting' | translate }}
2014-06-01 18:27:19 +02:00
< / label >
< / li >
2015-03-13 09:39:35 +01:00
< li class = "checkbox" >
2014-06-01 18:27:19 +02:00
< label for = "filter-complete" >
< input type = "checkbox" ng-model = "filterComplete" ng-change = "persistFilters()" id = "filter-complete" >
2015-10-28 17:31:35 +01:00
{{ 'Complete' | translate }}
2014-06-01 18:27:19 +02:00
< / label >
< / li >
2015-03-13 09:39:35 +01:00
< li class = "checkbox" >
2014-06-01 18:27:19 +02:00
< label for = "filter-error" >
< input type = "checkbox" ng-model = "filterError" ng-change = "persistFilters()" id = "filter-error" >
2015-10-28 17:31:35 +01:00
{{ 'Error' | translate }}
2014-06-01 18:27:19 +02:00
< / label >
< / li >
2015-03-13 09:39:35 +01:00
< li class = "checkbox" >
2014-06-01 18:27:19 +02:00
< label for = "filter-paused" >
< input type = "checkbox" ng-model = "filterPaused" ng-change = "persistFilters()" id = "filter-paused" >
2015-10-28 17:31:35 +01:00
{{ 'Paused' | translate }}
2014-06-01 18:27:19 +02:00
< / label >
< / li >
2015-03-13 09:39:35 +01:00
< li class = "checkbox" >
2014-06-01 18:27:19 +02:00
< label for = "filter-removed" >
< input type = "checkbox" ng-model = "filterRemoved" ng-change = "persistFilters()" id = "filter-removed" >
2015-10-28 17:31:35 +01:00
{{ 'Removed' | translate }}
2014-06-01 18:27:19 +02:00
< / label >
< / li >
2015-03-13 09:39:35 +01:00
< li class = "checkbox" >
< label >
< input type = "checkbox" ng-model = "hideLinkedMetadata" id = "hide-linked-metadata" >
2015-10-28 17:31:35 +01:00
{{ 'Hide linked meta-data' | translate }}
2015-03-13 09:39:35 +01:00
< / label >
< / li >
2014-06-01 18:27:19 +02:00
< li >
< p >
2016-09-23 22:58:53 +02:00
{{ 'Displaying' | translate }} < strong > {{totalDownloads}}< / strong > {{ 'of' | translate }} < em > {{totalAria2Downloads()}} < / em > {{ 'downloads' | translate }}
2014-06-01 18:27:19 +02:00
< / p >
< p >
2015-10-28 17:31:35 +01:00
< button ng-click = "toggleStateFilters()" class = "btn btn-default btn-xs" > {{ 'Toggle' | translate }}< / button >
< button ng-click = "resetFilters()" class = "btn btn-default btn-xs" > {{ 'Reset filters' | translate }}< / button >
2014-06-01 18:27:19 +02:00
< / p >
< / li >
< / ul >
2014-06-02 12:58:58 +02:00
<!-- }}} -->
2014-06-01 18:27:19 +02:00
2015-10-30 01:47:15 +01:00
< br / >
2013-03-19 21:57:52 +01:00
2014-06-03 06:29:54 +02:00
2014-06-02 12:58:58 +02:00
<!-- {{{ starred properties -->
2014-06-02 21:36:21 +02:00
< ul class = "clearfix nav nav-list" ng-controller = "StarredPropsCtrl" ng-show = "properties.length && enable.sidebar.starredProps" >
2015-10-28 17:31:35 +01:00
< li class = "nav-header" > {{ 'Quick Access Settings' | translate }}< / li >
2015-03-13 09:39:35 +01:00
< li ng-repeat = "prop in properties" class = "form-group" >
< label title = "{{prop.desc}}" style = "width: 100%;" > {{prop.name}}< / label >
< div class = "form-group" >
2017-02-05 22:47:25 +01:00
< select style = "width: 100%;" ng-show = "prop.options.length && !prop.multiline" class = "form-control" ng-options = "opt for opt in prop.options" ng-model = "prop.val" > < / select >
< input style = "width: 100%;" ng-show = "!prop.options.length && !prop.multiline" type = "text" class = "form-control input-large" ng-model = "prop.val" / >
< textarea style = "width: 100%;" ng-show = "prop.multiline" ng-model = "prop.val" > < / textarea >
2015-03-13 09:39:35 +01:00
< / div >
2014-06-01 18:27:19 +02:00
< / li >
< li >
2015-10-28 17:31:35 +01:00
< button ng-disabled = "!enabled()" ng-click = "save()" class = "btn btn-default btn-sm" > {{ 'Save settings' | translate }}< / button >
2014-06-01 18:27:19 +02:00
< / li >
< / ul >
2014-06-02 12:58:58 +02:00
<!-- }}} -->
2014-06-01 18:27:19 +02:00
< / div >
<!-- }}} -->
2014-02-18 01:10:45 +01:00
< / div >
2015-03-13 09:39:35 +01:00
< div ng-class = "{'col-md-9': enable.sidebar.show, 'col-md-12': !enable.sidebar.show }" >
2014-06-01 18:27:19 +02:00
<!-- {{{ downloads -->
<!-- Bug?? <div ng - show="!totalAria2Downloads() && totalAria2Downloads() > getDownloads()" class="hero - unit"> -->
2015-03-22 00:15:07 +01:00
< div ng-show = "!totalAria2Downloads()" class = "jumbotron" >
2015-10-30 01:47:15 +01:00
{{ 'Currently no download in line to display, use the' | translate }} < strong > {{ 'Add' | translate }}< / strong > {{ 'download button to start downloading files!' | translate }}
2014-06-01 18:27:19 +02:00
< / div >
2013-03-19 21:57:52 +01:00
2014-02-24 05:55:04 +01:00
2014-06-01 18:27:19 +02:00
<!-- {{{ download template -->
2015-03-13 09:39:35 +01:00
< div
2014-06-01 18:27:19 +02:00
ng-repeat="download in getDownloads()"
2016-09-19 16:51:05 +02:00
class="row-fluid download" data-gid="{{download.gid}}"
2015-03-13 09:39:35 +01:00
ng-click="toggleCollapsed(download)">
2016-12-30 15:55:40 +01:00
< div class = "download-name download-item download-controls clearfix" >
2015-03-13 09:39:35 +01:00
<!-- {{{ download control buttons -->
< div class = "btn-group" role = "group" ng-click = "$event.stopPropagation()" >
2016-03-30 08:51:01 +02:00
< button
ng-if="hasStatus(download, ['active', 'waiting'])"
class="btn btn-default"
ng-click="pause(download)">
< span class = "fa fa-fw fa-pause" > < / span >
2014-06-02 10:06:39 +02:00
< / button >
2016-03-30 08:51:01 +02:00
< button
ng-if="hasStatus(download, 'paused')"
class="btn btn-default"
ng-click="resume(download)">
< span class = "fa fa-fw fa-play" > < / span >
< / button >
< button
ng-if="canRestart(download)"
class="btn btn-default"
ng-click="restart(download)">
< span class = "fa fa-fw fa-repeat" > < / span >
< / button >
< button
class="btn btn-default hidden-phone"
ng-click="remove(download)">
< span class = "fa fa-fw fa-stop" > < / span >
< / button >
< button
ng-if="hasStatus(download, 'paused')"
class="btn btn-default"
ng-click="selectFiles(download)">
< span class = "fa fa-fw fa-list" > < / span >
< / button >
< button
class="btn btn-default hidden-phone"
ng-if="['waiting', 'active'].indexOf( getType(download) )!= -1"
ng-click="showSettings(download)">
< span class = "fa fa-fw fa-cog" > < / span >
< / button >
< button
ng-if="hasStatus(download, 'waiting')"
class="btn btn-default hidden-phone"
ng-click="moveDown(download)">
< span class = "fa fa-fw fa-arrow-circle-o-down" > < / span >
< / button >
< button
ng-if="hasStatus(download, 'waiting')"
class="btn btn-default hidden-phone"
ng-click="moveUp(download)">
< span class = "fa fa-fw fa-arrow-circle-o-up" > < / span >
< / button >
< div class = "btn-group" dropdown >
< button class = "btn btn-default dropdown-toggle" dropdown-toggle >
< span class = "caret" > < / span >
< / button >
< ul class = "dropdown-menu pull-right" >
< li class = "visible-phone" >
< a
ng-click="showSettings(download)"
ng-show="['waiting', 'active'].indexOf( getType(download) )!= -1"
href="#">< span class = "fa fa-fw fa-cog" > < / span > {{ 'Settings' | translate }}< / a >
< / li >
< li ng-show = "download.bittorrent && false" >
< a href = "#" > < span class = "fa fa-fw fa-list-alt" > < / span > {{ 'Peers' | translate }}< / a >
< / li >
< li >
< a ng-click = "toggleCollapsed(download)"
href="#">< span class = "fa fa-fw fa-info-circle" > < / span > {{ 'More Info' | translate }}< / a >
< / li >
< li class = "visible-phone" >
< a ng-click = "remove(download)"
href="#">< span class = "fa fa-fw fa-times" > < / span > {{ 'Remove' | translate }}< / a >
< / li >
< / ul >
< / div >
2015-03-13 09:39:35 +01:00
< / div >
<!-- }}} -->
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< div class = "title" >
2016-03-30 08:51:01 +02:00
< span class = "fa fa-fw fa-magnet" style = "color: red;" ng-show = "download.metadata" > < / span >
{{download.name}}
2015-03-13 09:39:35 +01:00
< / div >
2016-03-30 08:51:01 +02:00
< / div >
2016-09-19 16:51:05 +02:00
< div class = "download-overview download-item clearfix" ng-switch = "download.status" >
2015-03-13 09:39:35 +01:00
<!-- {{{ statistics -->
< ul class = "stats pull-left" ng-switch-when = "active" >
<!-- {{{ active download statistics -->
< li class = "label label-active hidden-phone hidden-tablet" >
2017-01-04 06:53:02 +01:00
< span title = "{{ 'Download status' | translate }}" > < span class = "fa fa-fw fa-play" > < / span > {{ 'Active' | translate }}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< li class = "label label-default" ng-class = "{'label-active': download.downloadSpeed > 2048, 'label-warning': download.downloadSpeed <= 2048}" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Download Speed' | translate }}" > < span class = "fa fa-fw fa-arrow-circle-o-down" > < / span > {{download.downloadSpeed | bspeed}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< li ng-show = "download.bittorrent" class = "label label-default hidden-phone" ng-class = "{'label-info': download.uploadSpeed > 2048}" >
2016-09-21 00:58:00 +02:00
< span title = "{{ 'Upload Speed' | translate }}" > < span class = "fa fa-fw fa-arrow-circle-o-up" > < / span > {{download.uploadSpeed | bspeed}}< / span >
< / li >
< li class = "label label-active" >
< span title = "{{ 'Estimated time' | translate }}" > < span class = "fa fa-fw fa-clock-o" > < / span > {{getEta(download) | time}}< / span >
< / li >
< li class = "label label-active hidden-phone" >
< span title = "{{ 'Download Size' | translate }}" > < span class = "fa fa-fw fa-cloud-download" > < / span > {{download.fmtTotalLength}}< / span >
< / li >
< li class = "label label-active hidden-phone" >
< span title = "{{ 'Downloaded' | translate }}" > < span class = "fa fa-fw fa-arrow-circle-o-down" > < / span > {{download.fmtCompletedLength}}< / span >
< / li >
2017-02-27 03:50:42 +01:00
< li class = "label label-active hidden-phone" >
< span title = "{{ 'Uploaded' | translate }}" > < span class = "fa fa-fw fa-upload" > < / span > {{download.fmtUploadLength}}< / span >
< / li >
2017-04-23 02:12:47 +02:00
< li class = "label label-active hidden-phone" >
< span title = "{{ 'Ratio' | translate }}" > {{ 'Ratio' | translate }} {{getRatio(download)}}< / span >
< / li >
2016-09-21 00:58:00 +02:00
< li class = "label label-active hidden-phone hidden-tablet" >
< span title = "{{ 'Progress' | translate }}" > < span class = "fa fa-fw fa-chevron-right" > < / span > {{getProgress(download)}}%< / span >
< / li >
<!-- }}} -->
< / ul >
2016-11-14 21:38:08 +01:00
2016-09-21 00:58:00 +02:00
< ul class = "stats pull-left" ng-switch-when = "verifing" >
<!-- {{{ active download statistics -->
< li class = "label label-warning hidden-phone hidden-tablet" >
2017-01-04 06:53:02 +01:00
< span title = "{{ 'Download status' | translate }}" > < span class = "fa fa-fw fa-play" > < / span > {{ 'Verifing' | translate }}< / span >
2016-09-21 00:58:00 +02:00
< / li >
< li class = "label label-default" ng-class = "{'label-active': download.downloadSpeed > 2048, 'label-warning': download.downloadSpeed <= 2048}" >
< span title = "{{ 'Download Speed' | translate }}" > < span class = "fa fa-fw fa-arrow-circle-o-down" > < / span > {{download.downloadSpeed | bspeed}}< / span >
< / li >
< li ng-show = "download.bittorrent" class = "label label-default hidden-phone" ng-class = "{'label-info': download.uploadSpeed > 2048}" >
< span title = "{{ 'Upload Speed' | translate }}" > < span class = "fa fa-fw fa-arrow-circle-o-up" > < / span > {{download.uploadSpeed | bspeed}}< / span >
< / li >
< li class = "label label-active" >
< span title = "{{ 'Estimated time' | translate }}" > < span class = "fa fa-fw fa-clock-o" > < / span > {{getEta(download) | time}}< / span >
< / li >
< li class = "label label-active hidden-phone" >
< span title = "{{ 'Download Size' | translate }}" > < span class = "fa fa-fw fa-cloud-download" > < / span > {{download.fmtTotalLength}}< / span >
< / li >
< li class = "label label-active hidden-phone" >
< span title = "{{ 'Downloaded' | translate }}" > < span class = "fa fa-fw fa-arrow-circle-o-down" > < / span > {{download.fmtCompletedLength}}< / span >
< / li >
< li class = "label label-active hidden-phone hidden-tablet" >
< span title = "{{ 'Progress' | translate }}" > < span class = "fa fa-fw fa-chevron-right" > < / span > {{getProgress(download)}}%< / span >
< / li >
<!-- }}} -->
< / ul >
< ul class = "stats pull-left" ng-switch-when = "verifyPending" >
<!-- {{{ active download statistics -->
< li class = "label label-warning hidden-phone hidden-tablet" >
2017-01-04 06:53:02 +01:00
< span title = "{{ 'Download status' | translate }}" > < span class = "fa fa-fw fa-play" > < / span > {{ 'Verify Pending' | translate}}< / span >
2016-09-21 00:58:00 +02:00
< / li >
< li class = "label label-default" ng-class = "{'label-active': download.downloadSpeed > 2048, 'label-warning': download.downloadSpeed <= 2048}" >
< span title = "{{ 'Download Speed' | translate }}" > < span class = "fa fa-fw fa-arrow-circle-o-down" > < / span > {{download.downloadSpeed | bspeed}}< / span >
< / li >
< li ng-show = "download.bittorrent" class = "label label-default hidden-phone" ng-class = "{'label-info': download.uploadSpeed > 2048}" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Upload Speed' | translate }}" > < span class = "fa fa-fw fa-arrow-circle-o-up" > < / span > {{download.uploadSpeed | bspeed}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< li class = "label label-active" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Estimated time' | translate }}" > < span class = "fa fa-fw fa-clock-o" > < / span > {{getEta(download) | time}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< li class = "label label-active hidden-phone" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Download Size' | translate }}" > < span class = "fa fa-fw fa-cloud-download" > < / span > {{download.fmtTotalLength}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< li class = "label label-active hidden-phone" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Downloaded' | translate }}" > < span class = "fa fa-fw fa-arrow-circle-o-down" > < / span > {{download.fmtCompletedLength}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< li class = "label label-active hidden-phone hidden-tablet" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Progress' | translate }}" > < span class = "fa fa-fw fa-chevron-right" > < / span > {{getProgress(download)}}%< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
<!-- }}} -->
< / ul >
2014-02-20 21:36:21 +01:00
2015-03-13 09:39:35 +01:00
< ul class = "stats pull-left" ng-switch-when = "paused" >
<!-- {{{ paused download statistics -->
< li class = "label label-info" >
2017-01-04 06:53:02 +01:00
< span title = "{{ 'Download status' | translate }}" > < span class = "fa fa-fw fa-pause" > < / span > {{ 'Paused' | translate }}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< li class = "label label-info" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Download Size' | translate }}" > < span class = "fa fa-fw fa-cloud-download" > < / span > {{download.fmtTotalLength}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< li class = "label label-info hidden-phone" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Downloaded' | translate }}" > < span class = "fa fa-fw fa-download" > < / span > {{download.fmtCompletedLength}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< li class = "label label-info hidden-phone" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Download Path' | translate }}" > < span class = "fa fa-fw fa-folder-open" > < / span > {{download.dir}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
<!-- }}} -->
< / ul >
2014-02-20 21:36:21 +01:00
2015-03-13 09:39:35 +01:00
< ul class = "stats pull-left" ng-switch-when = "waiting" >
<!-- {{{ paused download statistics -->
< li class = "label label-default" >
2017-01-04 06:53:02 +01:00
< span title = "{{ 'Download status' | translate }}" > < span class = "fa fa-fw fa-caret-right" > < / span > {{ 'Waiting' | translate }}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2014-02-20 21:36:21 +01:00
2015-03-13 09:39:35 +01:00
< li class = "label label-default" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Download Size' | translate }}" > < span class = "fa fa-fw fa-cloud-download" > < / span > {{download.fmtTotalLength}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2014-02-20 21:36:21 +01:00
2015-03-13 09:39:35 +01:00
< li class = "label label-default hidden-phone" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Downloaded' | translate }}" > < span class = "fa fa-fw fa-download" > < / span > {{download.fmtCompletedLength}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2014-02-20 21:36:21 +01:00
2015-03-13 09:39:35 +01:00
< li class = "label label-default hidden-phone" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Download Path' | translate }}" > < span class = "fa fa-fw fa-folder-open" > < / span > {{download.dir}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2014-02-20 21:36:21 +01:00
2015-03-13 09:39:35 +01:00
<!-- }}} -->
< / ul >
2014-02-20 21:36:21 +01:00
2015-03-13 09:39:35 +01:00
< ul class = "stats pull-left" ng-switch-when = "complete" >
<!-- {{{ complete download statistics -->
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< li class = "label label-success" >
2017-01-04 06:53:02 +01:00
< span title = "{{ 'Download status' | translate }}" > < span class = "fa fa-fw fa-check-square-o" > < / span > {{ 'Complete' | translate }}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< li class = "label label-success" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Download Size' | translate }}" > < span class = "fa fa-fw fa-cloud-download" > < / span > {{download.fmtTotalLength}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2017-02-27 03:50:42 +01:00
< li class = "label label-active hidden-phone" >
< span title = "{{ 'Uploaded' | translate }}" > < span class = "fa fa-fw fa-upload" > < / span > {{download.fmtUploadLength}}< / span >
< / li >
2017-04-23 02:12:47 +02:00
< li class = "label label-active hidden-phone" >
< span title = "{{ 'Ratio' | translate }}" > {{ 'Ratio' | translate }} {{getRatio(download)}}< / span >
< / li >
2015-03-13 09:39:35 +01:00
< li class = "label label-success hidden-phone" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Download Path' | translate }}" > < span class = "fa fa-fw fa-folder-open" > < / span > {{download.dir}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2014-02-28 12:57:47 +01:00
2015-03-13 09:39:35 +01:00
<!-- }}} -->
< / ul >
2014-02-20 21:36:21 +01:00
2015-03-13 09:39:35 +01:00
< ul class = "stats pull-left" ng-switch-when = "removed" >
<!-- {{{ removed download statistics -->
< li class = "label label-warning" >
2017-01-04 06:53:02 +01:00
< span title = "{{ 'Download status' | translate }}" > < span class = "fa fa-fw fa-times" > < / span > {{ 'Removed' | translate }}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< li class = "label label-warning" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Download Size' | translate }}" > < span class = "fa fa-fw fa-cloud-download" > < / span > {{download.fmtTotalLength}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< li class = "label label-warning hidden-phone" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Download Path' | translate }}" > < span class = "fa fa-fw fa-folder-open" > < / span > {{download.dir}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2014-02-28 12:57:47 +01:00
2015-03-13 09:39:35 +01:00
<!-- }}} -->
< / ul >
2014-02-20 21:36:21 +01:00
2015-03-13 09:39:35 +01:00
< ul class = "stats pull-left" ng-switch-when = "error" >
2015-04-19 09:35:13 +02:00
2015-03-13 09:39:35 +01:00
<!-- {{{ error download statistics -->
2015-04-19 09:35:13 +02:00
< li class = "label label-danger" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Error ' | translate }}" > < span class = "fa fa-fw fa-times-circle" > < / span > {{getErrorStatus(download.errorCode)}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
2015-04-19 09:35:13 +02:00
< li class = "label label-default" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Download Size' | translate }}" > < span class = "fa fa-fw fa-cloud-download" > < / span > {{download.fmtTotalLength}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2014-02-28 12:57:47 +01:00
2015-04-19 09:35:13 +02:00
< li class = "label label-default hidden-phone" >
2016-01-22 18:10:28 +01:00
< span title = "{{ 'Download Path' | translate }}" > < span class = "fa fa-fw fa-folder-open" > < / span > {{download.dir}}< / span >
2015-03-13 09:39:35 +01:00
< / li >
2013-03-19 21:57:52 +01:00
<!-- }}} -->
2015-03-13 09:39:35 +01:00
< / ul >
<!-- }}} -->
< / div >
< div class = "download-progress download-item" >
< div class = "progress" >
< div ng-class = "'progress-bar progress-bar-striped ' + getProgressClass(download)" style = "width: {{getProgress(download)}}%;" > < / div >
< / div >
< / div >
< div ng-switch = "download.collapsed" >
< div ng-switch-when = "false" collapse = "download.animCollapsed" >
< div class = "download-item" ng-show = "download.numPieces > 1" >
< canvas bitfield = "download.bitfield" draw = "!download.collapsed" pieces = "download.numPieces" class = "progress chunk-canvas" width = "1400" chunkbar > < / canvas >
2014-02-20 21:36:21 +01:00
< / div >
2015-03-13 09:39:35 +01:00
< ul class = "stats download-item" >
2016-05-01 19:27:30 +02:00
< li class = "label label-default" title = "{{ 'Estimated time' | translate }}" > < i class = "fa fa-fw fa-clock-o" > < / i > < span class = "download-eta" > {{getEta(download) | time}}< / span > < / li >
2016-01-22 18:10:28 +01:00
< li class = "label label-default" title = "{{ 'Download Size' | translate }}" > < i class = "fa fa-fw fa-cloud-download" > < / i > < span class = "download-totalLength" > {{download.fmtTotalLength}}< / span > < / li >
< li class = "label label-default" title = "{{ 'Downloaded' | translate }}" > < i class = "fa fa-fw fa-download" > < / i > < span class = "download-completedLength" > {{download.fmtCompletedLength}}< / span > < / li >
< li class = "label label-default" title = "{{ 'Download Speed' | translate }}" > < i class = "fa fa-fw fa-arrow-circle-o-down" > < / i > < span class = "download-downloadSpeed" > {{download.fmtDownloadSpeed}}< / span > < / li >
2014-06-01 18:27:19 +02:00
2016-01-22 18:10:28 +01:00
< li class = "label label-default" title = "{{ 'Upload Speed' | translate }}" ng-show = "download.bittorrent" > < i class = "fa fa-fw fa-arrow-circle-o-up" > < / i > < span class = "download-uploadSpeed" > {{download.fmtUploadSpeed}}< / span > < / li >
< li class = "label label-default" title = "{{ 'Uploaded' | translate }}" ng-show = "download.bittorrent" > < i class = "fa fa-fw fa-upload" > < / i > < span class = "download-uploadLength" > {{download.fmtUploadLength}}< / span > < / li >
2017-04-23 02:12:47 +02:00
< li class = "label label-default" title = "{{ 'Ratio' | translate }}" ng-show = "download.bittorrent" > < span title = "{{ 'Ratio' | translate }}" > {{ 'Ratio' | translate }} {{getRatio(download)}}< / span > < / li >
2014-06-01 18:27:19 +02:00
2015-06-15 08:46:46 +02:00
< li class = "label label-default" title = {{download.connectionsTitle}} > < i class = "fa fa-fw fa-link" > < / i > < span class = "download-connections" > {{download.connections}}{{download.numSeeders}}< / span > < / li >
2014-06-01 18:27:19 +02:00
2016-01-22 18:10:28 +01:00
< li class = "label label-default" title = "{{ 'Download GID' | translate }}" > < i class = "fa fa-fw fa-bars" > < / i > < span class = "download-gid" > {{download.gid}}< / span > < / li >
< li class = "label label-default" title = "{{ 'Number of Pieces' | translate }}" > {{ '# of' | translate }} < i class = "fa fa-fw fa-puzzle-piece" > < / i > < span class = "download-numPieces" > {{download.numPieces}}< / span > < / li >
< li class = "label label-default" title = "{{ 'Piece Length' | translate }}" > < i class = "fa fa-fw fa-puzzle-piece" > < / i > {{ 'Length' | translate }} < span class = "download-pieceLength" > {{download.fmtPieceLength}}< / span > < / li >
< li class = "label label-default" title = "{{ 'Download Path' | translate }}" > < i class = "fa fa-fw fa-folder-open" > < / i > < span class = "download-dir" > {{download.dir}}< / span > < / li >
2015-03-13 09:39:35 +01:00
< / ul >
< ul class = "download-files hidden-phone download-item" >
2015-04-28 19:31:04 +02:00
< li class = "label label-default" ng-repeat = "file in download.files" ng-class = "{'label-success': file.selected}" >
< a ng-if = "hasDirectURL()" ng-click = "$event.stopPropagation()" ng-href = "{{getDirectURL()}}{{file.relpath | encodeURI}}" target = "download" > {{file.relpath}} ({{file.fmtLength}})< / a >
< span ng-if = "!hasDirectURL()" > {{file.relpath}} ({{file.fmtLength}})< / span >
< / li >
2015-03-13 09:39:35 +01:00
< / ul >
< div ng-show = "hasStatus(download, 'active')" class = "download-item hidden-phone" >
< div class = "download-graph" dspeed = "download.downloadSpeed" uspeed = "download.uploadSpeed" xticks = "7" yticks = "7" dgraph draw = "!download.collapsed" > < / div >
2013-03-19 21:57:52 +01:00
< / div >
2015-03-13 09:39:35 +01:00
< / div >
< / div >
< / div >
2014-06-01 18:27:19 +02:00
<!-- }}} -->
2013-03-19 21:57:52 +01:00
2014-06-01 18:27:19 +02:00
<!-- }}} -->
< / div >
2013-03-19 21:57:52 +01:00
<!-- {{{ download pagination -->
2015-03-13 09:39:35 +01:00
< div class = "col-md-offset-3 col-md-9" ng-show = "totalDownloads > pageSize" >
< div class = "pagination pull-right" >
< pagination
total-items="totalDownloads"
items-per-page="pageSize"
max-size="11"
ng-model="currentPage"
boundary-links="true"
previous-text="‹ "
next-text="› "
first-text="« "
last-text="» "
>
< / pagination >
< / div >
2013-03-19 21:57:52 +01:00
< / div >
<!-- }}} -->
2014-06-01 18:27:19 +02:00
< / div >
2013-03-19 21:57:52 +01:00
< / div >
2013-03-20 08:45:28 +01:00
<!-- }}} -->
2013-03-19 21:57:52 +01:00
<!-- {{{ modals -->
< div ng-controller = "ModalCtrl" >
<!-- {{{ add uri modal -->
2014-02-21 02:13:31 +01:00
< script type = "text/ng-template" id = "getUris.html" >
2013-03-19 21:57:52 +01:00
< div class = "modal-header" >
2015-03-13 09:39:35 +01:00
< button class = "close" ng-click = "$dismiss()" > × < / button >
2015-10-28 17:31:35 +01:00
< h4 > {{ 'Add Downloads By URIs' | translate }}< / h4 >
2013-03-19 21:57:52 +01:00
< / div >
< form class = "modal-body" >
< fieldset >
< p class = "help-block" >
2015-10-30 01:47:15 +01:00
{{ '- You can add multiple downloads (files) at the same time by putting URIs for each file on a separate line.' | translate }}< br / >
{{ '- You can also add multiple URIs (mirrors) for the *same* file. To do this, separate the URIs by a space.' | translate }}< br / >
{{ '- A URI can be HTTP(S)/FTP/BitTorrent-Magnet.' | translate }}< / br >
2013-03-19 21:57:52 +01:00
< / p >
2017-01-08 20:21:55 +01:00
< textarea rows = "4" style = "width: 100%" ng-model = "getUris.uris" autofocus placeholder = "http://mirror1.com/f1.jpg http://mirror2.com/f1.jpg\nhttp://mirror1.com/f2.mp4 http://mirror2.com/f2.mp4 --out=file2.mp4" > < / textarea >
2015-03-13 09:39:35 +01:00
< br / > < br / >
2014-06-10 01:59:23 +02:00
< div >
2017-01-08 20:21:55 +01:00
< div ng-click = "getUris.downloadSettingsCollapsed = !getUris.downloadSettingsCollapsed" class = "modal-advanced-title" >
2015-10-28 17:31:35 +01:00
{{ 'Download settings' | translate }}
2017-01-08 20:21:55 +01:00
< i ng-hide = "!getUris.downloadSettingsCollapsed" class = "fa fa-fw fa-caret-right" > < / i >
< i ng-hide = "getUris.downloadSettingsCollapsed" class = "fa fa-fw fa-caret-down" > < / i >
2014-06-10 01:59:23 +02:00
< / div >
2017-01-08 20:21:55 +01:00
< div collapse = "getUris.downloadSettingsCollapsed" class = "form-horizontal modal-advanced-options" >
2015-03-13 09:39:35 +01:00
< div class = "form-group" ng-repeat = "(name, set) in getUris.settings" >
< label class = "col-sm-3 control-label" > {{name}}< / label >
2014-06-10 01:59:23 +02:00
2015-03-13 09:39:35 +01:00
< div class = "col-sm-9 controls" >
2017-02-05 22:47:25 +01:00
< select class = "form-control" ng-show = "set.options.length && !set.multiline" ng-options = "opt for opt in set.options" ng-model = "set.val" >
2014-06-10 01:59:23 +02:00
< / select >
2017-02-05 22:47:25 +01:00
< input ng-show = "!set.options.length && !set.multiline" type = "text" class = "form-control input-xxlarge modal-form-input-verylarge" ng-model = "set.val" / >
< textarea ng-show = "set.multiline" ng-model = "set.val" > < / textarea >
2014-06-10 01:59:23 +02:00
< / div >
2015-10-30 01:47:15 +01:00
< br / >
2014-06-10 01:59:23 +02:00
< / div >
< / div >
2014-05-31 19:32:46 +02:00
2014-06-10 01:59:23 +02:00
< br / >
2017-01-08 20:21:55 +01:00
< div ng-click = "getUris.advancedSettingsCollapsed = !getUris.advancedSettingsCollapsed" class = "modal-advanced-title" >
2015-10-28 17:31:35 +01:00
{{ 'Advanced settings' | translate }}
2017-01-08 20:21:55 +01:00
< i ng-hide = "!getUris.advancedSettingsCollapsed" class = "fa fa-fw fa-caret-right" > < / i >
< i ng-hide = "getUris.advancedSettingsCollapsed" class = "fa fa-fw fa-caret-down" > < / i >
2014-06-10 01:59:23 +02:00
< / div >
2017-01-08 20:21:55 +01:00
< div collapse = "getUris.advancedSettingsCollapsed" class = "form-horizontal modal-advanced-options" >
2015-03-13 09:39:35 +01:00
< div class = "form-group" ng-repeat = "(name, set) in getUris.fsettings" >
< p class = "col-sm-offset-3 col-sm-9 help-block controls" > {{set.desc}}< / p >
< label class = "col-sm-3 control-label" > {{name}}< / label >
< div class = "col-sm-9 controls" >
2017-02-05 22:47:25 +01:00
< select class = "form-control" ng-show = "set.options.length && !set.multiline" ng-options = "opt for opt in set.options" ng-model = "set.val" >
2014-06-10 01:59:23 +02:00
< / select >
2017-02-05 22:47:25 +01:00
< input ng-show = "!set.options.length && !set.multiline" type = "text" class = "form-control input-xxlarge modal-form-input-verylarge" ng-model = "set.val" / >
< textarea ng-show = "set.multiline" ng-model = "set.val" > < / textarea >
2014-06-10 01:59:23 +02:00
< / div >
< br / >
< / div >
2014-05-31 19:32:46 +02:00
< / div >
< / div >
2013-03-19 21:57:52 +01:00
< / fieldset >
2017-01-08 20:21:55 +01:00
< div class = "modal-footer" >
< button type = "button" class = "btn btn-default" ng-click = "$dismiss()" > {{ 'Cancel' | translate }}< / button >
< button class = "btn btn-default btn-primary" ng-click = "$close()" > {{ 'Start' | translate }}< / button >
< / div >
2013-03-19 21:57:52 +01:00
< / form >
2014-02-21 02:13:31 +01:00
< / script >
2013-03-19 21:57:52 +01:00
<!-- }}} -->
<!-- {{{ add torrent modal -->
2014-02-21 02:13:31 +01:00
< script type = "text/ng-template" id = "getTorrents.html" >
2013-03-19 21:57:52 +01:00
< div class = "modal-header" >
2014-02-21 02:13:31 +01:00
< button class = "close" ng-click = "$dismiss()" > x< / button >
2015-10-28 17:31:35 +01:00
< h4 > {{ 'Add Downloads By Torrents' | translate }}< / h4 >
2013-03-19 21:57:52 +01:00
< / div >
< form class = "modal-body" >
< fieldset >
2015-10-28 17:31:35 +01:00
< legend > {{ 'Select Torrents' | translate }}< / legend >
2013-03-19 21:57:52 +01:00
< p class = "help-block" >
2015-10-30 01:47:15 +01:00
{{ '- Select the torrent from the local filesystem to start the download.' | translate }}< br / >
{{ '- You can select multiple torrents to start multiple downloads.' | translate }}< br / >
2016-05-01 18:12:31 +02:00
{{ '- To add a BitTorrent-Magnet URL, use the Add By URI option and add it there.' | translate }}
2013-03-19 21:57:52 +01:00
< / p >
2015-03-13 09:39:35 +01:00
< div class = "form-horizontal form-group" >
2015-10-30 01:47:15 +01:00
< label class = "control-label" style = "text-align: left;" > < b > {{ 'Select a Torrent' | translate }}:< / b > < / label >
2014-06-10 01:59:23 +02:00
< div class = "controls" >
2017-05-18 06:04:50 +02:00
< input type = "file" fselect = "getTorrents.files" multiple / >
2014-06-10 01:59:23 +02:00
< / div >
< / div >
< br / >
2014-05-31 19:32:46 +02:00
2014-06-10 01:59:23 +02:00
< div >
< div class = "modal-advanced-title" >
2015-10-28 17:31:35 +01:00
{{ 'Download settings' | translate }}
2014-06-10 01:59:23 +02:00
< / div >
2015-03-13 09:39:35 +01:00
< div class = "form-horizontal modal-advanced-options" >
< div class = "form-group" ng-repeat = "(name, set) in getTorrents.settings" >
< label class = "col-sm-3 control-label" > {{name}}< / label >
2014-06-10 01:59:23 +02:00
2015-03-13 09:39:35 +01:00
< div class = "col-sm-9 controls" >
2017-02-05 22:47:25 +01:00
< select class = "form-control" ng-show = "set.options.length && !set.multiline" ng-options = "opt for opt in set.options" ng-model = "set.val" >
2014-06-10 01:59:23 +02:00
< / select >
2017-02-05 22:47:25 +01:00
< input ng-show = "!set.options.length && !set.multiline" type = "text" class = "form-control input-xxlarge modal-form-input-verylarge" ng-model = "set.val" / >
< textarea ng-show = "set.multiline" ng-model = "set.val" > < / textarea >
2014-06-10 01:59:23 +02:00
< / div >
2015-10-30 01:47:15 +01:00
< br / >
2014-06-10 01:59:23 +02:00
< / div >
< / div >
< br / >
< div ng-click = "getTorrents.collapsed = !getTorrents.collapsed" class = "modal-advanced-title" >
2015-10-28 17:31:35 +01:00
{{ 'Advanced settings' | translate }}
2014-06-10 01:59:23 +02:00
< i ng-hide = "!getTorrents.collapsed" class = "fa fa-fw fa-caret-right" > < / i >
< i ng-hide = "getTorrents.collapsed" class = "fa fa-fw fa-caret-down" > < / i >
< / div >
2015-03-13 09:39:35 +01:00
< div collapse = "getTorrents.collapsed" class = "form-horizontal modal-advanced-options" >
< div class = "form-group" ng-repeat = "(name, set) in getTorrents.fsettings" >
< p class = "col-sm-offset-3 col-sm-9 help-block controls" > {{set.desc}}< / p >
< label class = "col-sm-3 control-label" > {{name}}< / label >
< div class = "col-sm-9 controls" >
2017-02-05 22:47:25 +01:00
< select class = "form-control" ng-show = "set.options.length && !set.multiline" ng-options = "opt for opt in set.options" ng-model = "set.val" >
2014-06-10 01:59:23 +02:00
< / select >
2017-02-05 22:47:25 +01:00
< input ng-show = "!set.options.length && !set.multiline" type = "text" class = "form-control input-xxlarge modal-form-input-verylarge" ng-model = "set.val" / >
< textarea ng-show = "set.multiline" ng-model = "set.val" > < / textarea >
2014-06-10 01:59:23 +02:00
< / div >
< br / >
2014-05-31 19:32:46 +02:00
< / div >
< / div >
< / div >
2013-03-19 21:57:52 +01:00
< / fieldset >
< / form >
< div class = "modal-footer" >
2015-10-28 17:31:35 +01:00
< button class = "btn btn-default" ng-click = "$dismiss()" > {{ 'Cancel' | translate }}< / button >
< button class = "btn btn-default btn-primary" ng-click = "$close()" > {{ 'Start' | translate }}< / button >
2013-03-19 21:57:52 +01:00
< / div >
2014-02-21 02:13:31 +01:00
< / script >
2013-03-19 21:57:52 +01:00
<!-- }}} -->
<!-- {{{ add metalink modal -->
2014-02-21 02:13:31 +01:00
< script type = "text/ng-template" id = "getMetalinks.html" >
2013-03-19 21:57:52 +01:00
< div class = "modal-header" >
2014-02-21 02:13:31 +01:00
< button class = "close" ng-click = "$dismiss()" > x< / button >
2015-10-28 17:31:35 +01:00
< h4 > {{ 'Add Downloads By Metalinks' | translate }}< / h4 >
2013-03-19 21:57:52 +01:00
< / div >
< form class = "modal-body" >
< fieldset >
2015-10-28 17:31:35 +01:00
< legend > {{ 'Select Metalinks' | translate }}< / legend >
2013-03-19 21:57:52 +01:00
< p class = "help-block" >
2015-10-30 01:47:15 +01:00
{{ '- Select the Metalink from the local filesystem to start the download.' | translate }}< br / >
{{ '- You can select multiple Metalinks to start multiple downloads.' | translate }}
2013-03-19 21:57:52 +01:00
< / p >
2015-03-13 09:39:35 +01:00
< div class = "form-horizontal form-group" >
2015-10-30 01:47:15 +01:00
< label class = "control-label" style = "text-align: left;" > < b > {{ 'Select a Metalink' | translate }}:< / b > < / label >
2014-06-10 01:59:23 +02:00
< div class = "controls" >
2017-05-18 06:04:50 +02:00
< input type = "file" fselect = "getMetalinks.files" multiple / >
2014-06-10 01:59:23 +02:00
< / div >
< / div >
< br / >
2014-05-31 19:32:46 +02:00
2014-06-10 01:59:23 +02:00
< div >
< div class = "modal-advanced-title" >
2015-10-28 17:31:35 +01:00
{{ 'Download settings' | translate }}
2014-06-10 01:59:23 +02:00
< / div >
2015-03-13 09:39:35 +01:00
< div class = "form-horizontal modal-advanced-options" >
< div class = "form-group" ng-repeat = "(name, set) in getMetalinks.settings" >
< label class = "col-sm-3 control-label" > {{name}}< / label >
2014-06-10 01:59:23 +02:00
2015-03-13 09:39:35 +01:00
< div class = "col-sm-9 controls" >
2017-02-05 22:47:25 +01:00
< select class = "form-control" ng-show = "set.options.length && !set.multiline" ng-options = "opt for opt in set.options" ng-model = "set.val" >
2014-06-10 01:59:23 +02:00
< / select >
2017-02-05 22:47:25 +01:00
< input ng-show = "!set.options.length && !set.multiline" type = "text" class = "form-control input-xxlarge modal-form-input-verylarge" ng-model = "set.val" / >
< textarea ng-show = "set.multiline" ng-model = "set.val" > < / textarea >
2014-06-10 01:59:23 +02:00
< / div >
2015-10-30 01:47:15 +01:00
< br / >
2014-06-10 01:59:23 +02:00
< / div >
< / div >
< br / >
< div ng-click = "getMetalinks.collapsed = !getMetalinks.collapsed" class = "modal-advanced-title" >
2015-10-28 17:31:35 +01:00
{{ 'Advanced settings' | translate }}
2014-06-10 01:59:23 +02:00
< i ng-hide = "!getMetalinks.collapsed" class = "fa fa-fw fa-caret-right" > < / i >
< i ng-hide = "getMetalinks.collapsed" class = "fa fa-fw fa-caret-down" > < / i >
< / div >
2015-03-13 09:39:35 +01:00
< div collapse = "getMetalinks.collapsed" class = "form-horizontal modal-advanced-options" >
< div class = "form-group" ng-repeat = "(name, set) in getMetalinks.fsettings" >
< p class = "col-sm-offset-3 col-sm-9 help-block controls" > {{set.desc}}< / p >
< label class = "col-sm-3 control-label" > {{name}}< / label >
< div class = "col-sm-9 controls" >
2017-02-05 22:47:25 +01:00
< select class = "form-control" ng-show = "set.options.length && !set.multiline" ng-options = "opt for opt in set.options" ng-model = "set.val" >
2014-06-10 01:59:23 +02:00
< / select >
2017-02-05 22:47:25 +01:00
< input ng-show = "!set.options.length && !set.multiline" type = "text" class = "form-control input-xxlarge modal-form-input-verylarge" ng-model = "set.val" / >
< textarea ng-show = "set.multiline" ng-model = "set.val" > < / textarea >
2014-06-10 01:59:23 +02:00
< / div >
< br / >
2014-05-31 19:32:46 +02:00
< / div >
< / div >
< / div >
2013-03-19 21:57:52 +01:00
< / fieldset >
< / form >
< div class = "modal-footer" >
2015-10-28 17:31:35 +01:00
< button class = "btn btn-default" ng-click = "$dismiss()" > {{ 'Cancel' | translate }}< / button >
< button class = "btn btn-default btn-primary" ng-click = "$close()" > {{ 'Start' | translate }}< / button >
2013-03-19 21:57:52 +01:00
< / div >
2014-02-21 02:13:31 +01:00
< / script >
2017-07-25 23:03:52 +02:00
<!-- }}} -->
2017-07-27 22:31:33 +02:00
<!-- {{{ select files checkbox modal -->
2017-07-25 23:03:52 +02:00
< script type = "text/ng-template" id = "selectFilesCheckBox.html" >
2017-07-27 12:31:18 +02:00
< div ng-repeat = "(folderName,folder) in files.dirs" >
<!-- recursive folder -->
< div class = "controls" >
<!-- click to toggle show the subfolders and files -->
< div class = "checkbox" data-ng-click = "folder.show=!folder.show" >
<!-- The value of indeterminate="" can be bound to any angular expression -->
2017-07-29 14:42:06 +02:00
< input type = "checkbox" data-ng-model = "folder.selected" data-ng-click = "$event.stopPropagation()" indeterminate / > {{folderName}}
2017-07-27 12:31:18 +02:00
< span ng-show = "!folder.show" class = "control-label" > {{ 'click the text to expand the folder' | translate }}< / span >
< span ng-show = "folder.show" class = "control-label" > {{ 'click the text to collapse the folder' | translate }}< / span >
< / div >
2017-07-29 21:59:14 +02:00
< div ng-show = "folder.show" class = "form-group selectFiles recursivedir" ng-include = "'selectFilesCheckBox.html'" ng-init = "files=folder" >
2017-07-25 23:03:52 +02:00
< / div >
< / div >
2017-07-27 12:31:18 +02:00
< / div >
2017-07-25 23:03:52 +02:00
2017-07-27 12:31:18 +02:00
< div ng-repeat = "file in files.files" >
<!-- files -->
< label class = "control-label" > {{ 'Select to download' | translate }}< / label >
2017-07-25 23:03:52 +02:00
2017-07-27 12:31:18 +02:00
< div class = "controls" >
< label class = "checkbox" >
2017-07-29 14:42:06 +02:00
< input type = "checkbox" data-ng-model = "file.selected" indeterminate = "false" / > {{file.relpath}}
2017-07-27 12:31:18 +02:00
< / label >
2017-07-25 23:03:52 +02:00
< / div >
2017-07-27 12:31:18 +02:00
< br / >
< br / >
2017-07-25 23:03:52 +02:00
< / div >
< / script >
2013-03-19 21:57:52 +01:00
<!-- }}} -->
2014-09-01 21:15:33 +02:00
<!-- {{{ select file modal -->
< script type = "text/ng-template" id = "selectFiles.html" >
< div class = "modal-header" >
< button class = "close" ng-click = "$dismiss()" > x< / button >
2015-10-28 17:31:35 +01:00
< h4 > {{ 'Choose files to start download for' | translate }}< / h4 >
2014-09-01 21:15:33 +02:00
< / div >
< form class = "form-horizontal modal-body" >
< fieldset >
2017-07-25 23:03:52 +02:00
< div class = "form-group selectFiles" ng-include = "'selectFilesCheckBox.html'" ng-init = "files=selectFiles.groupedFiles" >
2014-09-01 21:15:33 +02:00
< / div >
< / fieldset >
< / form >
< div class = "modal-footer" >
2015-10-30 01:47:15 +01:00
< button class = "btn btn-default" ng-click = "$dismiss()" > {{ 'Cancel' | translate }}< / button >
< button class = "btn btn-default btn-primary" ng-click = "$close()" > {{ 'Choose' | translate }}< / button >
2014-09-01 21:15:33 +02:00
< / div >
< / script >
<!-- }}} -->
2013-03-19 21:57:52 +01:00
<!-- {{{ settings modal -->
2014-02-21 02:13:31 +01:00
< script type = "text/ng-template" id = "settings.html" >
2013-03-19 21:57:52 +01:00
< div class = "modal-header" >
2014-02-21 02:13:31 +01:00
< button class = "close" ng-click = "$dismiss()" > x< / button >
2015-03-13 09:39:35 +01:00
< h4 > {{settings.title}}< / h4 >
2013-03-19 21:57:52 +01:00
< / div >
2015-03-13 09:39:35 +01:00
< div class = "modal-body" >
2017-06-24 20:54:27 +02:00
< div class = "row" >
< div class = "col-md-12 form-group filter-input-group" >
< input type = "text" class = "form-control input-xlarge" ng-model = "propFilter" placeholder = "{{ 'Filter' | translate }}" / >
< span class = "clear-button" ng-show = "propFilter" ng-click = "propFilter = ''" > X< / span >
< / div >
< / div >
< form class = "form-horizontal" >
2015-03-13 09:39:35 +01:00
< fieldset >
2017-06-24 20:54:27 +02:00
< div class = "form-group" ng-repeat = "(name, set) in settings.settings | objFilter:propFilter" >
2015-03-13 09:39:35 +01:00
< label class = "col-sm-3 control-label" > {{name}}< / label >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< div class = "col-sm-9 controls" >
2017-02-05 22:47:25 +01:00
< select class = "form-control" ng-show = "set.options.length && !set.multiline" ng-options = "opt for opt in set.options" ng-model = "set.val" >
2013-03-19 21:57:52 +01:00
< / select >
2017-02-05 22:47:25 +01:00
< input ng-show = "!set.options.length && !set.multiline" type = "text" class = "form-control input-xlarge" ng-model = "set.val" / >
< textarea ng-show = "set.multiline" ng-model = "set.val" > < / textarea >
2015-03-13 09:39:35 +01:00
< div class = "checkbox" ng-show = "set.starred != undefined" >
< label >
< input type = "checkbox" ng-model = "set.starred" / >
2015-10-30 01:47:15 +01:00
{{ 'Quick Access (shown on the main page)' | translate }}
2015-03-13 09:39:35 +01:00
< / label >
< / div >
2013-03-19 21:57:52 +01:00
< p class = "help-block" > {{set.desc}}< / p >
< / div >
< / div >
2015-03-13 09:39:35 +01:00
< / fieldset >
< / form >
< / div >
2013-03-19 21:57:52 +01:00
< div class = "modal-footer" >
2015-10-28 17:31:35 +01:00
< button class = "btn btn-default" ng-click = "$dismiss()" > {{ 'Cancel' | translate }}< / button >
2015-03-13 09:39:35 +01:00
< button class = "btn btn-default btn-primary" ng-click = "$close()" > {{settings.actionText}}< / button >
2013-03-19 21:57:52 +01:00
< / div >
2014-02-21 02:13:31 +01:00
< / script >
2013-03-19 21:57:52 +01:00
<!-- }}} -->
<!-- {{{ connection modal -->
2014-02-21 02:13:31 +01:00
< script type = "text/ng-template" id = "connection.html" >
2013-03-19 21:57:52 +01:00
< div class = "modal-header" >
2014-02-21 02:13:31 +01:00
< button class = "close" ng-click = "$dismiss()" > x< / button >
2015-10-28 17:31:35 +01:00
< h4 > {{ 'Connection Settings' | translate }}< / h4 >
2013-03-19 21:57:52 +01:00
< / div >
< div class = "modal-body" >
< form class = "form-horizontal" >
< fieldset >
2015-10-28 17:31:35 +01:00
< legend > {{ 'Aria2 RPC host and port' | translate }}< / legend >
2015-03-13 09:39:35 +01:00
< div class = "form-group" >
2015-10-30 01:47:15 +01:00
< label class = "col-sm-3 control-label" > {{ 'Enter the host' | translate }}:< / label >
2015-03-13 09:39:35 +01:00
< div class = "col-sm-9 controls" >
< div class = "input-group" >
< span class = "input-group-addon" > http(s)://< / span >
< input type = "text" class = "form-control input-xlarge"
2013-03-19 21:57:52 +01:00
ng-model="connection.conf.host"/>
< / div >
< p class = "help-block" >
2015-10-30 01:47:15 +01:00
{{ 'Enter the IP or DNS name of the server on which the RPC for Aria2 is running (default: localhost)' | translate }}
2013-03-19 21:57:52 +01:00
< / p >
< / div >
2015-03-13 09:39:35 +01:00
< / div >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< div class = "form-group" >
2015-10-30 01:47:15 +01:00
< label class = "col-sm-3 control-label" > {{ 'Enter the port' | translate }}:< / label >
2015-03-13 09:39:35 +01:00
< div class = "col-sm-9 controls" >
< input type = "text" class = "form-control input-xlarge modal-form-input-number"
2013-03-19 21:57:52 +01:00
ng-model="connection.conf.port"/>
< p class = "help-block" >
2015-10-30 01:47:15 +01:00
{{ 'Enter the port of the server on which the RPC for Aria2 is running (default: 6800)' | translate }}
2013-03-19 21:57:52 +01:00
< / p >
< / div >
2015-03-13 09:39:35 +01:00
< / div >
2013-03-19 21:57:52 +01:00
2015-09-12 10:55:02 +02:00
< div class = "form-group" >
2015-10-30 01:47:15 +01:00
< label class = "col-sm-3 control-label" > {{ 'Enter the RPC path' | translate }}:< / label >
2015-09-12 10:55:02 +02:00
< div class = "col-sm-9 controls" >
< div class = "input-group" >
< span class = "input-group-addon" > http(s)://{{connection.conf.host + ':' + connection.conf.port}}< / span >
< input type = "text" class = "form-control input-xlarge"
ng-model="connection.conf.path"/>
< / div >
< p class = "help-block" >
2015-10-30 01:47:15 +01:00
{{ 'Enter the path for the Aria2 RPC endpoint (default: /jsonrpc)' | translate }}
2015-09-12 10:55:02 +02:00
< / p >
< / div >
< / div >
2015-03-13 09:39:35 +01:00
< div class = "form-group" >
2015-10-30 01:47:15 +01:00
< label class = "col-sm-3 control-label" > {{ 'SSL/TLS encryption' | translate }}:< / label >
2015-03-13 09:39:35 +01:00
< div class = "col-sm-9 controls" >
< div class = "checkbox" >
< label >
< input type = "checkbox" ng-model = "connection.conf.encrypt" / >
2015-10-30 01:47:15 +01:00
{{ 'Enable SSL/TLS encryption' | translate }}
2015-03-13 09:39:35 +01:00
< / label >
< / div >
2013-03-19 21:57:52 +01:00
< / div >
2015-03-13 09:39:35 +01:00
< / div >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< div class = "form-group" >
2015-10-30 01:47:15 +01:00
< label class = "col-sm-3 control-label" > {{ 'Enter the secret token (optional)' | translate }}:< / label >
2015-03-13 09:39:35 +01:00
< div class = "col-sm-9 controls" >
2014-05-17 17:41:00 +02:00
< label >
2017-01-01 01:40:31 +01:00
< input type = "password" class = "form-control input-xlarge" ng-model = "connection.conf.auth.token" / >
2014-05-17 17:41:00 +02:00
< p class = "help-block" >
2015-10-30 01:47:15 +01:00
{{ 'Enter the Aria2 RPC secret token (leave empty if authentication is not enabled)' | translate }}
2014-05-17 17:41:00 +02:00
< / p >
< / label >
2013-03-19 21:57:52 +01:00
< / div >
2015-03-13 09:39:35 +01:00
< / div >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< div class = "form-group" >
2015-10-30 01:47:15 +01:00
< label class = "col-sm-3 control-label" > {{ 'Enter the username (optional)' | translate }}:< / label >
2015-03-13 09:39:35 +01:00
< div class = "col-sm-9 controls" >
< input type = "text" class = "form-control input-xlarge"
2013-03-19 21:57:52 +01:00
ng-model="connection.conf.auth.user"/>
< p class = "help-block" >
2015-10-30 01:47:15 +01:00
{{ 'Enter the Aria2 RPC username (empty if authentication not enabled)' | translate }}
2013-03-19 21:57:52 +01:00
< / p >
< / div >
2015-03-13 09:39:35 +01:00
< / div >
2013-03-19 21:57:52 +01:00
2015-03-13 09:39:35 +01:00
< div class = "form-group" >
2015-10-30 01:47:15 +01:00
< label class = "col-sm-3 control-label" > {{ 'Enter the password (optional)' | translate }}:< / label >
2015-03-13 09:39:35 +01:00
< div class = "col-sm-9 controls" >
< input type = "password" class = "form-control input-xlarge"
2013-03-19 21:57:52 +01:00
ng-model="connection.conf.auth.pass"/>
< p class = "help-block" >
2015-10-30 01:47:15 +01:00
{{ 'Enter the Aria2 RPC password (empty if authentication not enabled)' | translate }}
2013-03-19 21:57:52 +01:00
< / p >
< / div >
< / div >
< / fieldset >
2015-04-28 19:31:04 +02:00
< fieldset >
2015-10-28 17:31:35 +01:00
< legend > {{ 'Direct Download' | translate }}< / legend >
2015-04-28 19:31:04 +02:00
< div class = "form-group" >
2015-10-30 01:47:15 +01:00
< label class = "col-sm-3 control-label" > {{ 'Enter base URL (optional)' | translate }}:< / label >
2015-04-28 19:31:04 +02:00
< div class = "col-sm-9 controls" >
< input type = "text" class = "form-control input-xlarge"
ng-model="connection.conf.directURL"/>
< p class = "help-block" >
2015-10-30 01:47:15 +01:00
{{ 'If supplied, links will be created to enable direct download from the Aria2 server.' | translate }}< br / >
2016-05-01 19:21:58 +02:00
{{ '(Requires appropriate webserver to be configured.)' | translate }}
2015-04-28 19:31:04 +02:00
< / p >
< / div >
< / div >
< / fieldset >
2013-03-19 21:57:52 +01:00
< / form >
< / div >
< div class = "modal-footer" >
2015-10-28 17:31:35 +01:00
< button href = "#" class = "btn btn-default" ng-click = "$dismiss()" > {{ 'Cancel' | translate }}< / button >
2015-03-13 09:39:35 +01:00
< button href = "#" class = "btn btn-default btn-primary" ng-click = "$close()" >
2015-10-28 17:31:35 +01:00
{{ 'Save Connection configuration' | translate }}
2013-03-19 21:57:52 +01:00
< / button >
< / div >
2014-02-21 02:13:31 +01:00
< / script >
2013-03-19 21:57:52 +01:00
<!-- }}} -->
2014-02-17 01:13:25 +01:00
<!-- {{{ server info modal -->
2014-02-21 02:13:31 +01:00
< script type = "text/ng-template" id = "server_info.html" >
2014-02-17 01:13:25 +01:00
< div class = "modal-header" >
2014-02-21 02:13:31 +01:00
< button class = "close" ng-click = "$dismiss()" > x< / button >
2015-10-28 17:31:35 +01:00
< h4 > {{ 'Aria2 server info' | translate }}< / h4 >
2014-02-17 01:13:25 +01:00
< / div >
< div class = "modal-body" >
2015-10-30 01:47:15 +01:00
< b > {{ 'Aria2 Version' | translate }} {{miscellaneous.version}}< / b >
< br / > < br / >
< b > {{ 'Features Enabled' | translate }}< / b >
2014-02-17 01:13:25 +01:00
< ul >
< li
ng-repeat="feature in miscellaneous.enabledFeatures">
< span > {{feature}}< / span >
< / li >
< / ul >
< / div >
< div class = "modal-footer" >
2015-10-28 17:31:35 +01:00
< button class = "btn btn-default" ng-click = "$dismiss()" > {{ 'Close' | translate }}< / button >
2014-02-17 01:13:25 +01:00
< / div >
2014-02-21 02:13:31 +01:00
< / script >
2014-02-17 01:13:25 +01:00
<!-- }}} -->
<!-- {{{ about modal -->
2014-02-21 02:13:31 +01:00
< script type = "text/ng-template" id = "about.html" >
2014-02-17 01:13:25 +01:00
< div class = "modal-header" >
2014-02-21 02:13:31 +01:00
< button class = "close" ng-click = "$dismiss()" > x< / button >
2015-10-28 17:31:35 +01:00
< h4 > {{ 'About and contribute' | translate }}< / h4 >
2014-02-17 01:13:25 +01:00
< / div >
< div class = "modal-body" >
< p >
2015-10-30 01:47:15 +01:00
{{ 'To download the latest version of the project, add issues or to contribute back, head on to' | translate }}:< br / >
2017-12-24 19:31:46 +01:00
< a href = "https://github.com/ziahamza/webui-aria2" target = "_blank" > https://github.com/ziahamza/webui-aria2< / a >
2014-02-17 01:13:25 +01:00
< br / > < br / >
2016-05-01 19:27:30 +02:00
{{ 'Or you can open the latest version in the browser through' | translate }}:< br / >
2017-12-24 19:31:46 +01:00
< a href = "https://ziahamza.github.io/webui-aria2" target = "_blank" > https://ziahamza.github.io/webui-aria2< / a >
2014-02-17 01:13:25 +01:00
< / p >
< / div >
< div class = "modal-footer" >
2015-10-28 17:31:35 +01:00
< button class = "btn btn-default" ng-click = "$dismiss()" > {{ 'Close' | translate }}< / button >
2014-02-17 01:13:25 +01:00
< / div >
2014-02-21 02:13:31 +01:00
< / script >
2014-02-17 01:13:25 +01:00
<!-- }}} -->
2013-03-19 21:57:52 +01:00
< / div >
<!-- }}} -->
< / body >
< / html >