diff --git a/.gitignore b/.gitignore index fd5106f..e928d8f 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ .DS_STORE +.idea diff --git a/configuration.js b/configuration.js index 8e975c7..8d1d9a9 100644 --- a/configuration.js +++ b/configuration.js @@ -1,36 +1,38 @@ angular .module('webui.services.configuration', []) -.constant('$name', 'webui-aria2') // name used accross the entire UI +.constant('$name', 'Aria2 WebUI') // name used across the entire UI +.constant('$titlePattern', 'active: {active} - waiting: {waiting} - stopped: {stopped} — {name}') .constant('$pageSize', 11) // number of downloads shown before pagination kicks in .constant('$authconf', { // default authentication configuration, never fill it in case the webui is hosted in public IP as it can be compromised host: 'localhost', port: 6800, encrypt: false, auth: { // either add the token field or the user and pass field, not both. - // token: '$YOUR_SECRET_ATOKEN$', + // token: '$YOUR_SECRET_TOKEN$' + /*-----------------------------*/ // user: '*YOUR_USERNAME*', - // pass: '*YOUR_SECRET_PASS*', + // pass: '*YOUR_SECRET_PASS*' } }) .constant('$enable', { - torrent: true, // bittorrent support only enabled if supported by aria2 build, set to false otherwise to permanantly disable it + torrent: true, // bittorrent support only enabled if supported by aria2 build, set to false otherwise to permanently disable it - metalink: true, // metalink support only enabled if supported by aria2 build, set to false to permanantly disable it + metalink: true, // metalink support only enabled if supported by aria2 build, set to false to permanently disable it sidebar: { // configuration related to the sidebar next to the list of downloads - show: true, // set to false to completly hide the sidebar. Other elements inside will be automatically hidden + show: true, // set to false to completely hide the sidebar. Other elements inside will be automatically hidden - stats: true, // set to false to hide the global statistic section (containts the speed graph for now) + stats: true, // set to false to hide the global statistic section (contains the speed graph for now) filters: true, // set to false to hide the Download Filters - starredProps: true, // only shown when atleast one property is added to the starred list, set to false to permanantly hide the Quick Access Settings inside the sidebar + starredProps: true // only shown when at least one property is added to the starred list, set to false to permanently hide the Quick Access Settings inside the sidebar } }) -.constant('$starredProps', [ // default list of Quick Access Properties. Can be overwriden by making modification through the Global Settings dialog +.constant('$starredProps', [ // default list of Quick Access Properties. Can be overridden by making modification through the Global Settings dialog // go to Global Settings dialog to see their description - 'dir', 'conf-path', 'auto-file-renaming', 'max-connection-per-server', + 'dir', 'conf-path', 'auto-file-renaming', 'max-connection-per-server' ]) .constant('$downloadProps', [ // Similar to starred Quick Access properties but for adding new downloads. // go to Advance Download Options when adding a new download to view the list of possible options diff --git a/index.html b/index.html index 95eac10..bac0c26 100755 --- a/index.html +++ b/index.html @@ -9,7 +9,7 @@ - {{ name }} + Aria2 WebUI @@ -210,7 +210,7 @@
-
+
diff --git a/js/ctrls/main.js b/js/ctrls/main.js index eb98c63..c674017 100755 --- a/js/ctrls/main.js +++ b/js/ctrls/main.js @@ -8,11 +8,11 @@ angular '$scope', '$name', '$enable', '$rpc', '$rpchelpers', '$utils', '$alerts', '$modals', '$fileSettings', '$activeInclude', '$waitingExclude', '$pageSize', // for document title - '$window', + '$rootScope', function( scope, name, enable, rpc, rhelpers, utils, alerts, modals, fsettings, activeInclude, waitingExclude, pageSize, - window + rootScope ) { scope.name = name; // default UI name @@ -152,10 +152,11 @@ function( }); }); + rootScope.pageTitle = utils.getTitle(); rpc.subscribe('getGlobalStat', [], function(data) { scope.$apply(function() { scope.gstats = data[0]; - window.document.title = utils.getTitle(scope.gstats); + rootScope.pageTitle = utils.getTitle(scope.gstats); }); }); diff --git a/js/services/utils.js b/js/services/utils.js index a007a8b..ac82c6b 100644 --- a/js/services/utils.js +++ b/js/services/utils.js @@ -1,5 +1,5 @@ angular.module('webui.services.utils', ['webui.services.configuration']) -.factory('$utils', ['$filter', "$name", function(filter, $name) { +.factory('$utils', ['$filter', '$name', '$titlePattern', function(filter, $name, $titlePattern) { var rnd16 = (function() { "use strict"; var rndBuffer = new Uint8Array(16); @@ -118,14 +118,14 @@ angular.module('webui.services.utils', ['webui.services.configuration']) }, // get info title from global statistics getTitle: function(stats) { - var title = - 'active: ' + stats.numActive - + ' - waiting: ' + stats.numWaiting - + ' - stopped: ' + stats.numStopped - + ' — ' - + $name; - - return title; + if(!stats) { + stats = {}; + } + return $titlePattern + .replace('{active}', stats.numActive || '⌛') + .replace('{waiting}', stats.numWaiting || '⌛') + .replace('{stopped}', stats.numStopped || '⌛') + .replace('{name}', $name); }, // get download chunks from aria2 bitfield