├── .editorconfig ├── .gitignore ├── .tx └── config ├── ISSUE_TEMPLATE.md ├── LICENSE ├── README.md ├── SERVER ├── .htaccess ├── fallback.php └── fallback.sh ├── appinfo ├── Screenshot.jpg ├── info.xml └── routes.php ├── controller ├── adminsettings.php ├── btdownloader.php ├── ftpdownloader.php ├── httpdownloader.php ├── index.php ├── lib │ ├── api.php │ ├── aria2.php │ ├── curl.php │ ├── settings.php │ ├── tools.php │ └── youtube.php ├── personalsettings.php ├── queue.php └── ytdownloader.php ├── css ├── settings │ ├── admin.css │ └── personal.css ├── styles.css └── styles.min.css ├── img ├── icon_download.svg ├── icon_upload.svg ├── ocdownloader.svg └── torrent.png ├── js ├── actives.js ├── add.js ├── add.min.js ├── all.js ├── badger.js ├── badger.min.js ├── completes.js ├── ocdownloader.js ├── ocdownloader.min.js ├── removed.js ├── settings │ ├── admin.js │ └── personal.js ├── stopped.js └── waitings.js ├── l10n ├── .gitkeep ├── af.js ├── af.json ├── ar.js ├── ar.json ├── ast.js ├── ast.json ├── az.js ├── az.json ├── be.js ├── be.json ├── bg.js ├── bg.json ├── bn_BD.js ├── bn_BD.json ├── br.js ├── br.json ├── bs.js ├── bs.json ├── ca.js ├── ca.json ├── cs.js ├── cs.json ├── cy_GB.js ├── cy_GB.json ├── da.js ├── da.json ├── de.js ├── de.json ├── de_DE.js ├── de_DE.json ├── el.js ├── el.json ├── en_GB.js ├── en_GB.json ├── eo.js ├── eo.json ├── es.js ├── es.json ├── es_419.js ├── es_419.json ├── es_AR.js ├── es_AR.json ├── es_CL.js ├── es_CL.json ├── es_CO.js ├── es_CO.json ├── es_CR.js ├── es_CR.json ├── es_DO.js ├── es_DO.json ├── es_EC.js ├── es_EC.json ├── es_GT.js ├── es_GT.json ├── es_HN.js ├── es_HN.json ├── es_MX.js ├── es_MX.json ├── es_NI.js ├── es_NI.json ├── es_PA.js ├── es_PA.json ├── es_PE.js ├── es_PE.json ├── es_PR.js ├── es_PR.json ├── es_PY.js ├── es_PY.json ├── es_SV.js ├── es_SV.json ├── es_UY.js ├── es_UY.json ├── et_EE.js ├── et_EE.json ├── eu.js ├── eu.json ├── fa.js ├── fa.json ├── fi.js ├── fi.json ├── fr.js ├── fr.json ├── ga.js ├── ga.json ├── gd.js ├── gd.json ├── gl.js ├── gl.json ├── he.js ├── he.json ├── hr.js ├── hr.json ├── hu.js ├── hu.json ├── hy.js ├── hy.json ├── ia.js ├── ia.json ├── id.js ├── id.json ├── is.js ├── is.json ├── it.js ├── it.json ├── ja.js ├── ja.json ├── ka.js ├── ka.json ├── ka_GE.js ├── ka_GE.json ├── kab.js ├── kab.json ├── km.js ├── km.json ├── kn.js ├── kn.json ├── ko.js ├── ko.json ├── lb.js ├── lb.json ├── lo.js ├── lo.json ├── lt_LT.js ├── lt_LT.json ├── lv.js ├── lv.json ├── mk.js ├── mk.json ├── mn.js ├── mn.json ├── ms_MY.js ├── ms_MY.json ├── nb.js ├── nb.json ├── nl.js ├── nl.json ├── nn_NO.js ├── nn_NO.json ├── oc.js ├── oc.json ├── pl.js ├── pl.json ├── pt_BR.js ├── pt_BR.json ├── pt_PT.js ├── pt_PT.json ├── ro.js ├── ro.json ├── ru.js ├── ru.json ├── sc.js ├── sc.json ├── si.js ├── si.json ├── sk.js ├── sk.json ├── sl.js ├── sl.json ├── sq.js ├── sq.json ├── sr.js ├── sr.json ├── sr@latin.js ├── sr@latin.json ├── sv.js ├── sv.json ├── sw.js ├── sw.json ├── ta.js ├── ta.json ├── th.js ├── th.json ├── tk.js ├── tk.json ├── tr.js ├── tr.json ├── ug.js ├── ug.json ├── uk.js ├── uk.json ├── uz.js ├── uz.json ├── vi.js ├── vi.json ├── zh_CN.js ├── zh_CN.json ├── zh_HK.js ├── zh_HK.json ├── zh_TW.js └── zh_TW.json ├── lib ├── AppInfo │ └── Application.php ├── Migration │ └── Version010709Date20201214095324.php └── Settings │ ├── Admin.php │ └── Personal.php └── templates ├── actives.php ├── add.php ├── all.php ├── completes.php ├── part.navigation.php ├── removed.php ├── settings ├── admin.php └── personal.php ├── stopped.php └── waitings.php /.editorconfig: -------------------------------------------------------------------------------- 1 | # https://editorconfig.org 2 | 3 | root = true 4 | 5 | [*] 6 | end_of_line = lf 7 | insert_final_newline = true 8 | charset = utf-8 9 | indent_style = space 10 | indent_size = 4 11 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .ci 2 | gulpfile.js 3 | package.json 4 | -------------------------------------------------------------------------------- /.tx/config: -------------------------------------------------------------------------------- 1 | [main] 2 | host = https://www.transifex.com 3 | lang_map = nb_NO: nb, sk_SK: sk, th_TH: th, ja_JP: ja, bg_BG: bg, cs_CZ: cs, fi_FI: fi, hu_HU: hu 4 | 5 | [o:nextcloud:p:nextcloud:r:ocdownloader] 6 | file_filter = translationfiles//ocdownloader.po 7 | source_file = translationfiles/templates/ocdownloader.pot 8 | source_lang = en 9 | type = PO 10 | 11 | -------------------------------------------------------------------------------- /ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | 9 | ### Steps to reproduce 10 | 1. 11 | 2. 12 | 3. 13 | 14 | ### Expected behaviour 15 | Tell us what should happen 16 | 17 | ### Actual behaviour 18 | Tell us what happens instead 19 | 20 | ### Server configuration 21 | 22 | **Operating system**: 23 | 24 | **Web server:** 25 | 26 | **Database:** 27 | 28 | **PHP version:** 29 | 30 | **Nextcloud version:** (see Nextcloud admin page) 31 | 32 | **Updated from an older Nextcloud/ownCloud or fresh install:** 33 | 34 | **Where did you install Nextcloud from:** 35 | 36 | **Signing status:** 37 |
38 | Signing status 39 | 40 | ``` 41 | Login as admin user into your Nextcloud and access 42 | http://example.com/index.php/settings/integrity/failed 43 | paste the results here. 44 | ``` 45 |
46 | 47 | **List of activated apps:** 48 |
49 | App list 50 | 51 | ``` 52 | If you have access to your command line run e.g.: 53 | sudo -u www-data php occ app:list 54 | from within your Nextcloud installation folder 55 | ``` 56 |
57 | 58 | **Nextcloud configuration:** 59 |
60 | Config report 61 | 62 | ``` 63 | If you have access to your command line run e.g.: 64 | sudo -u www-data php occ config:list system 65 | from within your Nextcloud installation folder 66 | 67 | or 68 | 69 | Insert your config.php content here. 70 | Make sure to remove all sensitive content such as passwords. (e.g. database password, passwordsalt, secret, smtp password, …) 71 | ``` 72 |
73 | 74 | **Are you using external storage, if yes which one (currently not supported by ocDownloader):** local/smb/sftp/... 75 | 76 | **Are you using encryption (currently not supported by ocDownloader):** yes/no 77 | 78 | **Are you using an external user-backend, if yes which one:** LDAP/ActiveDirectory/Webdav/... 79 | 80 | #### LDAP configuration (delete this part if not used) 81 |
82 | LDAP config 83 | 84 | ``` 85 | With access to your command line run e.g.: 86 | sudo -u www-data php occ ldap:show-config 87 | from within your Nextcloud installation folder 88 | 89 | Without access to your command line download the data/owncloud.db to your local 90 | computer or access your SQL server remotely and run the select query: 91 | SELECT * FROM `oc_appconfig` WHERE `appid` = 'user_ldap'; 92 | 93 | 94 | Eventually replace sensitive data as the name/IP-address of your LDAP server or groups. 95 | ``` 96 |
97 | 98 | #### ocDownloader configuration: 99 | 100 | **Which downloader are you using:** Curl/Aria2 101 | 102 | **Do you use a proxy:** Yes/No 103 | 104 | **Which protocols do you allow**: FTP/HTTP/Bittorrent/Youtube 105 | 106 | #### Aria2c configuration (remove if not used): 107 | 108 | **Which command line/configuration options are you using:** Post command line/options here... 109 | 110 | ##### Aria2c error log 111 |
112 | Aria2c log file (set the log level to debug by using --log-level=debug) 113 | 114 | ``` 115 | Insert your Aria2c error log here 116 | ``` 117 |
118 | 119 | ### Client configuration 120 | **Browser:** 121 | 122 | **Operating system:** 123 | 124 | ### Logs 125 | #### Web server error log 126 |
127 | Web server error log 128 | 129 | ``` 130 | Insert your webserver log here 131 | ``` 132 |
133 | 134 | #### Nextcloud log (data/nextcloud.log) 135 |
136 | Nextcloud log 137 | 138 | ``` 139 | Insert your Nextcloud log here 140 | ``` 141 |
142 | 143 | #### Browser log 144 |
145 | Browser log 146 | 147 | ``` 148 | Insert your browser log here, this could for example include: 149 | 150 | a) The javascript console log 151 | b) The network log 152 | c) ... 153 | ``` 154 |
155 | 156 | 157 | -------------------------------------------------------------------------------- /SERVER/.htaccess: -------------------------------------------------------------------------------- 1 | 2 | order deny, allow 3 | deny from all 4 | -------------------------------------------------------------------------------- /SERVER/fallback.php: -------------------------------------------------------------------------------- 1 | #!/usr/bin/php -q 2 | 10 | * @copyright Xavier Beurois 2015 11 | */ 12 | 13 | class OCD 14 | { 15 | private static $CurlHandler = null; 16 | private static $ProgressFile = null; 17 | private static $CHInfo = null; 18 | private static $PFHandle = null; 19 | 20 | public static function load($GID, $URI, $OPTIONS) 21 | { 22 | self::$ProgressFile = '/tmp/' . $GID . '.curl'; 23 | self::$PFHandle = fopen(self::$ProgressFile, 'w+'); 24 | 25 | self::$CurlHandler = curl_init(); 26 | 27 | $DestFile = fopen(rtrim($OPTIONS['dir'], '/') . '/' . $OPTIONS['out'], 'w+'); 28 | 29 | curl_setopt_array(self::$CurlHandler, array( 30 | CURLOPT_FILE => $DestFile, 31 | CURLOPT_URL => $URI 32 | )); 33 | self::curlSetBasicOptions(); 34 | self::curlSetAdvancedOptions($OPTIONS); 35 | 36 | curl_exec(self::$CurlHandler); 37 | curl_close(self::$CurlHandler); 38 | fclose($DestFile); 39 | } 40 | 41 | private static function writeProgress($DownloadStatus = 0) 42 | { 43 | if (self::$CHInfo['download_content_length'] != -1 && is_resource(self::$PFHandle)) { 44 | $State = $DownloadStatus == 0 ? 'active' :($DownloadStatus == 1 ? 'complete' : 'error'); 45 | $Downloaded = $DownloadStatus == 2 ? 0 : self::$CHInfo['size_download']; 46 | $Size = $DownloadStatus == 2 ? 0 : self::$CHInfo['download_content_length']; 47 | $Speed = $DownloadStatus == 2 ? 0 : self::$CHInfo['speed_download']; 48 | 49 | if (($PID = getmypid()) === false) { 50 | $PID = 0; 51 | } 52 | 53 | fwrite(self::$PFHandle, $State . ';' . $Downloaded . ';' . $Size . ';' . $Speed . ';' . $PID . "\n"); 54 | } 55 | } 56 | 57 | private static function curlSetBasicOptions() 58 | { 59 | // Basic options 60 | curl_setopt_array(self::$CurlHandler, array( 61 | CURLOPT_FOLLOWLOCATION => true, 62 | CURLOPT_MAXREDIRS => 20, 63 | CURLOPT_NOPROGRESS => false, 64 | CURLOPT_PROGRESSFUNCTION => function ($Resource, $TotalDL, $Downloaded, $UpSize, $Uploaded) { 65 | self::$CHInfo = curl_getinfo(self::$CurlHandler); 66 | 67 | if (self::$CHInfo['size_download'] == self::$CHInfo['download_content_length'] && self::$CHInfo['http_code'] == 200) { 68 | self::writeProgress(1); 69 | if (is_resource(self::$PFHandle)) { 70 | fclose(self::$PFHandle); 71 | } 72 | } else { 73 | self::writeProgress(); 74 | } 75 | }, 76 | )); 77 | } 78 | 79 | private static function curlSetAdvancedOptions($OPTIONS) 80 | { 81 | if (isset($OPTIONS['http-user']) && isset($OPTIONS['http-passwd'])) { 82 | curl_setopt(self::$CurlHandler, CURLOPT_HTTPAUTH, CURLAUTH_ANY); 83 | curl_setopt(self::$CurlHandler, CURLOPT_USERPWD, $OPTIONS['http-user'] . ':' . $OPTIONS['http-passwd']); 84 | } 85 | if (isset($OPTIONS['ftp-user']) && isset($OPTIONS['ftp-passwd'])) { 86 | curl_setopt(self::$CurlHandler, CURLOPT_HTTPAUTH, CURLAUTH_ANY); 87 | curl_setopt(self::$CurlHandler, CURLOPT_USERPWD, $OPTIONS['ftp-user'] . ':' . $OPTIONS['ftp-passwd']); 88 | } 89 | if (isset($OPTIONS['ftp-pasv'])) { 90 | curl_setopt(self::$CurlHandler, CURLOPT_FTP_USE_EPSV, $OPTIONS['ftp-pasv']); 91 | } 92 | if (isset($OPTIONS['referer'])) { 93 | curl_setopt(self::$CurlHandler, CURLOPT_REFERER, $OPTIONS['referer']); 94 | } 95 | if (isset($OPTIONS['user-agent'])) { 96 | curl_setopt(self::$CurlHandler, CURLOPT_USERAGENT, $OPTIONS['user-agent']); 97 | } 98 | if (isset($OPTIONS['all-proxy'])) { 99 | curl_setopt(self::$CurlHandler, CURLOPT_PROXY, $OPTIONS['all-proxy']); 100 | if (isset($OPTIONS['all-proxy-user']) && isset($OPTIONS['all-proxy-passwd'])) { 101 | curl_setopt(self::$CurlHandler, CURLOPT_PROXYUSERPWD, $OPTIONS['all-proxy-user'] . ':' . $OPTIONS['all-proxy-passwd']); 102 | } 103 | } 104 | if (isset($OPTIONS['max-download-limit'])) { 105 | $OPTIONS['max-download-limit'] =(rtrim($OPTIONS['max-download-limit'], 'K')) * 1024; 106 | curl_setopt(self::$CurlHandler, CURLOPT_MAX_RECV_SPEED_LARGE, $OPTIONS['max-download-limit']); 107 | } 108 | } 109 | } 110 | 111 | set_time_limit(0); 112 | OCD::load($argv[1], urldecode($argv[2]), json_decode(urldecode($argv[3]), true, 512, JSON_HEX_APOS | JSON_HEX_QUOT)); 113 | -------------------------------------------------------------------------------- /SERVER/fallback.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | DIR=$( cd "$( dirname "$0" )" && pwd ) 3 | $(which nohup) $(which php) $DIR/fallback.php "$1" "$2" "$3" > /tmp/nohup.out 2>&1 & -------------------------------------------------------------------------------- /appinfo/Screenshot.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-alfred/ocdownloader/5518e3608ffcc908529e856aa9e4f43b5a9f83e9/appinfo/Screenshot.jpg -------------------------------------------------------------------------------- /appinfo/info.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ocdownloader 4 | ocDownloader 5 | Easy to use download manager for Nextcloud 6 | Easy to use download manager using Curl/Aria2 and youtube-dl to allow downloading HTTP(S), FTP(S), YouTube videos and BitTorrent files. For more information on how to install, please go to https://github.com/e-alfred/ocdownloader/blob/master/README.md 7 | 8 | 9 | 1.9.1 10 | agpl 11 | e-alfred 12 | Nibbels 13 | Xavier Beurois 14 | https://github.com/e-alfred/ocdownloader 15 | https://github.com/e-alfred/ocdownloader/issues 16 | https://github.com/e-alfred/ocdownloader/ 17 | https://raw.githubusercontent.com/e-alfred/ocdownloader/master/appinfo/Screenshot.jpg 18 | https://github.com/e-alfred/ 19 | 20 | 21 | curl 22 | 23 | 24 | 25 | 26 | ocDownloader 27 | ocdownloader.Index.Add 28 | 99 29 | 30 | 31 | 32 | 33 | OCA\Ocdownloader\Settings\Admin 34 | OCA\Ocdownloader\Settings\Personal 35 | 36 | 37 | -------------------------------------------------------------------------------- /appinfo/routes.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Xavier Beurois 2015 10 | */ 11 | 12 | namespace OCA\ocDownloader\AppInfo; 13 | 14 | $Application = new Application(); 15 | $Application->registerRoutes($this, array( 16 | 'routes' => [ 17 | // Index 18 | ['name' => 'Index#Add', 'url' => '/add', 'verb' => 'GET'], 19 | ['name' => 'Index#All', 'url' => '/all', 'verb' => 'GET'], 20 | ['name' => 'Index#Completes', 'url' => '/completes', 'verb' => 'GET'], 21 | ['name' => 'Index#Actives', 'url' => '/actives', 'verb' => 'GET'], 22 | ['name' => 'Index#Waitings', 'url' => '/waitings', 'verb' => 'GET'], 23 | ['name' => 'Index#Stopped', 'url' => '/stopped', 'verb' => 'GET'], 24 | ['name' => 'Index#Removed', 'url' => '/removed', 'verb' => 'GET'], 25 | 26 | // HttpDownloader 27 | ['name' => 'HttpDownloader#Add', 'url' => '/httpdownloader/add', 'verb' => 'POST'], 28 | 29 | // FtpDownloader 30 | ['name' => 'FtpDownloader#Add', 'url' => '/ftpdownloader/add', 'verb' => 'POST'], 31 | 32 | // YTDownloader 33 | ['name' => 'YTDownloader#Add', 'url' => '/ytdownloader/add', 'verb' => 'POST'], 34 | 35 | // BTDownloader 36 | ['name' => 'BTDownloader#Add', 'url' => '/btdownloader/add', 'verb' => 'POST'], 37 | ['name' => 'BTDownloader#ListTorrentFiles', 'url' => '/btdownloader/listtorrentfiles', 'verb' => 'POST'], 38 | ['name' => 'BTDownloader#UploadFiles', 'url' => '/btdownloader/uploadfiles', 'verb' => 'POST'], 39 | 40 | // Queue 41 | ['name' => 'Queue#Get', 'url' => '/queue/get', 'verb' => 'POST'], 42 | ['name' => 'Queue#Count', 'url' => '/queue/count', 'verb' => 'POST'], 43 | ['name' => 'Queue#Hide', 'url' => '/queue/hide', 'verb' => 'POST'], 44 | ['name' => 'Queue#HideAll', 'url' => '/queue/hideall', 'verb' => 'POST'], 45 | ['name' => 'Queue#Remove', 'url' => '/queue/remove', 'verb' => 'POST'], 46 | ['name' => 'Queue#CompletelyRemove', 'url' => '/queue/completelyremove', 'verb' => 'POST'], 47 | ['name' => 'Queue#Pause', 'url' => '/queue/pause', 'verb' => 'POST'], 48 | ['name' => 'Queue#UnPause', 'url' => '/queue/unpause', 'verb' => 'POST'], 49 | ['name' => 'Queue#RemoveAll', 'url' => '/queue/removeall', 'verb' => 'POST'], 50 | ['name' => 'Queue#CompletelyRemoveAll', 'url' => '/queue/completelyremoveall', 'verb' => 'POST'], 51 | 52 | // AdminSettings 53 | ['name' => 'AdminSettings#Save', 'url' => '/adminsettings/save', 'verb' => 'POST'], 54 | ['name' => 'AdminSettings#Get', 'url' => '/adminsettings/get', 'verb' => 'POST'], 55 | 56 | // PersonalSettings 57 | ['name' => 'PersonalSettings#Save', 'url' => '/personalsettings/save', 'verb' => 'POST'], 58 | ['name' => 'PersonalSettings#Get', 'url' => '/personalsettings/get', 'verb' => 'GET'], 59 | 60 | //Extension API 61 | ['name' => 'Api#checkAddonVersion', 'url' => '/api/version', 'verb' => 'POST'], 62 | ['name' => 'Api#getQueue', 'url' => '/api/queue/get', 'verb' => 'GET'], 63 | ['name' => 'Api#add', 'url' => '/api/add', 'verb' => 'POST'] 64 | 65 | ] 66 | )); 67 | -------------------------------------------------------------------------------- /controller/lib/aria2.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Xavier Beurois 2015 10 | */ 11 | namespace OCA\ocDownloader\Controller\Lib; 12 | 13 | /** 14 | * @method static addTorrent($hash, $p1, $params) 15 | * @method static addUri($url, $params) 16 | * @method static forceRemove($gid) 17 | * @method static pause($gid) 18 | * @method static purgeDownloadResult() 19 | * @method static remove($gid) 20 | * @method static removeDownloadResult($gid) 21 | * @method static tellStatus($gid) 22 | * @method static unpause($gid) 23 | */ 24 | class Aria2 25 | { 26 | private static $Server = null; 27 | private static $Token = null; 28 | private static $CurlHandler; 29 | 30 | public static function __callStatic($Name, $Args) 31 | { 32 | $Settings = new Settings(); 33 | $Settings->setKey('AriaAddress'); 34 | self::$Server = $Settings->getValue() ? $Settings->getValue() : '127.0.0.1'; 35 | self::$Server .= ':'; 36 | $Settings->setKey('AriaPort'); 37 | self::$Server .= $Settings->getValue() ? $Settings->getValue() : '6800'; 38 | self::$Server .= '/jsonrpc'; 39 | 40 | $Args =(strcmp($Name, 'addTorrent') == 0 ? self::rebuildTorrentArgs($Args) : self::rebuildArgs($Args)); 41 | 42 | $Settings->setKey('AriaToken'); 43 | self::$Token = $Settings->getValue(); 44 | 45 | if (!empty(self::$Token)) { 46 | self::$Token = 'token:' . self::$Token; 47 | array_unshift($Args, self::$Token); 48 | } 49 | 50 | self::load(); 51 | 52 | $Data = array( 53 | 'jsonrpc' => '2.0', 54 | 'id' => 'ocdownloader', 55 | 'method' => 'aria2.' . lcfirst($Name), 56 | 'params' => $Args 57 | ); 58 | 59 | return json_decode(self::request($Data), 1); 60 | } 61 | 62 | /********** PRIVATE STATIC METHODS **********/ 63 | private static function load() 64 | { 65 | self::$CurlHandler = curl_init(self::$Server); 66 | 67 | curl_setopt_array(self::$CurlHandler, array( 68 | CURLOPT_POST => true, 69 | CURLOPT_RETURNTRANSFER => true, 70 | CURLOPT_HEADER => false 71 | )); 72 | } 73 | 74 | private static function request($Data) 75 | { 76 | curl_setopt(self::$CurlHandler, CURLOPT_POSTFIELDS, json_encode($Data)); 77 | $Data = curl_exec(self::$CurlHandler); 78 | curl_close(self::$CurlHandler); 79 | 80 | return $Data; 81 | } 82 | 83 | private static function rebuildArgs($Args) 84 | { 85 | if (!is_array($Args)) { 86 | //TODO Nibbels: Test: Is this muting another fault or possible state of Args?? 87 | //See https://github.com/e-alfred/ocdownloader/issues/11 88 | return array(); 89 | } 90 | if (!count($Args)) { 91 | //TODO Nibbels: Test: Is this muting another fault or possible state of Args?? 92 | //See https://github.com/e-alfred/ocdownloader/issues/11 93 | return array(); 94 | } 95 | if (isset($Args[1]['Server']) && !is_null($Args[1]['Server'])) { 96 | self::$Server = $Args[1]['Server']; 97 | } 98 | 99 | $RebuildArgs = array($Args[0]); 100 | 101 | if (isset($Args[1]['Params'])) { 102 | $RebuildArgs[1] = $Args[1]['Params']; 103 | } 104 | 105 | return $RebuildArgs; 106 | } 107 | 108 | private static function rebuildTorrentArgs($Args) 109 | { 110 | if (!is_array($Args)) { 111 | //TODO Nibbels: Test: Is this muting another fault or possible state of Args?? 112 | //See https://github.com/e-alfred/ocdownloader/issues/11 113 | return array(); 114 | } 115 | if (!count($Args)) { 116 | //TODO Nibbels: Test: Is this muting another fault or possible state of Args?? 117 | //See https://github.com/e-alfred/ocdownloader/issues/11 118 | return array(); 119 | } 120 | if (isset($Args[2]['Server']) && !is_null($Args[2]['Server'])) { 121 | self::$Server = $Args[2]['Server']; 122 | } 123 | 124 | $RebuildArgs = array($Args[0], array()); 125 | 126 | if (isset($Args[2]['Params'])) { 127 | $RebuildArgs[2] = $Args[2]['Params']; 128 | } 129 | 130 | return $RebuildArgs; 131 | } 132 | } 133 | -------------------------------------------------------------------------------- /controller/lib/curl.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Xavier Beurois 2015 10 | */ 11 | namespace OCA\ocDownloader\Controller\Lib; 12 | 13 | class CURL 14 | { 15 | private static $GID = null; 16 | private static $URI = null; 17 | private static $OPTIONS = null; 18 | 19 | public static function addUri($URI, $OPTIONS) 20 | { 21 | self::$GID = uniqid(); 22 | self::$URI = $URI; 23 | self::$OPTIONS = $OPTIONS; 24 | 25 | self::run(); 26 | 27 | return array('result' => self::$GID); 28 | } 29 | 30 | public static function tellStatus($GID) 31 | { 32 | if (file_exists('/tmp/' . $GID . '.curl')) { 33 | $Line = null; 34 | 35 | $TFHandle = fopen('/tmp/' . $GID . '.curl', 'r'); 36 | $Cursor = -1; 37 | 38 | fseek($TFHandle, $Cursor, SEEK_END); 39 | $Char = fgetc($TFHandle); 40 | 41 | while ($Char === "\n" || $Char === "\r") { 42 | fseek($TFHandle, $Cursor--, SEEK_END); 43 | $Char = fgetc($TFHandle); 44 | } 45 | 46 | while ($Char !== false && $Char !== "\n" && $Char !== "\r") { 47 | $Line = $Char . $Line; 48 | fseek($TFHandle, $Cursor--, SEEK_END); 49 | $Char = fgetc($TFHandle); 50 | } 51 | 52 | $StatusArray = array( 53 | 'status' => 'waiting', 54 | 'completedLength' => 0, 55 | 'totalLength' => 0, 56 | 'downloadSpeed' => 0, 57 | 'PID' => 0, 58 | 'GID' => $GID 59 | ); 60 | 61 | if (!is_null($Line)) { 62 | $Status = explode(';', $Line); 63 | if (count($Status) == 5) { 64 | $StatusArray['status'] = $Status[0]; 65 | $StatusArray['completedLength'] = $Status[1]; 66 | $StatusArray['totalLength'] = $Status[2]; 67 | $StatusArray['downloadSpeed'] = $Status[3]; 68 | $StatusArray['PID'] = $Status[4]; 69 | } 70 | } 71 | return array( 72 | 'result' => $StatusArray 73 | ); 74 | } else { 75 | return array( 76 | 'error' => true 77 | ); 78 | } 79 | } 80 | 81 | public static function remove($Status) 82 | { 83 | $Return = null; 84 | if (isset($Status['PID']) && is_numeric($Status['PID']) && isset($Status['GID'])) { 85 | if ($Status['PID'] == 0 || posix_kill($Status['PID'], 15) === false) { 86 | $Return = null; 87 | } 88 | 89 | if (file_exists('/tmp/' . $Status['GID'] . '.curl')) { 90 | $PFHandle = fopen('/tmp/' . $Status['GID'] . '.curl', 'a'); 91 | if (is_resource($PFHandle)) { 92 | fwrite( 93 | $PFHandle, 94 | 'removed;'.$Status['completedLength'].';'.$Status['totalLength'].';'.$Status['downloadSpeed'] 95 | .';'.$Status['PID']."\n" 96 | ); 97 | fclose($PFHandle); 98 | 99 | $Return = array('result' => $Status['GID']); 100 | } 101 | } 102 | } 103 | return $Return; 104 | } 105 | 106 | public static function removeDownloadResult($GID) 107 | { 108 | if (file_exists('/tmp/' . $GID . '.curl')) { 109 | unlink('/tmp/' . $GID . '.curl'); 110 | } 111 | return array( 112 | 'result' => 'OK' 113 | ); 114 | } 115 | 116 | /********** PRIVATE STATIC METHODS **********/ 117 | private static function run() 118 | { 119 | shell_exec( 120 | "sh " . rtrim(dirname(__FILE__), '/') . '/../../SERVER/fallback.sh "' . self::$GID . '" "' 121 | .urlencode(self::$URI) . '" "' . urlencode(json_encode(self::$OPTIONS, JSON_HEX_APOS | JSON_HEX_QUOT)).'"' 122 | ); 123 | } 124 | } 125 | -------------------------------------------------------------------------------- /controller/lib/settings.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Xavier Beurois 2015 10 | */ 11 | 12 | namespace OCA\ocDownloader\Controller\Lib; 13 | 14 | 15 | 16 | class Settings 17 | { 18 | private $Key = null; 19 | private $DbType = 0; 20 | private $Table = null; 21 | private $UID = null; 22 | 23 | public function __construct($Table = 'admin') 24 | { 25 | if (strcmp(\OC::$server->getConfig()->getSystemValue('dbtype'), 'pgsql') == 0) { 26 | $this->DbType = 1; 27 | } 28 | 29 | $this->Table = $Table; 30 | } 31 | 32 | public function setKey($Key) 33 | { 34 | $this->Key = $Key; 35 | } 36 | 37 | public function setUID($UID) 38 | { 39 | $this->UID = $UID; 40 | } 41 | 42 | public function setTable($Table) 43 | { 44 | $this->Table = $Table; 45 | } 46 | 47 | public function checkIfKeyExists() 48 | { 49 | if (is_null($this->Key)) { 50 | return false; 51 | } 52 | 53 | $SQL = 'SELECT `VAL` FROM `*PREFIX*ocdownloader_'.$this->Table.'` WHERE `KEY` = ?' 54 | .(!is_null($this->UID) ? ' AND `UID` = ?' : '') . ' LIMIT 1'; 55 | if ($this->DbType == 1) { 56 | $SQL = 'SELECT "val" FROM *PREFIX*ocdownloader_'.$this->Table.' WHERE "key" = ?' 57 | .(!is_null($this->UID) ? ' AND "uid" = ?' : '').' LIMIT 1'; 58 | } 59 | $Query = \OC_DB::prepare($SQL); 60 | if (!is_null($this->UID)) { 61 | $Query->execute(array($this->Key, $this->UID)); 62 | } else { 63 | $Query->execute(array($this->Key)); 64 | } 65 | 66 | if ($Query->rowCount() == 1) { 67 | return true; 68 | } 69 | return false; 70 | } 71 | 72 | public function getValue() 73 | { 74 | $SQL = 'SELECT `VAL` FROM `*PREFIX*ocdownloader_'.$this->Table.'` WHERE `KEY` = ?' 75 | .(!is_null($this->UID) ? ' AND `UID` = ?' : '').' LIMIT 1'; 76 | if ($this->DbType == 1) { 77 | $SQL = 'SELECT "val" FROM *PREFIX*ocdownloader_'.$this->Table.' WHERE "key" = ?' 78 | .(!is_null($this->UID) ? ' AND "uid" = ?' : '').' LIMIT 1'; 79 | } 80 | $Query = \OC_DB::prepare($SQL); 81 | 82 | if (!is_null($this->UID)) { 83 | $Result = $Query->execute(array($this->Key, $this->UID)); 84 | } else { 85 | $Result = $Query->execute(array($this->Key)); 86 | } 87 | 88 | if ($Query->rowCount() == 1) { 89 | return $Result->fetchOne(); 90 | } 91 | return null; 92 | } 93 | 94 | public function getAllValues() 95 | { 96 | $SQL = 'SELECT `KEY`, `VAL` FROM `*PREFIX*ocdownloader_'.$this->Table.'`' 97 | .(!is_null($this->UID) ? ' WHERE `UID` = ?' : ''); 98 | if ($this->DbType == 1) { 99 | $SQL = 'SELECT "key", "val" FROM *PREFIX*ocdownloader_'.$this->Table.'' 100 | .(!is_null($this->UID) ? ' WHERE "uid" = ?' : ''); 101 | } 102 | $Query = \OC_DB::prepare($SQL); 103 | 104 | if (!is_null($this->UID)) { 105 | return $Query->execute(array($this->UID)); 106 | } else { 107 | return $Query->execute(); 108 | } 109 | } 110 | 111 | public function updateValue($Value) 112 | { 113 | $SQL = 'UPDATE `*PREFIX*ocdownloader_' . $this->Table . '`SET `VAL` = ? WHERE `KEY` = ?' 114 | .(!is_null($this->UID) ? ' AND `UID` = ?' : ''); 115 | if ($this->DbType == 1) { 116 | $SQL = 'UPDATE *PREFIX*ocdownloader_' . $this->Table . 'SET "val" = ? WHERE "key" = ?' 117 | .(!is_null($this->UID) ? ' AND "uid" = ?' : ''); 118 | } 119 | $Query = \OC_DB::prepare($SQL); 120 | 121 | if (!is_null($this->UID)) { 122 | $Query->execute(array($Value, $this->Key, $this->UID)); 123 | } else { 124 | $Query->execute(array($Value, $this->Key)); 125 | } 126 | } 127 | 128 | public function insertValue($Value) 129 | { 130 | $SQL = 'INSERT INTO `*PREFIX*ocdownloader_'.$this->Table.'`(`KEY`, `VAL`' 131 | .(!is_null($this->UID) ? ', `UID`' : '') . ') VALUES(?, ?' .(!is_null($this->UID) ? ', ?' : '').')'; 132 | if ($this->DbType == 1) { 133 | $SQL = 'INSERT INTO *PREFIX*ocdownloader_'.$this->Table.'("key", "val"' 134 | .(!is_null($this->UID) ? ', "uid"' : '') . ') VALUES(?, ?' .(!is_null($this->UID) ? ', ?' : '').')'; 135 | } 136 | $Query = \OC_DB::prepare($SQL); 137 | 138 | if (!is_null($this->UID)) { 139 | $Query->execute(array($this->Key, $Value, $this->UID)); 140 | } else { 141 | $Query->execute(array($this->Key, $Value)); 142 | } 143 | } 144 | } 145 | -------------------------------------------------------------------------------- /controller/lib/youtube.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Xavier Beurois 2015 10 | */ 11 | 12 | namespace OCA\ocDownloader\Controller\Lib; 13 | 14 | class YouTube 15 | { 16 | private $YTDLBinary = null; 17 | private $YTDLAudioFormat = null; 18 | private $YTDLVideoFormat = null; 19 | private $URL = null; 20 | private $ForceIPv4 = true; 21 | private $ProxyAddress = null; 22 | private $ProxyPort = 0; 23 | 24 | public function __construct($YTDLBinary, $URL, $YTDLAudioFormat, $YTDLVideoFormat) 25 | { 26 | $this->YTDLBinary = $YTDLBinary; 27 | $this->YTDLAudioFormat = $YTDLAudioFormat; 28 | $this->YTDLVideoFormat = $YTDLVideoFormat; 29 | $this->URL = $URL; 30 | } 31 | 32 | public function setForceIPv4($ForceIPv4) 33 | { 34 | $this->ForceIPv4 = $ForceIPv4; 35 | } 36 | 37 | public function setProxy($ProxyAddress, $ProxyPort) 38 | { 39 | $this->ProxyAddress = $ProxyAddress; 40 | $this->ProxyPort = $ProxyPort; 41 | } 42 | 43 | public function getVideoData($ExtractAudio = false) 44 | { 45 | $Proxy = null; 46 | if (!is_null($this->ProxyAddress) && $this->ProxyPort > 0 && $this->ProxyPort <= 65536) { 47 | $Proxy = ' --proxy ' . rtrim($this->ProxyAddress, '/') . ':' . $this->ProxyPort; 48 | } 49 | 50 | 51 | //youtube multibyte support 52 | //get avalible locales 53 | $locale_array = explode("\n", trim(shell_exec("locale -a|grep .utf8"))); 54 | $locale=array_pop($locale_array); 55 | //set locale 56 | putenv('LANG='.$locale); 57 | 58 | $fAudio = escapeshellarg($this->YTDLAudioFormat); 59 | $fVideo = escapeshellarg($this->YTDLVideoFormat); 60 | $Output = shell_exec( 61 | $this->YTDLBinary.' -i \''.$this->URL.'\' --get-url --get-filename' 62 | .($ExtractAudio?" -f $fAudio -x":" -f $fVideo").($this->ForceIPv4 ? ' -4' : '') 63 | .(is_null($Proxy) ? '' : $Proxy) 64 | ); 65 | 66 | $index=(preg_match('/&index=(\d+)/', $this->URL, $current))?$current[1]:1; 67 | 68 | if (!is_null($Output)) { 69 | $Output = explode("\n", $Output); 70 | 71 | if (count($Output) >= 2) { 72 | $OutProcessed = array(); 73 | $current_index=1; 74 | for ($I = 0; $I < count($Output); $I++) { 75 | if (mb_strlen(trim($Output[$I])) > 0) { 76 | if (mb_strpos(urldecode($Output[$I]), 'http://') === 0 || mb_strpos(urldecode($Output[$I]), 'https://') === 0) { 77 | if (mb_strpos(urldecode($Output[$I]), '&mime=audio/') !== false) 78 | $OutProcessed['AUDIO'] = $Output[$I]; 79 | else 80 | $OutProcessed['VIDEO'] = $Output[$I]; 81 | } else { 82 | $OutProcessed['FULLNAME'] = $Output[$I]; 83 | } 84 | } 85 | if ((!empty($OutProcessed['VIDEO']) || !empty($OutProcessed['AUDIO'])) && !empty($OutProcessed['FULLNAME'])) 86 | { 87 | if ($index == $current_index) 88 | { 89 | break; 90 | } else { 91 | $OutProcessed = array(); 92 | $current_index++; 93 | } 94 | } 95 | } 96 | return $OutProcessed; 97 | } 98 | } 99 | return null; 100 | } 101 | 102 | } 103 | -------------------------------------------------------------------------------- /controller/personalsettings.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Xavier Beurois 2015 10 | */ 11 | 12 | namespace OCA\ocDownloader\Controller; 13 | 14 | use OC_Util; 15 | use OCA\ocDownloader\Controller\Lib\Settings; 16 | use OCP\AppFramework\Controller; 17 | use OCP\AppFramework\Http\JSONResponse; 18 | use OCP\IL10N; 19 | use OCP\IRequest; 20 | 21 | class PersonalSettings extends Controller 22 | { 23 | private $CurrentUID = null; 24 | private $OCDSettingKeys = array( 25 | 'DownloadsFolder', 'TorrentsFolder', 'BTRatioToReach', 'BTSeedTimeToReach_BTSeedTimeToReachUnit' 26 | ); 27 | private $Settings = null; 28 | private $L10N = null; 29 | 30 | public function __construct($AppName, IRequest $Request, $CurrentUID, IL10N $L10N) 31 | { 32 | parent::__construct($AppName, $Request); 33 | OC_Util::setupFS(); 34 | 35 | $this->CurrentUID = $CurrentUID; 36 | 37 | $this->Settings = new Settings('personal'); 38 | $this->Settings->setUID($this->CurrentUID); 39 | 40 | $this->L10N = $L10N; 41 | } 42 | 43 | /** 44 | * @NoAdminRequired 45 | * @NoCSRFRequired 46 | */ 47 | public function save() 48 | { 49 | header( 'Content-Type: application/json; charset=utf-8'); 50 | 51 | $Error = false; 52 | $Message = ''; 53 | 54 | if (isset($_POST['KEY']) && strlen(trim($_POST['KEY'])) > 0 55 | && isset($_POST['VAL']) && strlen(trim($_POST['VAL'])) > 0) { 56 | $PostKey = str_replace('OCD', '', $_POST['KEY']); 57 | $PostValue = ltrim(trim(str_replace(' ', '\ ', $_POST['VAL'])), '/'); 58 | 59 | if (in_array($PostKey, $this->OCDSettingKeys)) { 60 | $this->Settings->setKey($PostKey); 61 | 62 | // Pre-Save process 63 | if (strcmp($PostKey, 'DownloadsFolder') == 0 || strcmp($PostKey, 'TorrentsFolder') == 0) { 64 | // check folder exists, if not create it 65 | if (!\OC\Files\Filesystem::is_dir($PostValue)) { 66 | // Create the target file 67 | \OC\Files\Filesystem::mkdir($PostValue); 68 | 69 | $Message .= $this->L10N->t('The folder doesn\'t exist. It has been created.'); 70 | } 71 | } 72 | 73 | if (strlen(trim($PostValue)) <= 0) { 74 | $PostValue = null; 75 | } 76 | 77 | if ($this->Settings->checkIfKeyExists()) { 78 | $this->Settings->updateValue($PostValue); 79 | } else { 80 | $this->Settings->insertValue($PostValue); 81 | } 82 | } else { 83 | $Error = true; 84 | $Message = $this->L10N->t('Unknown field'); 85 | } 86 | } else { 87 | $Error = true; 88 | $Message = $this->L10N->t('Undefined field'); 89 | } 90 | 91 | return new JSONResponse( 92 | array( 93 | 'ERROR' => $Error, 94 | 'MESSAGE' =>(strlen(trim($Message)) == 0 ?(string)$this->L10N->t('Saved') : $Message) 95 | ) 96 | ); 97 | } 98 | 99 | /** 100 | * @NoAdminRequired 101 | * @NoCSRFRequired 102 | */ 103 | public function get() 104 | { 105 | header( 'Content-Type: application/json; charset=utf-8'); 106 | 107 | $PersonalSettings = array(); 108 | foreach ($this->OCDSettingKeys as $SettingKey) { 109 | $this->Settings->setKey($SettingKey); 110 | $PersonalSettings[$SettingKey] = $this->Settings->getValue(); 111 | 112 | // Set default if not set in the database 113 | if (is_null($PersonalSettings[$SettingKey])) { 114 | switch ($SettingKey) { 115 | case 'DownloadsFolder': 116 | $PersonalSettings[$SettingKey] = 'Downloads'; 117 | break; 118 | case 'TorrentsFolder': 119 | $PersonalSettings[$SettingKey] = 'Downloads/Files/Torrents'; 120 | break; 121 | } 122 | } 123 | } 124 | 125 | return new JSONResponse(array('ERROR' => false, 'VALS' => $PersonalSettings)); 126 | } 127 | } 128 | -------------------------------------------------------------------------------- /css/settings/admin.css: -------------------------------------------------------------------------------- 1 | form#ocdownloader > p { 2 | margin-bottom: 5px; 3 | } 4 | form#ocdownloader span.OCDSLoader { 5 | padding: 10px; 6 | display: none; 7 | margin-left: 0.5em; 8 | } 9 | form#ocdownloader span.msg { 10 | display: none; 11 | padding: 3px; 12 | font-size: 10pt; 13 | margin-left: 0.5em; 14 | border-radius: 3px; 15 | } 16 | form#ocdownloader input.OCDYTDLBinary { 17 | width: 400px; 18 | } 19 | form#ocdownloader input.OCDYTDLAudioFormat { 20 | width: 400px; 21 | } 22 | form#ocdownloader input.OCDYTDLVideoFormat { 23 | width: 400px; 24 | } 25 | form#ocdownloader input.OCDProxyAddress { 26 | width: 270px; 27 | } 28 | form#ocdownloader input.OCDProxyPort { 29 | width: 102px; 30 | } 31 | form#ocdownloader input.OCDProxyUserFake, form#ocdownloader > p > input.OCDProxyPasswdFake { 32 | display: none; 33 | } 34 | 35 | form#ocdownloader input.OCDAriaAddress { 36 | width: 270px; 37 | } 38 | 39 | form#ocdownloader input.OCDAriaPort { 40 | width: 102px; 41 | } 42 | 43 | form#ocdownloader input.OCDAriaToken { 44 | width: 102px; 45 | } 46 | 47 | form#ocdownloader span.info { 48 | font-style: italic; 49 | color: #003366; 50 | } 51 | form#ocdownloader hr { 52 | width: 800px; 53 | color: #99CCFF; 54 | background-color: #66CCFF; 55 | float: left; 56 | } 57 | -------------------------------------------------------------------------------- /css/settings/personal.css: -------------------------------------------------------------------------------- 1 | form#ocdownloader > p { 2 | margin-bottom: 5px; 3 | } 4 | form#ocdownloader > p > span.OCDSLoader { 5 | padding: 10px; 6 | display: none; 7 | margin-left: 0.5em; 8 | } 9 | form#ocdownloader > p > span.msg { 10 | display: none; 11 | padding: 3px; 12 | font-size: 10pt; 13 | margin-left: 0.5em; 14 | border-radius: 3px; 15 | } 16 | form#ocdownloader > p > input.OCDDownloadsFolder, form#ocdownloader > p > input.OCDTorrentsFolder { 17 | width: 400px; 18 | } 19 | form#ocdownloader > p > span.info { 20 | font-style: italic; 21 | color: #003366; 22 | } 23 | form#ocdownloader > hr { 24 | width: 800px; 25 | color: #99CCFF; 26 | background-color: #66CCFF; 27 | float: left; 28 | } -------------------------------------------------------------------------------- /img/icon_download.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /img/icon_upload.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /img/ocdownloader.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /img/torrent.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-alfred/ocdownloader/5518e3608ffcc908529e856aa9e4f43b5a9f83e9/img/torrent.png -------------------------------------------------------------------------------- /js/actives.js: -------------------------------------------------------------------------------- 1 | /** 2 | * ownCloud - ocDownloader 3 | * 4 | * This file is licensed under the Affero General Public License version 3 or 5 | * later. See the LICENSE file. 6 | * 7 | * @author Xavier Beurois 8 | * @copyright Xavier Beurois 2015 9 | */ 10 | 11 | window.addEventListener('DOMContentLoaded', function () { 12 | $('#ball').Badger ('...'); 13 | $('#bcompletes').Badger ('...'); 14 | $('#bactives').Badger ('...'); 15 | $('#bwaitings').Badger ('...'); 16 | $('#bstopped').Badger ('...'); 17 | $('#bremoved').Badger ('...'); 18 | 19 | OCDLR.Utils.UpdateQueue (true, 'actives'); 20 | 21 | OCDLR.Utils.GetCounters (); 22 | }); 23 | -------------------------------------------------------------------------------- /js/add.min.js: -------------------------------------------------------------------------------- 1 | window.addEventListener("DOMContentLoaded",function(){$("#ball").Badger("..."),$("#bcompletes").Badger("..."),$("#bactives").Badger("..."),$("#bwaitings").Badger("..."),$("#bstopped").Badger("..."),$("#bremoved").Badger("..."),OCDLR.Utils.UpdateQueue(!0,"add"),$("#NewDL").bind("click",function(){$(this).children("ul").is(":visible")?$(this).children("ul").hide():$(this).children("ul").show()}),$("#NewDL").children("div").children("p").bind("click",function(){$("#app-content-wrapper .content-page").hide(),$("#app-content-wrapper .content-page[rel="+$(this).attr("data-rel")+"]").show()}),$("#NewDL").children("div").bind("click",function(){$("#app-content-wrapper .content-page").hide(),$("#app-content-wrapper .content-page[rel="+$(this).attr("data-rel")+"]").show()}),$("#option-ftp-pasv").prop("checked",!0),$("#option-yt-extractaudio").prop("checked",!1),$("#option-yt-forceipv4").prop("checked",!0),$("#option-bt-rmtorrent").prop("checked",!0),$("#TorrentsList").bind("click",function(){OCDLR.Utils.GetTorrentsList($(this).children("ul"))}),$("#app-content-wrapper .content-page[rel=OCDHTTP] div.launch").bind("click",function(){var e=$(this).parent().parent().children("input.url");e.val(function(t,e){return e.replace(/\s/g,"%20")}).val(),OCDLR.Utils.ValidURL(e.val())?OCDLR.Utils.AddDownload($(this),"http",e.val(),{HTTPUser:$("#option-http-user").val(),HTTPPasswd:$("#option-http-pwd").val(),HTTPReferer:$("#option-http-referer").val(),HTTPUseragent:$("#option-http-useragent").val(),HTTPOutfilename:$("#option-http-outfilename").val()}):OCDLR.Utils.PrintError(t("ocdownloader","Invalid URL. Please check the address of the file…")),e.val(""),$("#option-http-user").val(""),$("#option-http-pwd").val(""),$("#option-http-referer").val(""),$("#option-http-useragent").val(""),$("#option-http-outfilename").val("")}),$("#app-content-wrapper .content-page[rel=OCDFTP] div.launch").bind("click",function(){var e=$(this).parent().parent().children("input.url");OCDLR.Utils.ValidURL(e.val())?OCDLR.Utils.AddDownload($(this),"ftp",e.val(),{FTPUser:$("#option-ftp-user").val(),FTPPasswd:$("#option-ftp-pwd").val(),FTPPasv:$("#option-ftp-pasv").prop("checked"),FTPReferer:$("#option-ftp-referer").val(),FTPUseragent:$("#option-ftp-useragent").val(),FTPOutfilename:$("#option-ftp-outfilename").val()}):OCDLR.Utils.PrintError(t("ocdownloader","Invalid URL. Please check the address of the file…")),e.val(""),$("#option-ftp-user").val(""),$("#option-ftp-pwd").val(""),$("#option-ftp-pasv").prop("checked",!0),$("#option-ftp-referer").val(""),$("#option-ftp-useragent").val("")}),$("#app-content-wrapper .content-page[rel=OCDYT] div.launch").bind("click",function(){var e=$(this).parent().parent().children("input.url");OCDLR.Utils.ValidURL(e.val())?OCDLR.Utils.AddDownload($(this),"yt",e.val(),{YTExtractAudio:$("#option-yt-extractaudio").prop("checked"),YTForceIPv4:$("#option-yt-forceipv4").prop("checked")}):OCDLR.Utils.PrintError(t("ocdownloader","Invalid URL. Please check the address of the file…")),e.val(""),$("#option-yt-extractaudio").prop("checked",!1),$("#option-yt-forceipv4").prop("checked",!0)}),$("#app-content-wrapper .content-page[rel=OCDBT] div.launch").bind("click",function(){var e=$("#TorrentsList").children("a"),o=t("ocdownloader","Select a file.torrent");e.text().trim()!=o.trim()&&"File"==e.prop("data-rel")&&OCDLR.Utils.AddDownload($(this),"bt",e.text(),{BTRMTorrent:$("#option-bt-rmtorrent").prop("checked")}),e.text(o),$("#option-bt-rmtorrent").prop("checked",!0)});var e=$("#app-content-wrapper .content-page[rel=OCDBT] div.uploadfile #uploadfile").fileupload({autoUpload:!0,sequentialUploads:!0,type:"POST",dataType:"json"});e.on("fileuploadstart",function(t,e){$("#TorrentsList").children("ul").hide(),$("#app-content-wrapper .content-page[rel=OCDBT] div.uploadfile label").removeClass("icon-upload"),$("#app-content-wrapper .content-page[rel=OCDBT] div.uploadfile label").addClass("icon-loading-small"),$("#app-content-wrapper .content-page[rel=OCDBT] div.uploadfile input").prop("disabled",!0)}),e.on("fileuploaddone",function(t,e){e.result.ERROR?OCDLR.Utils.PrintError(e.result.MESSAGE):OCDLR.Utils.PrintInfo(e.result.MESSAGE),$("#app-content-wrapper .content-page[rel=OCDBT] div.uploadfile input").prop("disabled",!1),$("#app-content-wrapper .content-page[rel=OCDBT] div.uploadfile label").removeClass("icon-loading-small"),$("#app-content-wrapper .content-page[rel=OCDBT] div.uploadfile label").addClass("icon-upload")}),e.on("fileuploadfail",function(e,o){OCDLR.Utils.PrintError(t("ocdownloader","Error while uploading torrent file"))}),OCDLR.Utils.GetCounters()}); -------------------------------------------------------------------------------- /js/all.js: -------------------------------------------------------------------------------- 1 | /** 2 | * ownCloud - ocDownloader 3 | * 4 | * This file is licensed under the Affero General Public License version 3 or 5 | * later. See the LICENSE file. 6 | * 7 | * @author Xavier Beurois 8 | * @copyright Xavier Beurois 2015 9 | */ 10 | 11 | window.addEventListener('DOMContentLoaded', function () { 12 | $('#ball').Badger ('...'); 13 | $('#bcompletes').Badger ('...'); 14 | $('#bactives').Badger ('...'); 15 | $('#bwaitings').Badger ('...'); 16 | $('#bstopped').Badger ('...'); 17 | $('#bremoved').Badger ('...'); 18 | 19 | OCDLR.Utils.UpdateQueue (true, 'all'); 20 | 21 | OCDLR.Utils.GetCounters (); 22 | }); 23 | -------------------------------------------------------------------------------- /js/badger.js: -------------------------------------------------------------------------------- 1 | /** 2 | * ownCloud - ocDownloader 3 | * 4 | * This file is licensed under the Affero General Public License version 3 or 5 | * later. See the LICENSE file. 6 | * 7 | * @author Xavier Beurois 8 | * @copyright Xavier Beurois 2015 9 | */ 10 | (function ($) 11 | { 12 | $.fn.Badger = function (Badge, Callback) 13 | { 14 | var BadgerExists = this.find ('.badger-outter').html (); 15 | Badge = Badge.toString(); 16 | 17 | // Clear the badge 18 | if (!Badge) 19 | { 20 | if (BadgerExists) 21 | { 22 | this.find ('.badger-outter').remove (); 23 | } 24 | } 25 | else 26 | { 27 | // Figuring out badge data 28 | var OldBadge = this.find ('.badger-badge').text (); 29 | if (Badge.charAt (0) == '+') 30 | { 31 | if (isNaN (Badge.substr (1))) 32 | { 33 | Badge = OldBadge + Badge.substr (1); 34 | } 35 | else 36 | { 37 | Badge = Math.round (Number (OldBadge) + Number (Badge.substr (1))); 38 | } 39 | } 40 | else if (Badge.charAt (0) == '-') 41 | { 42 | if (isNaN (Badge.substr (1))) 43 | { 44 | Badge = OldBadge - Badge.substr (1); 45 | } 46 | else 47 | { 48 | Badge = Math.round (Number (OldBadge) - Number (Badge.substr (1))); 49 | } 50 | } 51 | 52 | // Don't add duplicates 53 | if (BadgerExists) 54 | { 55 | this.find ('.badger-badge').html (Badge); 56 | } 57 | else 58 | { 59 | this.append ('

' + Badge + '

'); 60 | } 61 | 62 | // Badger text or number class 63 | if (isNaN (Badge)) 64 | { 65 | this.find ('.badger-badge').removeClass ('badger-number').addClass ('badger-text'); 66 | } 67 | else 68 | { 69 | this.find ('.badger-badge').removeClass ('badger-text').addClass ('badger-number'); 70 | } 71 | 72 | // Send back badge 73 | if (Callback) 74 | { 75 | callback (Badge); 76 | } 77 | } 78 | }; 79 | })(jQuery); -------------------------------------------------------------------------------- /js/badger.min.js: -------------------------------------------------------------------------------- 1 | /** 2 | * ownCloud - ocDownloader 3 | * 4 | * This file is licensed under the Affero General Public License version 3 or 5 | * later. See the LICENSE file. 6 | * 7 | * @author Xavier Beurois 8 | * @copyright Xavier Beurois 2015 9 | */ 10 | !function(e){e.fn.Badger=function(e,r){var a=this.find(".badger-outter").html();if(e=e.toString()){var d=this.find(".badger-badge").text();"+"==e.charAt(0)?e=isNaN(e.substr(1))?d+e.substr(1):Math.round(Number(d)+Number(e.substr(1))):"-"==e.charAt(0)&&(e=isNaN(e.substr(1))?d-e.substr(1):Math.round(Number(d)-Number(e.substr(1)))),a?this.find(".badger-badge").html(e):this.append('

'+e+"

"),isNaN(e)?this.find(".badger-badge").removeClass("badger-number").addClass("badger-text"):this.find(".badger-badge").removeClass("badger-text").addClass("badger-number"),r&&callback(e)}else a&&this.find(".badger-outter").remove()}}(jQuery); -------------------------------------------------------------------------------- /js/completes.js: -------------------------------------------------------------------------------- 1 | /** 2 | * ownCloud - ocDownloader 3 | * 4 | * This file is licensed under the Affero General Public License version 3 or 5 | * later. See the LICENSE file. 6 | * 7 | * @author Xavier Beurois 8 | * @copyright Xavier Beurois 2015 9 | */ 10 | 11 | window.addEventListener('DOMContentLoaded', function () { 12 | $('#ball').Badger ('...'); 13 | $('#bcompletes').Badger ('...'); 14 | $('#bactives').Badger ('...'); 15 | $('#bwaitings').Badger ('...'); 16 | $('#bstopped').Badger ('...'); 17 | $('#bremoved').Badger ('...'); 18 | 19 | OCDLR.Utils.UpdateQueue (true, 'completes'); 20 | 21 | OCDLR.Utils.GetCounters (); 22 | }); 23 | -------------------------------------------------------------------------------- /js/removed.js: -------------------------------------------------------------------------------- 1 | /** 2 | * ownCloud - ocDownloader 3 | * 4 | * This file is licensed under the Affero General Public License version 3 or 5 | * later. See the LICENSE file. 6 | * 7 | * @author Xavier Beurois 8 | * @copyright Xavier Beurois 2015 9 | */ 10 | 11 | window.addEventListener('DOMContentLoaded', function () { 12 | $('#ball').Badger ('...'); 13 | $('#bcompletes').Badger ('...'); 14 | $('#bactives').Badger ('...'); 15 | $('#bwaitings').Badger ('...'); 16 | $('#bstopped').Badger ('...'); 17 | $('#bremoved').Badger ('...'); 18 | 19 | OCDLR.Utils.UpdateQueue (true, 'removed'); 20 | 21 | OCDLR.Utils.GetCounters (); 22 | }); 23 | -------------------------------------------------------------------------------- /js/settings/admin.js: -------------------------------------------------------------------------------- 1 | /** 2 | * ownCloud - ocDownloader 3 | * 4 | * This file is licensed under the Affero General Public License version 3 or 5 | * later. See the LICENSE file. 6 | * 7 | * @author Xavier Beurois 8 | * @copyright Xavier Beurois 2015 9 | */ 10 | 11 | window.addEventListener('DOMContentLoaded', function () { 12 | $('#OCDWhichDownloader').bind ('change', function () 13 | { 14 | if ($('#OCDWhichDownloader').val () == 'ARIA2') 15 | { 16 | $('#OCDBTSettings').show (); 17 | $('#OCDAllowProtocolBT').show (); 18 | $('#OCDAllowProtocolBTDetails').hide (); 19 | } 20 | else 21 | { 22 | $('#OCDBTSettings').hide (); 23 | if ($('#OCDAllowProtocolBT').val () != 'N') 24 | { 25 | $('#OCDAllowProtocolBT').val ('N'); 26 | $('#OCDAllowProtocolBT').change (); 27 | } 28 | $('#OCDAllowProtocolBT').hide (); 29 | $('#OCDAllowProtocolBTDetails').show (); 30 | } 31 | }); 32 | $('#OCDAllowProtocolBT').bind ('change', function () 33 | { 34 | if ($('#OCDAllowProtocolBT').val () == 'Y') 35 | { 36 | $('#OCDBTSettings').show (); 37 | } 38 | else 39 | { 40 | $('#OCDBTSettings').hide (); 41 | } 42 | }); 43 | 44 | $('form#ocdownloader input.ToUse, form#ocdownloader select.ToUse').bind ('change', function () 45 | { 46 | var Field = $(this); 47 | 48 | $('#' + Field.attr ('data-loader')).show (); 49 | $('#' + Field.attr ('data-loader') + 'Msg').hide (); 50 | $('#' + Field.attr ('data-loader') + 'Msg').removeClass ('error'); 51 | $('#' + Field.attr ('data-loader') + 'Msg').removeClass ('success'); 52 | 53 | $.ajax({ 54 | url: OC.generateUrl ('/apps/ocdownloader/adminsettings/save'), 55 | method: 'POST', 56 | dataType: 'json', 57 | data: { 58 | 'KEY': Field.attr ('id').replace ('OCD', ''), 59 | 'VAL': Field.val () 60 | }, 61 | async: true, 62 | cache: false, 63 | timeout: 30000, 64 | success: function (Data) 65 | { 66 | $('#' + Field.attr ('data-loader')).hide (); 67 | 68 | $('#' + Field.attr ('data-loader') + 'Msg').text (Data.MESSAGE); 69 | if (Data.ERROR) 70 | { 71 | $('#' + Field.attr ('data-loader') + 'Msg').addClass ('error'); 72 | } 73 | else 74 | { 75 | $('#' + Field.attr ('data-loader') + 'Msg').addClass ('success'); 76 | } 77 | 78 | $('#' + Field.attr ('data-loader') + 'Msg').show (); 79 | 80 | $('#OCDWhichDownloaderDetails > strong').text ($('#OCDWhichDownloader > option:selected').attr ('data-protocols')); 81 | } 82 | }); 83 | }); 84 | 85 | $('#OCDWhichDownloaderDetails > strong').text ($('#OCDWhichDownloader > option:selected').attr ('data-protocols')); 86 | }); 87 | -------------------------------------------------------------------------------- /js/settings/personal.js: -------------------------------------------------------------------------------- 1 | /** 2 | * ownCloud - ocDownloader 3 | * 4 | * This file is licensed under the Affero General Public License version 3 or 5 | * later. See the LICENSE file. 6 | * 7 | * @author Xavier Beurois 8 | * @copyright Xavier Beurois 2015 9 | */ 10 | 11 | window.addEventListener('DOMContentLoaded', function () { 12 | $('form#ocdownloader > p > input[type="button"]').bind ('click', function () 13 | { 14 | $('#OCDSLoader').show (); 15 | $('#OCDSMsg').hide (); 16 | $('#OCDSMsg').removeClass ('error'); 17 | $('#OCDSMsg').removeClass ('success'); 18 | 19 | var KEY = $(this).attr ('data-rel'); 20 | var VAL = $('#' + KEY).val (); 21 | 22 | if (KEY == 'OCDBTSeedTimeToReach_OCDBTSeedTimeToReachUnit') 23 | { 24 | KEY = 'BTSeedTimeToReach_BTSeedTimeToReachUnit'; 25 | VAL = $('#OCDBTSeedTimeToReach').val () + '_' + $('#OCDBTSeedTimeToReachUnit').val (); 26 | } 27 | 28 | $.ajax({ 29 | url: OC.generateUrl ('/apps/ocdownloader/personalsettings/save'), 30 | method: 'POST', 31 | dataType: 'json', 32 | data: { 'KEY': KEY, 'VAL': VAL }, 33 | async: true, 34 | cache: false, 35 | timeout: 30000, 36 | success: function (Data) 37 | { 38 | $('#OCDSLoader').hide (); 39 | 40 | $('#OCDSMsg').text (Data.MESSAGE); 41 | if (Data.ERROR) 42 | { 43 | $('#OCDSMsg').addClass ('error'); 44 | } 45 | else 46 | { 47 | $('#OCDSMsg').addClass ('success'); 48 | } 49 | 50 | $('#OCDSMsg').show (); 51 | } 52 | }); 53 | }); 54 | }); 55 | -------------------------------------------------------------------------------- /js/stopped.js: -------------------------------------------------------------------------------- 1 | /** 2 | * ownCloud - ocDownloader 3 | * 4 | * This file is licensed under the Affero General Public License version 3 or 5 | * later. See the LICENSE file. 6 | * 7 | * @author Xavier Beurois 8 | * @copyright Xavier Beurois 2015 9 | */ 10 | 11 | window.addEventListener('DOMContentLoaded', function () { 12 | $('#ball').Badger ('...'); 13 | $('#bcompletes').Badger ('...'); 14 | $('#bactives').Badger ('...'); 15 | $('#bwaitings').Badger ('...'); 16 | $('#bstopped').Badger ('...'); 17 | $('#bremoved').Badger ('...'); 18 | 19 | OCDLR.Utils.UpdateQueue (true, 'stopped'); 20 | 21 | OCDLR.Utils.GetCounters (); 22 | }); 23 | -------------------------------------------------------------------------------- /js/waitings.js: -------------------------------------------------------------------------------- 1 | /** 2 | * ownCloud - ocDownloader 3 | * 4 | * This file is licensed under the Affero General Public License version 3 or 5 | * later. See the LICENSE file. 6 | * 7 | * @author Xavier Beurois 8 | * @copyright Xavier Beurois 2015 9 | */ 10 | 11 | window.addEventListener('DOMContentLoaded', function () { 12 | $('#ball').Badger ('...'); 13 | $('#bcompletes').Badger ('...'); 14 | $('#bactives').Badger ('...'); 15 | $('#bwaitings').Badger ('...'); 16 | $('#bstopped').Badger ('...'); 17 | $('#bremoved').Badger ('...'); 18 | 19 | OCDLR.Utils.UpdateQueue (true, 'waitings'); 20 | 21 | OCDLR.Utils.GetCounters (); 22 | }); 23 | -------------------------------------------------------------------------------- /l10n/.gitkeep: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /l10n/af.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Bewaar", 5 | "Video" : "Video", 6 | "Active" : "Aktief", 7 | "Upload" : "Laai op", 8 | "Loading" : "Laai tans..", 9 | "Username" : "Gebruikersnaam", 10 | "Password" : "Wagwoord", 11 | "Filename" : "Lêernaam", 12 | "No" : "Nee", 13 | "Yes" : "Ja", 14 | "Save" : "Stoor", 15 | "minutes" : "minute", 16 | "hours" : "uur", 17 | "days" : "dae", 18 | "weeks" : "weke" 19 | }, 20 | "nplurals=2; plural=(n != 1);"); 21 | -------------------------------------------------------------------------------- /l10n/af.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Bewaar", 3 | "Video" : "Video", 4 | "Active" : "Aktief", 5 | "Upload" : "Laai op", 6 | "Loading" : "Laai tans..", 7 | "Username" : "Gebruikersnaam", 8 | "Password" : "Wagwoord", 9 | "Filename" : "Lêernaam", 10 | "No" : "Nee", 11 | "Yes" : "Ja", 12 | "Save" : "Stoor", 13 | "minutes" : "minute", 14 | "hours" : "uur", 15 | "days" : "dae", 16 | "weeks" : "weke" 17 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 18 | } -------------------------------------------------------------------------------- /l10n/ast.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardóse", 5 | "You are not allowed to use the FTP protocol" : "Nun tienes permisu pa usar el protocolu FTP", 6 | "Please check the URL you've just provided" : "Comprueba la URL que tas acabante de fornir", 7 | "You are not allowed to use the HTTP protocol" : "Nun tienes permisu pa usar el protocolu HTTP", 8 | "Video" : "Videu", 9 | "The folder doesn't exist. It has been created." : "La carpeta nun esiste, poro, creóse.", 10 | "Unknown field" : "Campu desconocíu", 11 | "Undefined field" : "Campu ensin definir", 12 | "The download has been paused" : "Posóse la descarga", 13 | "An error occurred while pausing the download" : "Prodúxose un error mentanto se posaba la descarga", 14 | "The download has been cleaned" : "Borróse la descarga", 15 | "All downloads have been cleaned" : "Borráronse toles descargues", 16 | "The download has been removed" : "Quitóse la descarga", 17 | "An error occurred while removing the download" : "Prodúxose un error mentanto se quitaba la descarga", 18 | "All downloads have been removed" : "Quitáronse toles descargues", 19 | "You are not allowed to use the YouTube protocol" : "Nun tienes permisu pa usar el protocolu de YouTube", 20 | "No downloads in the queue…" : "Nun hai nengúna descarga na cola…", 21 | "Paused" : "En posa", 22 | "Active" : "Activa", 23 | "No Torrent Files" : "Nun hai nengún ficheru torrent", 24 | "Upload" : "Xunir", 25 | "ocDownloader" : "ocDownloader", 26 | "Active Downloads" : "Descargues actives", 27 | "PROTOCOL" : "PROTOCOLU", 28 | "INFORMATION" : "INFORMACIÓN", 29 | "SPEED" : "VELOCIDÁ", 30 | "Loading" : "Cargando", 31 | "Magnet/HTTP" : "Magnet/HTTP", 32 | "HTTP" : "HTTP", 33 | "Options" : "Opciones", 34 | "Username" : "Nome d'usuariu", 35 | "Password" : "Contraseña", 36 | "Filename" : "Nome del ficheru", 37 | "New FTP download" : "Descarga FTP nueva", 38 | "FTP Password" : "Contraseña de FTP", 39 | "FTP User Agent" : "Axente d'usuariu FTP", 40 | "Passive Mode" : "Mou pasivu", 41 | "New YouTube download" : "Descarga de YouTube nueva", 42 | "Only Extract audio ?" : "¿Quies estrayer namás l'audiu?", 43 | "New BitTorrent download" : "Descarga de BitTorrent nueva", 44 | "Remove torrent file ?" : "¿Quies quitar el ficheru torrent?", 45 | "STATUS" : "ESTÁU", 46 | "All Downloads" : "Toles descargues", 47 | "Complete Downloads" : "Descargues completes", 48 | "Waiting Downloads" : "Descargues n'espera", 49 | "Stopped Downloads" : "Descargues paraes", 50 | "Removed Downloads" : "Descargues quitaes", 51 | "Proxy settings" : "Configuración del proxy", 52 | "Proxy Address" : "Direición del proxy", 53 | "Proxy Port" : "Puertu del proxy", 54 | "Proxy User" : "Usuariu del proxy", 55 | "Proxy Password" : "Contraseña del proxy", 56 | "No" : "Non", 57 | "Yes" : "Sí", 58 | "General settings" : "Configuración xeneral", 59 | "Available protocols" : "Protocolos disponibles", 60 | "ARIA2 Address" : "Direición d'ARIA2", 61 | "ARIA2 Port" : "Puertu d'ARIA2", 62 | "ARIA2 Secret Token" : "Pase secretu d'ARIA2", 63 | "Secret Token" : "Pase secretu", 64 | "Save" : "Guardar", 65 | "unlimited" : "ensin llende", 66 | "minutes" : "minutos", 67 | "hours" : "Hores", 68 | "days" : "díes", 69 | "weeks" : "selmanes", 70 | "months" : "meses", 71 | "years" : "años" 72 | }, 73 | "nplurals=2; plural=(n != 1);"); 74 | -------------------------------------------------------------------------------- /l10n/ast.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardóse", 3 | "You are not allowed to use the FTP protocol" : "Nun tienes permisu pa usar el protocolu FTP", 4 | "Please check the URL you've just provided" : "Comprueba la URL que tas acabante de fornir", 5 | "You are not allowed to use the HTTP protocol" : "Nun tienes permisu pa usar el protocolu HTTP", 6 | "Video" : "Videu", 7 | "The folder doesn't exist. It has been created." : "La carpeta nun esiste, poro, creóse.", 8 | "Unknown field" : "Campu desconocíu", 9 | "Undefined field" : "Campu ensin definir", 10 | "The download has been paused" : "Posóse la descarga", 11 | "An error occurred while pausing the download" : "Prodúxose un error mentanto se posaba la descarga", 12 | "The download has been cleaned" : "Borróse la descarga", 13 | "All downloads have been cleaned" : "Borráronse toles descargues", 14 | "The download has been removed" : "Quitóse la descarga", 15 | "An error occurred while removing the download" : "Prodúxose un error mentanto se quitaba la descarga", 16 | "All downloads have been removed" : "Quitáronse toles descargues", 17 | "You are not allowed to use the YouTube protocol" : "Nun tienes permisu pa usar el protocolu de YouTube", 18 | "No downloads in the queue…" : "Nun hai nengúna descarga na cola…", 19 | "Paused" : "En posa", 20 | "Active" : "Activa", 21 | "No Torrent Files" : "Nun hai nengún ficheru torrent", 22 | "Upload" : "Xunir", 23 | "ocDownloader" : "ocDownloader", 24 | "Active Downloads" : "Descargues actives", 25 | "PROTOCOL" : "PROTOCOLU", 26 | "INFORMATION" : "INFORMACIÓN", 27 | "SPEED" : "VELOCIDÁ", 28 | "Loading" : "Cargando", 29 | "Magnet/HTTP" : "Magnet/HTTP", 30 | "HTTP" : "HTTP", 31 | "Options" : "Opciones", 32 | "Username" : "Nome d'usuariu", 33 | "Password" : "Contraseña", 34 | "Filename" : "Nome del ficheru", 35 | "New FTP download" : "Descarga FTP nueva", 36 | "FTP Password" : "Contraseña de FTP", 37 | "FTP User Agent" : "Axente d'usuariu FTP", 38 | "Passive Mode" : "Mou pasivu", 39 | "New YouTube download" : "Descarga de YouTube nueva", 40 | "Only Extract audio ?" : "¿Quies estrayer namás l'audiu?", 41 | "New BitTorrent download" : "Descarga de BitTorrent nueva", 42 | "Remove torrent file ?" : "¿Quies quitar el ficheru torrent?", 43 | "STATUS" : "ESTÁU", 44 | "All Downloads" : "Toles descargues", 45 | "Complete Downloads" : "Descargues completes", 46 | "Waiting Downloads" : "Descargues n'espera", 47 | "Stopped Downloads" : "Descargues paraes", 48 | "Removed Downloads" : "Descargues quitaes", 49 | "Proxy settings" : "Configuración del proxy", 50 | "Proxy Address" : "Direición del proxy", 51 | "Proxy Port" : "Puertu del proxy", 52 | "Proxy User" : "Usuariu del proxy", 53 | "Proxy Password" : "Contraseña del proxy", 54 | "No" : "Non", 55 | "Yes" : "Sí", 56 | "General settings" : "Configuración xeneral", 57 | "Available protocols" : "Protocolos disponibles", 58 | "ARIA2 Address" : "Direición d'ARIA2", 59 | "ARIA2 Port" : "Puertu d'ARIA2", 60 | "ARIA2 Secret Token" : "Pase secretu d'ARIA2", 61 | "Secret Token" : "Pase secretu", 62 | "Save" : "Guardar", 63 | "unlimited" : "ensin llende", 64 | "minutes" : "minutos", 65 | "hours" : "Hores", 66 | "days" : "díes", 67 | "weeks" : "selmanes", 68 | "months" : "meses", 69 | "years" : "años" 70 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 71 | } -------------------------------------------------------------------------------- /l10n/az.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Saxlanıldı", 5 | "Video" : "Video", 6 | "Upload" : "Serverə yüklə", 7 | "Loading" : "Loading", 8 | "Username" : "İstifadəçi adı", 9 | "Password" : "Şifrə", 10 | "No" : "No", 11 | "Yes" : "Yes", 12 | "Save" : "Saxla", 13 | "minutes" : "dəqiqələr", 14 | "hours" : "saatlar", 15 | "days" : "günlər", 16 | "weeks" : "həftələr" 17 | }, 18 | "nplurals=2; plural=(n != 1);"); 19 | -------------------------------------------------------------------------------- /l10n/az.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Saxlanıldı", 3 | "Video" : "Video", 4 | "Upload" : "Serverə yüklə", 5 | "Loading" : "Loading", 6 | "Username" : "İstifadəçi adı", 7 | "Password" : "Şifrə", 8 | "No" : "No", 9 | "Yes" : "Yes", 10 | "Save" : "Saxla", 11 | "minutes" : "dəqiqələr", 12 | "hours" : "saatlar", 13 | "days" : "günlər", 14 | "weeks" : "həftələr" 15 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 16 | } -------------------------------------------------------------------------------- /l10n/be.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Захавана", 5 | "Video" : "Відэа", 6 | "Uploaded" : "Зпампавана", 7 | "Paused" : "Прыпынена", 8 | "Upload" : "Запампаваць", 9 | "FILENAME" : "НАЗВА_ФАЙЛА", 10 | "Loading" : "Загрузка", 11 | "Options" : "Параметры", 12 | "Username" : "Імя карыстальніка", 13 | "Password" : "Пароль", 14 | "Filename" : "Назва файла", 15 | "No" : "Не", 16 | "Yes" : "Так", 17 | "ARIA2 Secret Token" : "Сакрэтны токен ARIA2", 18 | "Secret Token" : "Сакрэтны токен", 19 | "Save" : "Захаваць" 20 | }, 21 | "nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"); 22 | -------------------------------------------------------------------------------- /l10n/be.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Захавана", 3 | "Video" : "Відэа", 4 | "Uploaded" : "Зпампавана", 5 | "Paused" : "Прыпынена", 6 | "Upload" : "Запампаваць", 7 | "FILENAME" : "НАЗВА_ФАЙЛА", 8 | "Loading" : "Загрузка", 9 | "Options" : "Параметры", 10 | "Username" : "Імя карыстальніка", 11 | "Password" : "Пароль", 12 | "Filename" : "Назва файла", 13 | "No" : "Не", 14 | "Yes" : "Так", 15 | "ARIA2 Secret Token" : "Сакрэтны токен ARIA2", 16 | "Secret Token" : "Сакрэтны токен", 17 | "Save" : "Захаваць" 18 | },"pluralForm" :"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);" 19 | } -------------------------------------------------------------------------------- /l10n/bn_BD.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "সংরক্ষণ করা হলো", 5 | "Video" : "Video", 6 | "Uploaded" : "আপলোড করা হয়েছে", 7 | "Upload" : "আপলোড", 8 | "Loading" : "Loading", 9 | "Username" : "ব্যবহারকারী", 10 | "Password" : "কূটশব্দ", 11 | "No" : "No", 12 | "Yes" : "Yes", 13 | "Save" : "সংরক্ষণ", 14 | "minutes" : "মিনিটসমূহ", 15 | "hours" : "ঘন্টাসমূহ", 16 | "days" : "দিনগুলি", 17 | "weeks" : "সপ্তাহসমূহ" 18 | }, 19 | "nplurals=2; plural=(n != 1);"); 20 | -------------------------------------------------------------------------------- /l10n/bn_BD.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "সংরক্ষণ করা হলো", 3 | "Video" : "Video", 4 | "Uploaded" : "আপলোড করা হয়েছে", 5 | "Upload" : "আপলোড", 6 | "Loading" : "Loading", 7 | "Username" : "ব্যবহারকারী", 8 | "Password" : "কূটশব্দ", 9 | "No" : "No", 10 | "Yes" : "Yes", 11 | "Save" : "সংরক্ষণ", 12 | "minutes" : "মিনিটসমূহ", 13 | "hours" : "ঘন্টাসমূহ", 14 | "days" : "দিনগুলি", 15 | "weeks" : "সপ্তাহসমূহ" 16 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 17 | } -------------------------------------------------------------------------------- /l10n/br.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Enrollet", 5 | "Video" : "Video", 6 | "Uploaded" : "Pellkaset", 7 | "Active" : "O labourat", 8 | "Upload" : "Pellkas", 9 | "Loading" : "Kargañ", 10 | "HTTP" : "HTTP", 11 | "Username" : "anv implijer", 12 | "Password" : "Ger-tremen", 13 | "Filename" : "Anv restr", 14 | "Proxy Port" : "Porzh Proksi", 15 | "No" : "Nan", 16 | "Yes" : "Ya", 17 | "General settings" : "Stummoù hollek", 18 | "Save" : "Enrollañ", 19 | "hours" : "eur", 20 | "days" : "devezh" 21 | }, 22 | "nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"); 23 | -------------------------------------------------------------------------------- /l10n/br.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Enrollet", 3 | "Video" : "Video", 4 | "Uploaded" : "Pellkaset", 5 | "Active" : "O labourat", 6 | "Upload" : "Pellkas", 7 | "Loading" : "Kargañ", 8 | "HTTP" : "HTTP", 9 | "Username" : "anv implijer", 10 | "Password" : "Ger-tremen", 11 | "Filename" : "Anv restr", 12 | "Proxy Port" : "Porzh Proksi", 13 | "No" : "Nan", 14 | "Yes" : "Ya", 15 | "General settings" : "Stummoù hollek", 16 | "Save" : "Enrollañ", 17 | "hours" : "eur", 18 | "days" : "devezh" 19 | },"pluralForm" :"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);" 20 | } -------------------------------------------------------------------------------- /l10n/bs.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Spremljeno", 5 | "Video" : "Video", 6 | "Upload" : "Učitaj", 7 | "Loading" : "Loading", 8 | "Username" : "Korisničko ime", 9 | "Password" : "Lozinka", 10 | "No" : "No", 11 | "Yes" : "Yes", 12 | "Save" : "Spremi", 13 | "minutes" : "minuta", 14 | "hours" : "sati", 15 | "days" : "dana", 16 | "weeks" : "sedmica" 17 | }, 18 | "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"); 19 | -------------------------------------------------------------------------------- /l10n/bs.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Spremljeno", 3 | "Video" : "Video", 4 | "Upload" : "Učitaj", 5 | "Loading" : "Loading", 6 | "Username" : "Korisničko ime", 7 | "Password" : "Lozinka", 8 | "No" : "No", 9 | "Yes" : "Yes", 10 | "Save" : "Spremi", 11 | "minutes" : "minuta", 12 | "hours" : "sati", 13 | "days" : "dana", 14 | "weeks" : "sedmica" 15 | },"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" 16 | } -------------------------------------------------------------------------------- /l10n/cy_GB.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Wedi'u cadw", 5 | "Video" : "Video", 6 | "Upload" : "Llwytho i fyny", 7 | "Loading" : "Llwytho", 8 | "Username" : "Enw defnyddiwr", 9 | "Password" : "Cyfrinair", 10 | "Filename" : "Enw ffeil", 11 | "No" : "No", 12 | "Yes" : "Iawn", 13 | "Save" : "Cadw", 14 | "minutes" : "munud", 15 | "hours" : "awr", 16 | "days" : "diwrnod", 17 | "weeks" : "wythnos", 18 | "months" : "mis", 19 | "years" : "blwyddyn" 20 | }, 21 | "nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"); 22 | -------------------------------------------------------------------------------- /l10n/cy_GB.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Wedi'u cadw", 3 | "Video" : "Video", 4 | "Upload" : "Llwytho i fyny", 5 | "Loading" : "Llwytho", 6 | "Username" : "Enw defnyddiwr", 7 | "Password" : "Cyfrinair", 8 | "Filename" : "Enw ffeil", 9 | "No" : "No", 10 | "Yes" : "Iawn", 11 | "Save" : "Cadw", 12 | "minutes" : "munud", 13 | "hours" : "awr", 14 | "days" : "diwrnod", 15 | "weeks" : "wythnos", 16 | "months" : "mis", 17 | "years" : "blwyddyn" 18 | },"pluralForm" :"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;" 19 | } -------------------------------------------------------------------------------- /l10n/da.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Gemt", 5 | "Upload OK" : "Upload OK", 6 | "Video" : "Video", 7 | "Unknown field" : "Ukendt felt", 8 | "Undefined field" : "Udefineret felt", 9 | "Uploaded" : "Uploadet ", 10 | "Ratio" : "Størrelsesforhold", 11 | "Removed" : "Fjernet", 12 | "The download has been paused" : "Download er blevet sat på pause", 13 | "An error occurred while pausing the download" : "Der opstod en fejl, da download blev sat på pause", 14 | "The download has been unpaused" : "Download er ikke længere på pause", 15 | "Paused" : "Sat på pause", 16 | "Upload" : "Upload", 17 | "FILENAME" : "FILNAVN", 18 | "Loading" : "Indlæser", 19 | "Magnet/HTTP" : "Magnet/HTTP", 20 | "HTTP" : "HTTP", 21 | "Options" : "Valgmuligheder", 22 | "Username" : "Brugernavn", 23 | "Password" : "Adgangskode", 24 | "Filename" : "Filnavn", 25 | "Proxy Port" : "Proxy port", 26 | "No" : "Nej", 27 | "Yes" : "Ja", 28 | "General settings" : "Generelle indstillinger", 29 | "Secret Token" : "Hemmeligt token", 30 | "Allow HTTP/Magnet?" : "Tillad HTTP/Magnet?", 31 | "Save" : "Gem", 32 | "minutes" : "minutter", 33 | "hours" : "timer", 34 | "days" : "dage", 35 | "weeks" : "uger", 36 | "months" : "måneder", 37 | "years" : "år" 38 | }, 39 | "nplurals=2; plural=(n != 1);"); 40 | -------------------------------------------------------------------------------- /l10n/da.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Gemt", 3 | "Upload OK" : "Upload OK", 4 | "Video" : "Video", 5 | "Unknown field" : "Ukendt felt", 6 | "Undefined field" : "Udefineret felt", 7 | "Uploaded" : "Uploadet ", 8 | "Ratio" : "Størrelsesforhold", 9 | "Removed" : "Fjernet", 10 | "The download has been paused" : "Download er blevet sat på pause", 11 | "An error occurred while pausing the download" : "Der opstod en fejl, da download blev sat på pause", 12 | "The download has been unpaused" : "Download er ikke længere på pause", 13 | "Paused" : "Sat på pause", 14 | "Upload" : "Upload", 15 | "FILENAME" : "FILNAVN", 16 | "Loading" : "Indlæser", 17 | "Magnet/HTTP" : "Magnet/HTTP", 18 | "HTTP" : "HTTP", 19 | "Options" : "Valgmuligheder", 20 | "Username" : "Brugernavn", 21 | "Password" : "Adgangskode", 22 | "Filename" : "Filnavn", 23 | "Proxy Port" : "Proxy port", 24 | "No" : "Nej", 25 | "Yes" : "Ja", 26 | "General settings" : "Generelle indstillinger", 27 | "Secret Token" : "Hemmeligt token", 28 | "Allow HTTP/Magnet?" : "Tillad HTTP/Magnet?", 29 | "Save" : "Gem", 30 | "minutes" : "minutter", 31 | "hours" : "timer", 32 | "days" : "dage", 33 | "weeks" : "uger", 34 | "months" : "måneder", 35 | "years" : "år" 36 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 37 | } -------------------------------------------------------------------------------- /l10n/eo.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Konservita", 5 | "Video" : "Video", 6 | "Uploaded" : "Alŝutita", 7 | "Upload" : "Alŝuti", 8 | "Loading" : "Ŝargado", 9 | "Username" : "Uzantnomo", 10 | "Password" : "Pasvorto", 11 | "Filename" : "Dosiernomo", 12 | "No" : "No", 13 | "Yes" : "Yes", 14 | "Save" : "Konservi", 15 | "minutes" : "minutoj", 16 | "hours" : "horojn", 17 | "days" : "tagojn", 18 | "weeks" : "semajnoj", 19 | "months" : "Monatoj", 20 | "years" : "Jaroj" 21 | }, 22 | "nplurals=2; plural=(n != 1);"); 23 | -------------------------------------------------------------------------------- /l10n/eo.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Konservita", 3 | "Video" : "Video", 4 | "Uploaded" : "Alŝutita", 5 | "Upload" : "Alŝuti", 6 | "Loading" : "Ŝargado", 7 | "Username" : "Uzantnomo", 8 | "Password" : "Pasvorto", 9 | "Filename" : "Dosiernomo", 10 | "No" : "No", 11 | "Yes" : "Yes", 12 | "Save" : "Konservi", 13 | "minutes" : "minutoj", 14 | "hours" : "horojn", 15 | "days" : "tagojn", 16 | "weeks" : "semajnoj", 17 | "months" : "Monatoj", 18 | "years" : "Jaroj" 19 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 20 | } -------------------------------------------------------------------------------- /l10n/es_419.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Video" : "Video", 6 | "Uploaded" : "Cargado", 7 | "Paused" : "En pausa", 8 | "Upload" : "Cargar", 9 | "Loading" : "Cargando", 10 | "Username" : "Usuario", 11 | "Password" : "Contraseña", 12 | "Filename" : "Nombre del archivo", 13 | "No" : "No", 14 | "Yes" : "Sí", 15 | "General settings" : "Configuraciones generales", 16 | "Save" : "Guardar", 17 | "minutes" : "minutos", 18 | "hours" : "horas", 19 | "days" : "días", 20 | "weeks" : "semanas" 21 | }, 22 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 23 | -------------------------------------------------------------------------------- /l10n/es_419.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Video" : "Video", 4 | "Uploaded" : "Cargado", 5 | "Paused" : "En pausa", 6 | "Upload" : "Cargar", 7 | "Loading" : "Cargando", 8 | "Username" : "Usuario", 9 | "Password" : "Contraseña", 10 | "Filename" : "Nombre del archivo", 11 | "No" : "No", 12 | "Yes" : "Sí", 13 | "General settings" : "Configuraciones generales", 14 | "Save" : "Guardar", 15 | "minutes" : "minutos", 16 | "hours" : "horas", 17 | "days" : "días", 18 | "weeks" : "semanas" 19 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 20 | } -------------------------------------------------------------------------------- /l10n/es_AR.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Video" : "Video", 6 | "Uploaded" : "Cargado", 7 | "Paused" : "Pausado", 8 | "Upload" : "Cargar", 9 | "Loading" : "Cargando", 10 | "Options" : "Opciones", 11 | "Username" : "Nombre de usuario", 12 | "Password" : "Contraseña", 13 | "Filename" : "Nombre de archivo", 14 | "Proxy Port" : "Puerto del Proxy", 15 | "No" : "No", 16 | "Yes" : "Si", 17 | "General settings" : "Configuraciones generales", 18 | "Save" : "Guardar", 19 | "minutes" : "minutos", 20 | "hours" : "horas", 21 | "days" : "días", 22 | "weeks" : "semanas" 23 | }, 24 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 25 | -------------------------------------------------------------------------------- /l10n/es_AR.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Video" : "Video", 4 | "Uploaded" : "Cargado", 5 | "Paused" : "Pausado", 6 | "Upload" : "Cargar", 7 | "Loading" : "Cargando", 8 | "Options" : "Opciones", 9 | "Username" : "Nombre de usuario", 10 | "Password" : "Contraseña", 11 | "Filename" : "Nombre de archivo", 12 | "Proxy Port" : "Puerto del Proxy", 13 | "No" : "No", 14 | "Yes" : "Si", 15 | "General settings" : "Configuraciones generales", 16 | "Save" : "Guardar", 17 | "minutes" : "minutos", 18 | "hours" : "horas", 19 | "days" : "días", 20 | "weeks" : "semanas" 21 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 22 | } -------------------------------------------------------------------------------- /l10n/es_CL.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Video" : "Video", 6 | "Uploaded" : "Cargado", 7 | "Paused" : "Pausado", 8 | "Upload" : "Cargar", 9 | "Loading" : "Cargando", 10 | "Username" : "Usuario", 11 | "Password" : "Contraseña", 12 | "Filename" : "Nombre del archivo", 13 | "Proxy Port" : "Puerto del Proxy", 14 | "No" : "No", 15 | "Yes" : "Sí", 16 | "General settings" : "Configuraciones generales", 17 | "Save" : "Guardar", 18 | "minutes" : "minutos", 19 | "hours" : "horas", 20 | "days" : "días", 21 | "weeks" : "semanas" 22 | }, 23 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 24 | -------------------------------------------------------------------------------- /l10n/es_CL.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Video" : "Video", 4 | "Uploaded" : "Cargado", 5 | "Paused" : "Pausado", 6 | "Upload" : "Cargar", 7 | "Loading" : "Cargando", 8 | "Username" : "Usuario", 9 | "Password" : "Contraseña", 10 | "Filename" : "Nombre del archivo", 11 | "Proxy Port" : "Puerto del Proxy", 12 | "No" : "No", 13 | "Yes" : "Sí", 14 | "General settings" : "Configuraciones generales", 15 | "Save" : "Guardar", 16 | "minutes" : "minutos", 17 | "hours" : "horas", 18 | "days" : "días", 19 | "weeks" : "semanas" 20 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 21 | } -------------------------------------------------------------------------------- /l10n/es_CO.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Video" : "Video", 6 | "Uploaded" : "Cargado", 7 | "Paused" : "Pausado", 8 | "Upload" : "Cargar", 9 | "Loading" : "Cargando", 10 | "Username" : "Usuario", 11 | "Password" : "Contraseña", 12 | "Filename" : "Nombre del archivo", 13 | "Proxy Port" : "Puerto proxy", 14 | "No" : "No", 15 | "Yes" : "Sí", 16 | "General settings" : "Configuraciones generales", 17 | "Save" : "Guardar", 18 | "minutes" : "minutos", 19 | "hours" : "horas", 20 | "days" : "días", 21 | "weeks" : "semanas" 22 | }, 23 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 24 | -------------------------------------------------------------------------------- /l10n/es_CO.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Video" : "Video", 4 | "Uploaded" : "Cargado", 5 | "Paused" : "Pausado", 6 | "Upload" : "Cargar", 7 | "Loading" : "Cargando", 8 | "Username" : "Usuario", 9 | "Password" : "Contraseña", 10 | "Filename" : "Nombre del archivo", 11 | "Proxy Port" : "Puerto proxy", 12 | "No" : "No", 13 | "Yes" : "Sí", 14 | "General settings" : "Configuraciones generales", 15 | "Save" : "Guardar", 16 | "minutes" : "minutos", 17 | "hours" : "horas", 18 | "days" : "días", 19 | "weeks" : "semanas" 20 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 21 | } -------------------------------------------------------------------------------- /l10n/es_CR.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Video" : "Video", 6 | "Uploaded" : "Cargado", 7 | "Paused" : "Pausado", 8 | "Upload" : "Cargar", 9 | "Loading" : "Cargando", 10 | "Username" : "Usuario", 11 | "Password" : "Contraseña", 12 | "Filename" : "Nombre del archivo", 13 | "No" : "No", 14 | "Yes" : "Sí", 15 | "General settings" : "Configuraciones generales", 16 | "Save" : "Guardar", 17 | "minutes" : "minutos", 18 | "hours" : "horas", 19 | "days" : "días", 20 | "weeks" : "semanas" 21 | }, 22 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 23 | -------------------------------------------------------------------------------- /l10n/es_CR.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Video" : "Video", 4 | "Uploaded" : "Cargado", 5 | "Paused" : "Pausado", 6 | "Upload" : "Cargar", 7 | "Loading" : "Cargando", 8 | "Username" : "Usuario", 9 | "Password" : "Contraseña", 10 | "Filename" : "Nombre del archivo", 11 | "No" : "No", 12 | "Yes" : "Sí", 13 | "General settings" : "Configuraciones generales", 14 | "Save" : "Guardar", 15 | "minutes" : "minutos", 16 | "hours" : "horas", 17 | "days" : "días", 18 | "weeks" : "semanas" 19 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 20 | } -------------------------------------------------------------------------------- /l10n/es_DO.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Video" : "Video", 6 | "Uploaded" : "Cargado", 7 | "Paused" : "Pausado", 8 | "Upload" : "Cargar", 9 | "Loading" : "Cargando", 10 | "Username" : "Usuario", 11 | "Password" : "Contraseña", 12 | "Filename" : "Nombre del archivo", 13 | "No" : "No", 14 | "Yes" : "Sí", 15 | "General settings" : "Configuraciones generales", 16 | "Save" : "Guardar", 17 | "minutes" : "minutos", 18 | "hours" : "horas", 19 | "days" : "días", 20 | "weeks" : "semanas" 21 | }, 22 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 23 | -------------------------------------------------------------------------------- /l10n/es_DO.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Video" : "Video", 4 | "Uploaded" : "Cargado", 5 | "Paused" : "Pausado", 6 | "Upload" : "Cargar", 7 | "Loading" : "Cargando", 8 | "Username" : "Usuario", 9 | "Password" : "Contraseña", 10 | "Filename" : "Nombre del archivo", 11 | "No" : "No", 12 | "Yes" : "Sí", 13 | "General settings" : "Configuraciones generales", 14 | "Save" : "Guardar", 15 | "minutes" : "minutos", 16 | "hours" : "horas", 17 | "days" : "días", 18 | "weeks" : "semanas" 19 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 20 | } -------------------------------------------------------------------------------- /l10n/es_GT.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Video" : "Video", 6 | "Uploaded" : "Cargado", 7 | "Paused" : "Pausado", 8 | "Upload" : "Cargar", 9 | "Loading" : "Cargando", 10 | "Username" : "Usuario", 11 | "Password" : "Contraseña", 12 | "Filename" : "Nombre del archivo", 13 | "No" : "No", 14 | "Yes" : "Sí", 15 | "General settings" : "Configuraciones generales", 16 | "Save" : "Guardar", 17 | "minutes" : "minutos", 18 | "hours" : "horas", 19 | "days" : "días", 20 | "weeks" : "semanas" 21 | }, 22 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 23 | -------------------------------------------------------------------------------- /l10n/es_GT.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Video" : "Video", 4 | "Uploaded" : "Cargado", 5 | "Paused" : "Pausado", 6 | "Upload" : "Cargar", 7 | "Loading" : "Cargando", 8 | "Username" : "Usuario", 9 | "Password" : "Contraseña", 10 | "Filename" : "Nombre del archivo", 11 | "No" : "No", 12 | "Yes" : "Sí", 13 | "General settings" : "Configuraciones generales", 14 | "Save" : "Guardar", 15 | "minutes" : "minutos", 16 | "hours" : "horas", 17 | "days" : "días", 18 | "weeks" : "semanas" 19 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 20 | } -------------------------------------------------------------------------------- /l10n/es_HN.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Video" : "Video", 6 | "Uploaded" : "Cargado", 7 | "Paused" : "Pausado", 8 | "Upload" : "Cargar", 9 | "Loading" : "Cargando", 10 | "Username" : "Usuario", 11 | "Password" : "Contraseña", 12 | "Filename" : "Nombre del archivo", 13 | "No" : "No", 14 | "Yes" : "Sí", 15 | "General settings" : "Configuraciones generales", 16 | "Save" : "Guardar", 17 | "minutes" : "minutos", 18 | "hours" : "horas", 19 | "days" : "días", 20 | "weeks" : "semanas" 21 | }, 22 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 23 | -------------------------------------------------------------------------------- /l10n/es_HN.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Video" : "Video", 4 | "Uploaded" : "Cargado", 5 | "Paused" : "Pausado", 6 | "Upload" : "Cargar", 7 | "Loading" : "Cargando", 8 | "Username" : "Usuario", 9 | "Password" : "Contraseña", 10 | "Filename" : "Nombre del archivo", 11 | "No" : "No", 12 | "Yes" : "Sí", 13 | "General settings" : "Configuraciones generales", 14 | "Save" : "Guardar", 15 | "minutes" : "minutos", 16 | "hours" : "horas", 17 | "days" : "días", 18 | "weeks" : "semanas" 19 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 20 | } -------------------------------------------------------------------------------- /l10n/es_MX.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Video" : "Video", 6 | "Uploaded" : "Cargado", 7 | "Paused" : "Pausado", 8 | "Active" : "Activo", 9 | "Upload" : "Cargar", 10 | "Loading" : "Cargando", 11 | "Options" : "Opciones", 12 | "Username" : "Usuario", 13 | "Password" : "Contraseña", 14 | "Filename" : "Nombre del archivo", 15 | "Proxy Port" : "Puerto del proxy", 16 | "No" : "No", 17 | "Yes" : "Sí", 18 | "General settings" : "Configuraciones generales", 19 | "Save" : "Guardar", 20 | "minutes" : "minutos", 21 | "hours" : "horas", 22 | "days" : "días", 23 | "weeks" : "semanas", 24 | "months" : "meses", 25 | "years" : "años" 26 | }, 27 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 28 | -------------------------------------------------------------------------------- /l10n/es_MX.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Video" : "Video", 4 | "Uploaded" : "Cargado", 5 | "Paused" : "Pausado", 6 | "Active" : "Activo", 7 | "Upload" : "Cargar", 8 | "Loading" : "Cargando", 9 | "Options" : "Opciones", 10 | "Username" : "Usuario", 11 | "Password" : "Contraseña", 12 | "Filename" : "Nombre del archivo", 13 | "Proxy Port" : "Puerto del proxy", 14 | "No" : "No", 15 | "Yes" : "Sí", 16 | "General settings" : "Configuraciones generales", 17 | "Save" : "Guardar", 18 | "minutes" : "minutos", 19 | "hours" : "horas", 20 | "days" : "días", 21 | "weeks" : "semanas", 22 | "months" : "meses", 23 | "years" : "años" 24 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 25 | } -------------------------------------------------------------------------------- /l10n/es_NI.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Video" : "Video", 6 | "Uploaded" : "Cargado", 7 | "Paused" : "Pausado", 8 | "Upload" : "Cargar", 9 | "Loading" : "Cargando", 10 | "Username" : "Usuario", 11 | "Password" : "Contraseña", 12 | "Filename" : "Nombre del archivo", 13 | "No" : "No", 14 | "Yes" : "Sí", 15 | "General settings" : "Configuraciones generales", 16 | "Save" : "Guardar", 17 | "minutes" : "minutos", 18 | "hours" : "horas", 19 | "days" : "días", 20 | "weeks" : "semanas" 21 | }, 22 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 23 | -------------------------------------------------------------------------------- /l10n/es_NI.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Video" : "Video", 4 | "Uploaded" : "Cargado", 5 | "Paused" : "Pausado", 6 | "Upload" : "Cargar", 7 | "Loading" : "Cargando", 8 | "Username" : "Usuario", 9 | "Password" : "Contraseña", 10 | "Filename" : "Nombre del archivo", 11 | "No" : "No", 12 | "Yes" : "Sí", 13 | "General settings" : "Configuraciones generales", 14 | "Save" : "Guardar", 15 | "minutes" : "minutos", 16 | "hours" : "horas", 17 | "days" : "días", 18 | "weeks" : "semanas" 19 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 20 | } -------------------------------------------------------------------------------- /l10n/es_PA.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Video" : "Video", 6 | "Uploaded" : "Cargado", 7 | "Paused" : "Pausado", 8 | "Upload" : "Cargar", 9 | "Loading" : "Cargando", 10 | "Username" : "Usuario", 11 | "Password" : "Contraseña", 12 | "Filename" : "Nombre del archivo", 13 | "No" : "No", 14 | "Yes" : "Sí", 15 | "General settings" : "Configuraciones generales", 16 | "Save" : "Guardar", 17 | "minutes" : "minutos", 18 | "hours" : "horas", 19 | "days" : "días", 20 | "weeks" : "semanas" 21 | }, 22 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 23 | -------------------------------------------------------------------------------- /l10n/es_PA.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Video" : "Video", 4 | "Uploaded" : "Cargado", 5 | "Paused" : "Pausado", 6 | "Upload" : "Cargar", 7 | "Loading" : "Cargando", 8 | "Username" : "Usuario", 9 | "Password" : "Contraseña", 10 | "Filename" : "Nombre del archivo", 11 | "No" : "No", 12 | "Yes" : "Sí", 13 | "General settings" : "Configuraciones generales", 14 | "Save" : "Guardar", 15 | "minutes" : "minutos", 16 | "hours" : "horas", 17 | "days" : "días", 18 | "weeks" : "semanas" 19 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 20 | } -------------------------------------------------------------------------------- /l10n/es_PE.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Video" : "Video", 6 | "Uploaded" : "Cargado", 7 | "Paused" : "Pausado", 8 | "Upload" : "Cargar", 9 | "Loading" : "Cargando", 10 | "Username" : "Usuario", 11 | "Password" : "Contraseña", 12 | "Filename" : "Nombre del archivo", 13 | "No" : "No", 14 | "Yes" : "Sí", 15 | "General settings" : "Configuraciones generales", 16 | "Save" : "Guardar", 17 | "minutes" : "minutos", 18 | "hours" : "horas", 19 | "days" : "días", 20 | "weeks" : "semanas" 21 | }, 22 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 23 | -------------------------------------------------------------------------------- /l10n/es_PE.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Video" : "Video", 4 | "Uploaded" : "Cargado", 5 | "Paused" : "Pausado", 6 | "Upload" : "Cargar", 7 | "Loading" : "Cargando", 8 | "Username" : "Usuario", 9 | "Password" : "Contraseña", 10 | "Filename" : "Nombre del archivo", 11 | "No" : "No", 12 | "Yes" : "Sí", 13 | "General settings" : "Configuraciones generales", 14 | "Save" : "Guardar", 15 | "minutes" : "minutos", 16 | "hours" : "horas", 17 | "days" : "días", 18 | "weeks" : "semanas" 19 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 20 | } -------------------------------------------------------------------------------- /l10n/es_PR.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Video" : "Video", 6 | "Uploaded" : "Cargado", 7 | "Paused" : "Pausado", 8 | "Upload" : "Cargar", 9 | "Loading" : "Cargando", 10 | "Username" : "Usuario", 11 | "Password" : "Contraseña", 12 | "Filename" : "Nombre del archivo", 13 | "No" : "No", 14 | "Yes" : "Sí", 15 | "General settings" : "Configuraciones generales", 16 | "Save" : "Guardar", 17 | "minutes" : "minutos", 18 | "hours" : "horas", 19 | "days" : "días", 20 | "weeks" : "semanas" 21 | }, 22 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 23 | -------------------------------------------------------------------------------- /l10n/es_PR.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Video" : "Video", 4 | "Uploaded" : "Cargado", 5 | "Paused" : "Pausado", 6 | "Upload" : "Cargar", 7 | "Loading" : "Cargando", 8 | "Username" : "Usuario", 9 | "Password" : "Contraseña", 10 | "Filename" : "Nombre del archivo", 11 | "No" : "No", 12 | "Yes" : "Sí", 13 | "General settings" : "Configuraciones generales", 14 | "Save" : "Guardar", 15 | "minutes" : "minutos", 16 | "hours" : "horas", 17 | "days" : "días", 18 | "weeks" : "semanas" 19 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 20 | } -------------------------------------------------------------------------------- /l10n/es_PY.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Video" : "Video", 6 | "Uploaded" : "Cargado", 7 | "Paused" : "Pausado", 8 | "Upload" : "Cargar", 9 | "Loading" : "Cargando", 10 | "Username" : "Usuario", 11 | "Password" : "Contraseña", 12 | "Filename" : "Nombre del archivo", 13 | "No" : "No", 14 | "Yes" : "Sí", 15 | "General settings" : "Configuraciones generales", 16 | "Save" : "Guardar", 17 | "minutes" : "minutos", 18 | "hours" : "horas", 19 | "days" : "días", 20 | "weeks" : "semanas" 21 | }, 22 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 23 | -------------------------------------------------------------------------------- /l10n/es_PY.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Video" : "Video", 4 | "Uploaded" : "Cargado", 5 | "Paused" : "Pausado", 6 | "Upload" : "Cargar", 7 | "Loading" : "Cargando", 8 | "Username" : "Usuario", 9 | "Password" : "Contraseña", 10 | "Filename" : "Nombre del archivo", 11 | "No" : "No", 12 | "Yes" : "Sí", 13 | "General settings" : "Configuraciones generales", 14 | "Save" : "Guardar", 15 | "minutes" : "minutos", 16 | "hours" : "horas", 17 | "days" : "días", 18 | "weeks" : "semanas" 19 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 20 | } -------------------------------------------------------------------------------- /l10n/es_SV.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Video" : "Video", 6 | "Uploaded" : "Cargado", 7 | "Paused" : "Pausado", 8 | "Upload" : "Cargar", 9 | "Loading" : "Cargando", 10 | "Username" : "Usuario", 11 | "Password" : "Contraseña", 12 | "Filename" : "Nombre del archivo", 13 | "No" : "No", 14 | "Yes" : "Sí", 15 | "General settings" : "Configuraciones generales", 16 | "Save" : "Guardar", 17 | "minutes" : "minutos", 18 | "hours" : "horas", 19 | "days" : "días", 20 | "weeks" : "semanas" 21 | }, 22 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 23 | -------------------------------------------------------------------------------- /l10n/es_SV.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Video" : "Video", 4 | "Uploaded" : "Cargado", 5 | "Paused" : "Pausado", 6 | "Upload" : "Cargar", 7 | "Loading" : "Cargando", 8 | "Username" : "Usuario", 9 | "Password" : "Contraseña", 10 | "Filename" : "Nombre del archivo", 11 | "No" : "No", 12 | "Yes" : "Sí", 13 | "General settings" : "Configuraciones generales", 14 | "Save" : "Guardar", 15 | "minutes" : "minutos", 16 | "hours" : "horas", 17 | "days" : "días", 18 | "weeks" : "semanas" 19 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 20 | } -------------------------------------------------------------------------------- /l10n/es_UY.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Video" : "Video", 6 | "Uploaded" : "Cargado", 7 | "Paused" : "Pausado", 8 | "Upload" : "Cargar", 9 | "Loading" : "Cargando", 10 | "Username" : "Usuario", 11 | "Password" : "Contraseña", 12 | "Filename" : "Nombre del archivo", 13 | "No" : "No", 14 | "Yes" : "Sí", 15 | "General settings" : "Configuraciones generales", 16 | "Save" : "Guardar", 17 | "minutes" : "minutos", 18 | "hours" : "horas", 19 | "days" : "días", 20 | "weeks" : "semanas" 21 | }, 22 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 23 | -------------------------------------------------------------------------------- /l10n/es_UY.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Video" : "Video", 4 | "Uploaded" : "Cargado", 5 | "Paused" : "Pausado", 6 | "Upload" : "Cargar", 7 | "Loading" : "Cargando", 8 | "Username" : "Usuario", 9 | "Password" : "Contraseña", 10 | "Filename" : "Nombre del archivo", 11 | "No" : "No", 12 | "Yes" : "Sí", 13 | "General settings" : "Configuraciones generales", 14 | "Save" : "Guardar", 15 | "minutes" : "minutos", 16 | "hours" : "horas", 17 | "days" : "días", 18 | "weeks" : "semanas" 19 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 20 | } -------------------------------------------------------------------------------- /l10n/et_EE.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Invalid Aria address URL" : "Vigane Aria võrguaadress", 5 | "Aria port should be a numeric value" : "Aria pordi väärtus peab olema täisarv", 6 | "Aria port should be a value from 1 to 65536" : "Aria pordi number peaks olema vahemikust 1 kuni 65536", 7 | "Saved" : "Salvestatud", 8 | "Upload OK" : "Üleslaadimine õnnestus", 9 | "You are not allowed to use the FTP protocol" : "Sa ei tohi kasutada ftp-protokolli", 10 | "You are not allowed to use the HTTP protocol" : "Sa ei tohi kasutada http-protokolli", 11 | "Video" : "Video", 12 | "The folder doesn't exist. It has been created." : "Kausta pole olemas. Sa pead ta looma.", 13 | "Unknown field" : "Tundmatu väli", 14 | "Undefined field" : "Määratlemata väli", 15 | "Uploaded" : "Üleslaaditud", 16 | "Ratio" : "Suhtarv", 17 | "Removed" : "Eemaldatud", 18 | "An error occurred while removing the download" : "Allalaadimise eemaldamisel tekkis viga", 19 | "Paused" : "Peatatud", 20 | "Active" : "Aktiivne", 21 | "No Torrent Files" : "Torrentifaile pole", 22 | "Upload" : "Laadi üles", 23 | "ocDownloader" : "ocDownloader", 24 | "Easy to use download manager for Nextcloud" : "Lihtsaltkasutatav allalaadimishaldur Nextcloudi jaoks", 25 | "Active Downloads" : "Aktiivsed allalaadimised", 26 | "FILENAME" : "FAILINIMI", 27 | "INFORMATION" : "Teave", 28 | "Loading" : "Laadimine", 29 | "Magnet/HTTP" : "Magnet/HTTP", 30 | "HTTP" : "HTTP", 31 | "Add Download" : "Lisa allalaadimine", 32 | "New Magnet/HTTP download" : "Uus Magnet/HTTP allalaadimine", 33 | "New HTTP download" : "Uus HTTP allalaadimine", 34 | "Launch Magnet/HTTP download" : "Käivita Magnet/HTTP allalaadimine", 35 | "Launch HTTP download" : "Käivita HTTP allalaadimine", 36 | "Magnet/HTTP link to download" : "Allalaaditav Magnet/HTTP link", 37 | "HTTP link to download" : "Allalaaditav HTTP link", 38 | "Options" : "Eelistused", 39 | "Username" : "Kasutajanimi", 40 | "Password" : "Salasõna", 41 | "Filename" : "Failinimi", 42 | "New FTP download" : "Uus FTP allalaadimine", 43 | "Launch FTP Download" : "Käivita FTP allalaadimine", 44 | "FTP URL to download" : "Allalaaditav FTP võrguaadress", 45 | "FTP User" : "FTP kasutajanimi", 46 | "FTP Password" : "FTP salasõna", 47 | "STATUS" : "OLEK", 48 | "Removed Downloads" : "Eemaldatud allalaadimised", 49 | "YouTube DL Audio Format" : "YouTube'ist allalaadimise helivorming", 50 | "YouTube DL Video Format" : "YouTube'ist allalaadimise videovorming", 51 | "Proxy Port" : "Proksiserveri port", 52 | "Proxy User" : "Proksiserveri kasutajanimi", 53 | "Proxy Password" : "Proksiserveri salasõna", 54 | "No" : "Ei", 55 | "Yes" : "Jah", 56 | "General settings" : "Üldised seadistusted", 57 | "Available protocols" : "Saadaolevad protokollid", 58 | "ARIA2 Address" : "ARIA2 address", 59 | "ARIA2 Port" : "ARIA2 port", 60 | "ARIA2 Secret Token" : "ARIA2 saladus/tunnusluba", 61 | "Secret Token" : "Saladus/tunnusluba", 62 | "Allow HTTP/Magnet?" : "Kas kasutame HTTP/Magnet protokolli?", 63 | "Allow FTP?" : "Kas kasutame FTP protokolli?", 64 | "Allow BitTorrent?" : "Kas kasutame BitTorrenti protokolli?", 65 | "Default Downloads Folder" : "Allalaadimiste vaikimisi kaust", 66 | "Save" : "Salvesta", 67 | "unlimited" : "piiramatu", 68 | "minutes" : "minutit", 69 | "hours" : "tundi", 70 | "days" : "päeva", 71 | "weeks" : "nädalat", 72 | "months" : "kuud", 73 | "years" : "aastat" 74 | }, 75 | "nplurals=2; plural=(n != 1);"); 76 | -------------------------------------------------------------------------------- /l10n/et_EE.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Invalid Aria address URL" : "Vigane Aria võrguaadress", 3 | "Aria port should be a numeric value" : "Aria pordi väärtus peab olema täisarv", 4 | "Aria port should be a value from 1 to 65536" : "Aria pordi number peaks olema vahemikust 1 kuni 65536", 5 | "Saved" : "Salvestatud", 6 | "Upload OK" : "Üleslaadimine õnnestus", 7 | "You are not allowed to use the FTP protocol" : "Sa ei tohi kasutada ftp-protokolli", 8 | "You are not allowed to use the HTTP protocol" : "Sa ei tohi kasutada http-protokolli", 9 | "Video" : "Video", 10 | "The folder doesn't exist. It has been created." : "Kausta pole olemas. Sa pead ta looma.", 11 | "Unknown field" : "Tundmatu väli", 12 | "Undefined field" : "Määratlemata väli", 13 | "Uploaded" : "Üleslaaditud", 14 | "Ratio" : "Suhtarv", 15 | "Removed" : "Eemaldatud", 16 | "An error occurred while removing the download" : "Allalaadimise eemaldamisel tekkis viga", 17 | "Paused" : "Peatatud", 18 | "Active" : "Aktiivne", 19 | "No Torrent Files" : "Torrentifaile pole", 20 | "Upload" : "Laadi üles", 21 | "ocDownloader" : "ocDownloader", 22 | "Easy to use download manager for Nextcloud" : "Lihtsaltkasutatav allalaadimishaldur Nextcloudi jaoks", 23 | "Active Downloads" : "Aktiivsed allalaadimised", 24 | "FILENAME" : "FAILINIMI", 25 | "INFORMATION" : "Teave", 26 | "Loading" : "Laadimine", 27 | "Magnet/HTTP" : "Magnet/HTTP", 28 | "HTTP" : "HTTP", 29 | "Add Download" : "Lisa allalaadimine", 30 | "New Magnet/HTTP download" : "Uus Magnet/HTTP allalaadimine", 31 | "New HTTP download" : "Uus HTTP allalaadimine", 32 | "Launch Magnet/HTTP download" : "Käivita Magnet/HTTP allalaadimine", 33 | "Launch HTTP download" : "Käivita HTTP allalaadimine", 34 | "Magnet/HTTP link to download" : "Allalaaditav Magnet/HTTP link", 35 | "HTTP link to download" : "Allalaaditav HTTP link", 36 | "Options" : "Eelistused", 37 | "Username" : "Kasutajanimi", 38 | "Password" : "Salasõna", 39 | "Filename" : "Failinimi", 40 | "New FTP download" : "Uus FTP allalaadimine", 41 | "Launch FTP Download" : "Käivita FTP allalaadimine", 42 | "FTP URL to download" : "Allalaaditav FTP võrguaadress", 43 | "FTP User" : "FTP kasutajanimi", 44 | "FTP Password" : "FTP salasõna", 45 | "STATUS" : "OLEK", 46 | "Removed Downloads" : "Eemaldatud allalaadimised", 47 | "YouTube DL Audio Format" : "YouTube'ist allalaadimise helivorming", 48 | "YouTube DL Video Format" : "YouTube'ist allalaadimise videovorming", 49 | "Proxy Port" : "Proksiserveri port", 50 | "Proxy User" : "Proksiserveri kasutajanimi", 51 | "Proxy Password" : "Proksiserveri salasõna", 52 | "No" : "Ei", 53 | "Yes" : "Jah", 54 | "General settings" : "Üldised seadistusted", 55 | "Available protocols" : "Saadaolevad protokollid", 56 | "ARIA2 Address" : "ARIA2 address", 57 | "ARIA2 Port" : "ARIA2 port", 58 | "ARIA2 Secret Token" : "ARIA2 saladus/tunnusluba", 59 | "Secret Token" : "Saladus/tunnusluba", 60 | "Allow HTTP/Magnet?" : "Kas kasutame HTTP/Magnet protokolli?", 61 | "Allow FTP?" : "Kas kasutame FTP protokolli?", 62 | "Allow BitTorrent?" : "Kas kasutame BitTorrenti protokolli?", 63 | "Default Downloads Folder" : "Allalaadimiste vaikimisi kaust", 64 | "Save" : "Salvesta", 65 | "unlimited" : "piiramatu", 66 | "minutes" : "minutit", 67 | "hours" : "tundi", 68 | "days" : "päeva", 69 | "weeks" : "nädalat", 70 | "months" : "kuud", 71 | "years" : "aastat" 72 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 73 | } -------------------------------------------------------------------------------- /l10n/fi.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Unable to find YouTube-DL binary" : "YouTube-DL-binääriä ei löytynyt", 5 | "Proxy port should be a numeric value" : "Välityspalvelimen portin tulee olla numeerinen arvo", 6 | "Proxy port should be a value from 1 to 65536" : "Välityspalvelimen portin arvo tulee olla numeerinen väliltä 1-65536", 7 | "Saved" : "Tallennettu", 8 | "You are not allowed to use the BitTorrent protocol" : "Oikeutesi eivät riitä BitTorrent-protokollan käyttöön", 9 | "Download started" : "Lataus aloitettu", 10 | "Upload OK" : "Lähetys OK", 11 | "You are not allowed to use the FTP protocol" : "Oikeutesi eivät riitä FTP-protokollan käyttöön", 12 | "You are not allowed to use the HTTP protocol" : "Oikeutesi eivät riitä HTTP-protokollan käyttöön", 13 | "Video" : "Video", 14 | "The folder doesn't exist. It has been created." : "Kansiota ei ole olemassa. Se on luotu.", 15 | "Unknown field" : "Tuntematon kenttä", 16 | "Undefined field" : "Määrittämätön kenttä", 17 | "Uploaded" : "Lähetetty", 18 | "Ratio" : "Suhde", 19 | "Removed" : "Poistettu", 20 | "The download has been paused" : "Lataus on keskeytetty", 21 | "The download has been removed" : "Lataus on poistettu", 22 | "An error occurred while removing the download" : "Latausta poistaessa tapahtui virhe", 23 | "All downloads have been removed" : "Kaikki lataukset on poistettu", 24 | "The download has been totally removed" : "Lataus on poistettu täysin", 25 | "Invalid URL. Please check the address of the file…" : "Virheellinen osoite. Tarkista tiedoston osoite.", 26 | "No downloads in the queue…" : "Ei latauksia jonossa…", 27 | "Paused" : "Keskeytetty", 28 | "Active" : "Aktiivinen", 29 | "No Torrent Files" : "Ei torrent-tiedostoja", 30 | "Upload" : "Lähetä", 31 | "Easy to use download manager for Nextcloud" : "Helppokäyttöinen lataushallinta Nextcloudille", 32 | "Active Downloads" : "Aktiiviset lataukset", 33 | " using %s" : " käytössä %s", 34 | "FILENAME" : "TIEDOSTONIMI", 35 | "PROTOCOL" : "PROTOKOLLA", 36 | "INFORMATION" : "TIEDOT", 37 | "SPEED" : "NOPEUS", 38 | "Loading" : "Ladataan", 39 | "HTTP" : "HTTP", 40 | "Add Download" : "Lisää lataus", 41 | "New HTTP download" : "Uusi HTTP-lataus", 42 | "Options" : "Valinnat", 43 | "Basic Auth User" : "Basic Auth -käyttäjä", 44 | "Username" : "Käyttäjätunnus", 45 | "Basic Auth Password" : "Basic Auth -salasana", 46 | "Password" : "Salasana", 47 | "HTTP Referer" : "HTTP-viittaaja", 48 | "Referer" : "Viittaaja", 49 | "HTTP User Agent" : "HTTP-käyttäjäagentti", 50 | "Filename" : "Tiedostonimi", 51 | "New FTP download" : "Uusi FTP-lataus", 52 | "Launch FTP Download" : "Käynnistä FTP-lataus", 53 | "FTP URL to download" : "Ladattava FTP-osoite", 54 | "FTP User" : "FTP-käyttäjä", 55 | "FTP Password" : "FTP-salasana", 56 | "FTP Referer" : "FTP-viittaaja", 57 | "Passive Mode" : "Passiivinen tila", 58 | "New YouTube download" : "Uusi YouTube-lataus", 59 | "Launch YouTube Download" : "Käynnistä YouTube-lataus", 60 | "YouTube Video URL to download" : "Ladattavan YouTube-videon osoite", 61 | "Only Extract audio ?" : "Pura vain ääni?", 62 | "Force IPv4 ?" : "Pakota IPv4?", 63 | "New BitTorrent download" : "Uusi BitTorrent-lataus", 64 | "Launch BitTorrent Download" : "Käynnistä BitTorrent-lataus", 65 | "Remove torrent file ?" : "Poistetaanko torrent-tiedosto?", 66 | "STATUS" : "TILA", 67 | "All Downloads" : "Kaikki lataukset", 68 | "Complete Downloads" : "Suoritetut lataukset", 69 | "Waiting Downloads" : "Odottavat lataukset", 70 | "Stopped Downloads" : "Pysäytetyt lataukset", 71 | "Removed Downloads" : "Poistetut lataukset", 72 | "YouTube DL Binary Path" : "YouTube DL -binäärin polku", 73 | "Proxy settings" : "Välityspalvelimen asetukset", 74 | "Proxy Address" : "Välityspalvelimen osoite", 75 | "Proxy Port" : "Välityspalvelimen portti", 76 | "Proxy User" : "Välityspalvelimen käyttäjä", 77 | "Proxy Password" : "Välityspalvelimen salasana", 78 | "No" : "Ei", 79 | "Yes" : "Kyllä", 80 | "General settings" : "Yleiset asetukset", 81 | "Which downloader do you want to use?" : "Mitä lataajaa haluat käyttää?", 82 | "ARIA2 Address" : "ARIA2-osoite", 83 | "ARIA2 Port" : "ARIA2-portti", 84 | "ARIA2 Secret Token" : "ARIA2 - salainen poletti", 85 | "Secret Token" : "Salainen poletti", 86 | "Allow HTTP/Magnet?" : "Salli HTTP/Magnet?", 87 | "Allow FTP?" : "Salli FTP?", 88 | "Allow YouTube?" : "Salli YouTube?", 89 | "Allow BitTorrent?" : "Salli BitTorrent?", 90 | "Default Downloads Folder" : "Oletusarvoinen latauskansio", 91 | "Save" : "Tallenna", 92 | "Default Torrents Folder" : "Oletusarvoinen Torrent-kansio", 93 | "minutes" : "minuuttia", 94 | "hours" : "tuntia", 95 | "days" : "päivää", 96 | "weeks" : "viikkoa", 97 | "months" : "kuukautta", 98 | "years" : "vuotta" 99 | }, 100 | "nplurals=2; plural=(n != 1);"); 101 | -------------------------------------------------------------------------------- /l10n/fi.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Unable to find YouTube-DL binary" : "YouTube-DL-binääriä ei löytynyt", 3 | "Proxy port should be a numeric value" : "Välityspalvelimen portin tulee olla numeerinen arvo", 4 | "Proxy port should be a value from 1 to 65536" : "Välityspalvelimen portin arvo tulee olla numeerinen väliltä 1-65536", 5 | "Saved" : "Tallennettu", 6 | "You are not allowed to use the BitTorrent protocol" : "Oikeutesi eivät riitä BitTorrent-protokollan käyttöön", 7 | "Download started" : "Lataus aloitettu", 8 | "Upload OK" : "Lähetys OK", 9 | "You are not allowed to use the FTP protocol" : "Oikeutesi eivät riitä FTP-protokollan käyttöön", 10 | "You are not allowed to use the HTTP protocol" : "Oikeutesi eivät riitä HTTP-protokollan käyttöön", 11 | "Video" : "Video", 12 | "The folder doesn't exist. It has been created." : "Kansiota ei ole olemassa. Se on luotu.", 13 | "Unknown field" : "Tuntematon kenttä", 14 | "Undefined field" : "Määrittämätön kenttä", 15 | "Uploaded" : "Lähetetty", 16 | "Ratio" : "Suhde", 17 | "Removed" : "Poistettu", 18 | "The download has been paused" : "Lataus on keskeytetty", 19 | "The download has been removed" : "Lataus on poistettu", 20 | "An error occurred while removing the download" : "Latausta poistaessa tapahtui virhe", 21 | "All downloads have been removed" : "Kaikki lataukset on poistettu", 22 | "The download has been totally removed" : "Lataus on poistettu täysin", 23 | "Invalid URL. Please check the address of the file…" : "Virheellinen osoite. Tarkista tiedoston osoite.", 24 | "No downloads in the queue…" : "Ei latauksia jonossa…", 25 | "Paused" : "Keskeytetty", 26 | "Active" : "Aktiivinen", 27 | "No Torrent Files" : "Ei torrent-tiedostoja", 28 | "Upload" : "Lähetä", 29 | "Easy to use download manager for Nextcloud" : "Helppokäyttöinen lataushallinta Nextcloudille", 30 | "Active Downloads" : "Aktiiviset lataukset", 31 | " using %s" : " käytössä %s", 32 | "FILENAME" : "TIEDOSTONIMI", 33 | "PROTOCOL" : "PROTOKOLLA", 34 | "INFORMATION" : "TIEDOT", 35 | "SPEED" : "NOPEUS", 36 | "Loading" : "Ladataan", 37 | "HTTP" : "HTTP", 38 | "Add Download" : "Lisää lataus", 39 | "New HTTP download" : "Uusi HTTP-lataus", 40 | "Options" : "Valinnat", 41 | "Basic Auth User" : "Basic Auth -käyttäjä", 42 | "Username" : "Käyttäjätunnus", 43 | "Basic Auth Password" : "Basic Auth -salasana", 44 | "Password" : "Salasana", 45 | "HTTP Referer" : "HTTP-viittaaja", 46 | "Referer" : "Viittaaja", 47 | "HTTP User Agent" : "HTTP-käyttäjäagentti", 48 | "Filename" : "Tiedostonimi", 49 | "New FTP download" : "Uusi FTP-lataus", 50 | "Launch FTP Download" : "Käynnistä FTP-lataus", 51 | "FTP URL to download" : "Ladattava FTP-osoite", 52 | "FTP User" : "FTP-käyttäjä", 53 | "FTP Password" : "FTP-salasana", 54 | "FTP Referer" : "FTP-viittaaja", 55 | "Passive Mode" : "Passiivinen tila", 56 | "New YouTube download" : "Uusi YouTube-lataus", 57 | "Launch YouTube Download" : "Käynnistä YouTube-lataus", 58 | "YouTube Video URL to download" : "Ladattavan YouTube-videon osoite", 59 | "Only Extract audio ?" : "Pura vain ääni?", 60 | "Force IPv4 ?" : "Pakota IPv4?", 61 | "New BitTorrent download" : "Uusi BitTorrent-lataus", 62 | "Launch BitTorrent Download" : "Käynnistä BitTorrent-lataus", 63 | "Remove torrent file ?" : "Poistetaanko torrent-tiedosto?", 64 | "STATUS" : "TILA", 65 | "All Downloads" : "Kaikki lataukset", 66 | "Complete Downloads" : "Suoritetut lataukset", 67 | "Waiting Downloads" : "Odottavat lataukset", 68 | "Stopped Downloads" : "Pysäytetyt lataukset", 69 | "Removed Downloads" : "Poistetut lataukset", 70 | "YouTube DL Binary Path" : "YouTube DL -binäärin polku", 71 | "Proxy settings" : "Välityspalvelimen asetukset", 72 | "Proxy Address" : "Välityspalvelimen osoite", 73 | "Proxy Port" : "Välityspalvelimen portti", 74 | "Proxy User" : "Välityspalvelimen käyttäjä", 75 | "Proxy Password" : "Välityspalvelimen salasana", 76 | "No" : "Ei", 77 | "Yes" : "Kyllä", 78 | "General settings" : "Yleiset asetukset", 79 | "Which downloader do you want to use?" : "Mitä lataajaa haluat käyttää?", 80 | "ARIA2 Address" : "ARIA2-osoite", 81 | "ARIA2 Port" : "ARIA2-portti", 82 | "ARIA2 Secret Token" : "ARIA2 - salainen poletti", 83 | "Secret Token" : "Salainen poletti", 84 | "Allow HTTP/Magnet?" : "Salli HTTP/Magnet?", 85 | "Allow FTP?" : "Salli FTP?", 86 | "Allow YouTube?" : "Salli YouTube?", 87 | "Allow BitTorrent?" : "Salli BitTorrent?", 88 | "Default Downloads Folder" : "Oletusarvoinen latauskansio", 89 | "Save" : "Tallenna", 90 | "Default Torrents Folder" : "Oletusarvoinen Torrent-kansio", 91 | "minutes" : "minuuttia", 92 | "hours" : "tuntia", 93 | "days" : "päivää", 94 | "weeks" : "viikkoa", 95 | "months" : "kuukautta", 96 | "years" : "vuotta" 97 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 98 | } -------------------------------------------------------------------------------- /l10n/gd.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Uploaded" : "Air a luchdadh suas", 5 | "Upload" : "Luchdaich suas", 6 | "Username" : "Ainm-cleachdaiche", 7 | "Password" : "Facal-faire", 8 | "Filename" : "Ainm an fhaidhle", 9 | "No" : "Chan eil", 10 | "Yes" : "Tha", 11 | "Save" : "Sàbhail" 12 | }, 13 | "nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;"); 14 | -------------------------------------------------------------------------------- /l10n/gd.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Uploaded" : "Air a luchdadh suas", 3 | "Upload" : "Luchdaich suas", 4 | "Username" : "Ainm-cleachdaiche", 5 | "Password" : "Facal-faire", 6 | "Filename" : "Ainm an fhaidhle", 7 | "No" : "Chan eil", 8 | "Yes" : "Tha", 9 | "Save" : "Sàbhail" 10 | },"pluralForm" :"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;" 11 | } -------------------------------------------------------------------------------- /l10n/hy.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Պահված", 5 | "Video" : "Video", 6 | "Upload" : "Բեռնել", 7 | "Loading" : "Loading", 8 | "Username" : "Օգտանուն", 9 | "Password" : "Գաղտնաբառ", 10 | "No" : "No", 11 | "Yes" : "Yes", 12 | "Save" : "Պահպանել", 13 | "minutes" : "րոպե", 14 | "hours" : "ժամ", 15 | "days" : "օր" 16 | }, 17 | "nplurals=2; plural=(n != 1);"); 18 | -------------------------------------------------------------------------------- /l10n/hy.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Պահված", 3 | "Video" : "Video", 4 | "Upload" : "Բեռնել", 5 | "Loading" : "Loading", 6 | "Username" : "Օգտանուն", 7 | "Password" : "Գաղտնաբառ", 8 | "No" : "No", 9 | "Yes" : "Yes", 10 | "Save" : "Պահպանել", 11 | "minutes" : "րոպե", 12 | "hours" : "ժամ", 13 | "days" : "օր" 14 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 15 | } -------------------------------------------------------------------------------- /l10n/ia.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Salveguardate", 5 | "Video" : "Video", 6 | "Upload" : "Incargar", 7 | "Loading" : "Loading", 8 | "Username" : "Nomine de usator", 9 | "Password" : "Contrasigno", 10 | "No" : "No", 11 | "Yes" : "Si", 12 | "Save" : "Salveguardar", 13 | "minutes" : "minutas", 14 | "hours" : "horas", 15 | "days" : "dies", 16 | "weeks" : "septimanas" 17 | }, 18 | "nplurals=2; plural=(n != 1);"); 19 | -------------------------------------------------------------------------------- /l10n/ia.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Salveguardate", 3 | "Video" : "Video", 4 | "Upload" : "Incargar", 5 | "Loading" : "Loading", 6 | "Username" : "Nomine de usator", 7 | "Password" : "Contrasigno", 8 | "No" : "No", 9 | "Yes" : "Si", 10 | "Save" : "Salveguardar", 11 | "minutes" : "minutas", 12 | "hours" : "horas", 13 | "days" : "dies", 14 | "weeks" : "septimanas" 15 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 16 | } -------------------------------------------------------------------------------- /l10n/id.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Disimpan", 5 | "Video" : "Video", 6 | "Uploaded" : "Diunggah", 7 | "Paused" : "Dihentikan", 8 | "Upload" : "Unggah", 9 | "Loading" : "Memuat", 10 | "Options" : "Pilihan", 11 | "Username" : "Nama pengguna", 12 | "Password" : "Kata kunci", 13 | "Filename" : "Nama berkas", 14 | "Proxy Port" : "Proxy Port", 15 | "No" : "Tidak", 16 | "Yes" : "Ya", 17 | "Save" : "Simpan", 18 | "minutes" : "menit", 19 | "hours" : "jam", 20 | "days" : "hari", 21 | "weeks" : "minggu", 22 | "months" : "bulang", 23 | "years" : "tahun" 24 | }, 25 | "nplurals=1; plural=0;"); 26 | -------------------------------------------------------------------------------- /l10n/id.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Disimpan", 3 | "Video" : "Video", 4 | "Uploaded" : "Diunggah", 5 | "Paused" : "Dihentikan", 6 | "Upload" : "Unggah", 7 | "Loading" : "Memuat", 8 | "Options" : "Pilihan", 9 | "Username" : "Nama pengguna", 10 | "Password" : "Kata kunci", 11 | "Filename" : "Nama berkas", 12 | "Proxy Port" : "Proxy Port", 13 | "No" : "Tidak", 14 | "Yes" : "Ya", 15 | "Save" : "Simpan", 16 | "minutes" : "menit", 17 | "hours" : "jam", 18 | "days" : "hari", 19 | "weeks" : "minggu", 20 | "months" : "bulang", 21 | "years" : "tahun" 22 | },"pluralForm" :"nplurals=1; plural=0;" 23 | } -------------------------------------------------------------------------------- /l10n/is.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Vistað", 5 | "N/A" : "Ekki tiltækt", 6 | "Video" : "Myndskeið", 7 | "Unknown field" : "Óþekkt gagnasvið", 8 | "Undefined field" : "Óskilgreint gagnasvið", 9 | "Uploaded" : "Hlaðið inn", 10 | "Ratio" : "Hlutfall", 11 | "Removed" : "Fjarlægt", 12 | "Seeding" : "Sái", 13 | "Select a file.torrent" : "Veldu skráarheiti.torrent", 14 | "Paused" : "Í bið", 15 | "Active" : "Virkt", 16 | "No Torrent Files" : "Engar torrent-skrár", 17 | "Upload" : "Senda inn", 18 | " using %s" : " notar %s", 19 | "FILENAME" : "SKRÁARHEITI", 20 | "PROTOCOL" : "SAMSKIPTAMÁTI", 21 | "INFORMATION" : "UPPLÝSINGAR", 22 | "SPEED" : "HRAÐI", 23 | "Loading" : "Hleð inn", 24 | "Options" : "Valkostir", 25 | "Username" : "Notandanafn", 26 | "Password" : "Lykilorð", 27 | "HTTP Referer" : "HTTP tilvísun (referer)", 28 | "Referer" : "Kennistrengur", 29 | "Filename" : "Skráarheiti", 30 | "Passive Mode" : "Hlutlaus (passífur) hamur", 31 | "Force IPv4 ?" : "Þvinga IPv4 ?", 32 | "Remove torrent file ?" : "Fjarlægja torrent-skrá ?", 33 | "STATUS" : "STAÐA", 34 | "All Downloads" : "Öll niðurhöl", 35 | "Proxy settings" : "Stillingar milliþjóns (proxy)", 36 | "Proxy Port" : "Gátt milliþjóns", 37 | "Proxy User" : "Notandi milliþjóns", 38 | "Proxy Password" : "Lykilorð milliþjóns", 39 | "No" : "Nei", 40 | "Yes" : "Já", 41 | "General settings" : "Almennar stillingar", 42 | "Available protocols" : "Tiltækar samskiptareglur", 43 | "Max download speed ?" : "Mesti niðurhalshraði ?", 44 | "Default Downloads Folder" : "Sjálfgefin niðurhalsmappa", 45 | "Save" : "Vista", 46 | "unlimited" : "ótakmarkað", 47 | "minutes" : "mínútur", 48 | "hours" : "klukkustundir", 49 | "days" : "dagar", 50 | "weeks" : "vikur", 51 | "months" : "mánuðir", 52 | "years" : "ár" 53 | }, 54 | "nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"); 55 | -------------------------------------------------------------------------------- /l10n/is.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Vistað", 3 | "N/A" : "Ekki tiltækt", 4 | "Video" : "Myndskeið", 5 | "Unknown field" : "Óþekkt gagnasvið", 6 | "Undefined field" : "Óskilgreint gagnasvið", 7 | "Uploaded" : "Hlaðið inn", 8 | "Ratio" : "Hlutfall", 9 | "Removed" : "Fjarlægt", 10 | "Seeding" : "Sái", 11 | "Select a file.torrent" : "Veldu skráarheiti.torrent", 12 | "Paused" : "Í bið", 13 | "Active" : "Virkt", 14 | "No Torrent Files" : "Engar torrent-skrár", 15 | "Upload" : "Senda inn", 16 | " using %s" : " notar %s", 17 | "FILENAME" : "SKRÁARHEITI", 18 | "PROTOCOL" : "SAMSKIPTAMÁTI", 19 | "INFORMATION" : "UPPLÝSINGAR", 20 | "SPEED" : "HRAÐI", 21 | "Loading" : "Hleð inn", 22 | "Options" : "Valkostir", 23 | "Username" : "Notandanafn", 24 | "Password" : "Lykilorð", 25 | "HTTP Referer" : "HTTP tilvísun (referer)", 26 | "Referer" : "Kennistrengur", 27 | "Filename" : "Skráarheiti", 28 | "Passive Mode" : "Hlutlaus (passífur) hamur", 29 | "Force IPv4 ?" : "Þvinga IPv4 ?", 30 | "Remove torrent file ?" : "Fjarlægja torrent-skrá ?", 31 | "STATUS" : "STAÐA", 32 | "All Downloads" : "Öll niðurhöl", 33 | "Proxy settings" : "Stillingar milliþjóns (proxy)", 34 | "Proxy Port" : "Gátt milliþjóns", 35 | "Proxy User" : "Notandi milliþjóns", 36 | "Proxy Password" : "Lykilorð milliþjóns", 37 | "No" : "Nei", 38 | "Yes" : "Já", 39 | "General settings" : "Almennar stillingar", 40 | "Available protocols" : "Tiltækar samskiptareglur", 41 | "Max download speed ?" : "Mesti niðurhalshraði ?", 42 | "Default Downloads Folder" : "Sjálfgefin niðurhalsmappa", 43 | "Save" : "Vista", 44 | "unlimited" : "ótakmarkað", 45 | "minutes" : "mínútur", 46 | "hours" : "klukkustundir", 47 | "days" : "dagar", 48 | "weeks" : "vikur", 49 | "months" : "mánuðir", 50 | "years" : "ár" 51 | },"pluralForm" :"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);" 52 | } -------------------------------------------------------------------------------- /l10n/ka.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Saved", 5 | "Uploaded" : "Uploaded", 6 | "Active" : "Active", 7 | "Upload" : "Upload", 8 | "Loading" : "Loading", 9 | "Username" : "Username", 10 | "Password" : "პაროლი", 11 | "Filename" : "Filename", 12 | "No" : "No", 13 | "Yes" : "Yes", 14 | "General settings" : "General settings", 15 | "Save" : "Save", 16 | "minutes" : "minutes", 17 | "hours" : "hours", 18 | "days" : "days", 19 | "weeks" : "weeks", 20 | "months" : "months", 21 | "years" : "years" 22 | }, 23 | "nplurals=2; plural=(n!=1);"); 24 | -------------------------------------------------------------------------------- /l10n/ka.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Saved", 3 | "Uploaded" : "Uploaded", 4 | "Active" : "Active", 5 | "Upload" : "Upload", 6 | "Loading" : "Loading", 7 | "Username" : "Username", 8 | "Password" : "პაროლი", 9 | "Filename" : "Filename", 10 | "No" : "No", 11 | "Yes" : "Yes", 12 | "General settings" : "General settings", 13 | "Save" : "Save", 14 | "minutes" : "minutes", 15 | "hours" : "hours", 16 | "days" : "days", 17 | "weeks" : "weeks", 18 | "months" : "months", 19 | "years" : "years" 20 | },"pluralForm" :"nplurals=2; plural=(n!=1);" 21 | } -------------------------------------------------------------------------------- /l10n/ka_GE.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "შენახულია", 5 | "Video" : "ვიდეო", 6 | "Uploaded" : "აიტვირთა", 7 | "Paused" : "დაპაუზებულია", 8 | "Upload" : "ატვირთვა", 9 | "Loading" : "იტვირთება", 10 | "Username" : "მომხმარებელი", 11 | "Password" : "პაროლი", 12 | "Filename" : "ფაილის სახელი", 13 | "No" : "არა", 14 | "Yes" : "კი", 15 | "General settings" : "მთავარი პარამეტრები", 16 | "Save" : "შენახვა", 17 | "minutes" : "წუთი", 18 | "hours" : "საათი", 19 | "days" : "დღე", 20 | "weeks" : "კვირა" 21 | }, 22 | "nplurals=2; plural=(n!=1);"); 23 | -------------------------------------------------------------------------------- /l10n/ka_GE.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "შენახულია", 3 | "Video" : "ვიდეო", 4 | "Uploaded" : "აიტვირთა", 5 | "Paused" : "დაპაუზებულია", 6 | "Upload" : "ატვირთვა", 7 | "Loading" : "იტვირთება", 8 | "Username" : "მომხმარებელი", 9 | "Password" : "პაროლი", 10 | "Filename" : "ფაილის სახელი", 11 | "No" : "არა", 12 | "Yes" : "კი", 13 | "General settings" : "მთავარი პარამეტრები", 14 | "Save" : "შენახვა", 15 | "minutes" : "წუთი", 16 | "hours" : "საათი", 17 | "days" : "დღე", 18 | "weeks" : "კვირა" 19 | },"pluralForm" :"nplurals=2; plural=(n!=1);" 20 | } -------------------------------------------------------------------------------- /l10n/kab.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Video" : "Tavidyut", 5 | "Upload" : "Sili", 6 | "Options" : "Iɣewwaṛen", 7 | "Username" : "Isem n useqdac", 8 | "Password" : "Awal uffir", 9 | "Filename" : "Isem n ufaylu", 10 | "Proxy Port" : "Tawwurt n upṛuksi", 11 | "No" : "Uhu", 12 | "Yes" : "Ih", 13 | "Save" : "Sekles", 14 | "days" : "ussan" 15 | }, 16 | "nplurals=2; plural=(n != 1);"); 17 | -------------------------------------------------------------------------------- /l10n/kab.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Video" : "Tavidyut", 3 | "Upload" : "Sili", 4 | "Options" : "Iɣewwaṛen", 5 | "Username" : "Isem n useqdac", 6 | "Password" : "Awal uffir", 7 | "Filename" : "Isem n ufaylu", 8 | "Proxy Port" : "Tawwurt n upṛuksi", 9 | "No" : "Uhu", 10 | "Yes" : "Ih", 11 | "Save" : "Sekles", 12 | "days" : "ussan" 13 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 14 | } -------------------------------------------------------------------------------- /l10n/km.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "បាន​រក្សាទុក", 5 | "Video" : "Video", 6 | "Upload" : "ផ្ទុក​ឡើង", 7 | "Loading" : "Loading", 8 | "Options" : "ជម្រើស", 9 | "Username" : "ឈ្មោះ​អ្នកប្រើ", 10 | "Password" : "ពាក្យសម្ងាត់", 11 | "No" : "No", 12 | "Yes" : "Yes", 13 | "Save" : "រក្សាទុក" 14 | }, 15 | "nplurals=1; plural=0;"); 16 | -------------------------------------------------------------------------------- /l10n/km.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "បាន​រក្សាទុក", 3 | "Video" : "Video", 4 | "Upload" : "ផ្ទុក​ឡើង", 5 | "Loading" : "Loading", 6 | "Options" : "ជម្រើស", 7 | "Username" : "ឈ្មោះ​អ្នកប្រើ", 8 | "Password" : "ពាក្យសម្ងាត់", 9 | "No" : "No", 10 | "Yes" : "Yes", 11 | "Save" : "រក្សាទុក" 12 | },"pluralForm" :"nplurals=1; plural=0;" 13 | } -------------------------------------------------------------------------------- /l10n/kn.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "ಉಳಿಸಿದ", 5 | "Video" : "Video", 6 | "Upload" : "ವರ್ಗಾಯಿಸಿ", 7 | "Loading" : "Loading", 8 | "Username" : "ಬಳಕೆಯ ಹೆಸರು", 9 | "Password" : "ಗುಪ್ತ ಪದ", 10 | "No" : "No", 11 | "Yes" : "Yes", 12 | "Save" : "ಉಳಿಸಿ", 13 | "days" : "ದಿನಗಳು" 14 | }, 15 | "nplurals=2; plural=(n > 1);"); 16 | -------------------------------------------------------------------------------- /l10n/kn.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "ಉಳಿಸಿದ", 3 | "Video" : "Video", 4 | "Upload" : "ವರ್ಗಾಯಿಸಿ", 5 | "Loading" : "Loading", 6 | "Username" : "ಬಳಕೆಯ ಹೆಸರು", 7 | "Password" : "ಗುಪ್ತ ಪದ", 8 | "No" : "No", 9 | "Yes" : "Yes", 10 | "Save" : "ಉಳಿಸಿ", 11 | "days" : "ದಿನಗಳು" 12 | },"pluralForm" :"nplurals=2; plural=(n > 1);" 13 | } -------------------------------------------------------------------------------- /l10n/ko.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Unable to find YouTube-DL binary" : "YouTube-DL 바이너리를 찾을 수 없습니다.", 5 | "Invalid proxy address URL" : "잘못된 프록시 주소 URL", 6 | "Proxy port should be a numeric value" : "프록시 포트는 숫자 값이어야 합니다.", 7 | "Proxy port should be a value from 1 to 65536" : "프록시 포트는 1에서부터 65536 사이의 값이어야 합니다.", 8 | "Invalid Aria address URL" : "잘못된 Aria 주소 URL", 9 | "Aria port should be a numeric value" : "Aria 포트는 숫자 값이어야 합니다.", 10 | "Aria port should be a value from 1 to 65536" : "Aria 포트는 1에서부터 65536 사이의 값이어야 합니다.", 11 | "Max download speed setting should be a numeric value" : "최대 다운로드 속도 설정은 숫자 값이어야 합니다.", 12 | "BitTorrent protocol max upload speed setting should be a numeric value" : "BitTorrent 프로토콜 최대 업로드 속도 설정은 숫자값이어야 합니다.", 13 | "Saved" : "저장됨", 14 | "You are not allowed to use the BitTorrent protocol" : "당신은 BitTorrent 프로토콜을 사용할 권한이 없습니다.", 15 | "Download started" : "다운로드 시작됨", 16 | "Returned GID is null ! Is Aria2c running as a daemon ?" : "반환된 GID가 없습니다! Aria2c가 daemon으로 실행 중입니까?", 17 | "Please check the URL or filepath you've just provided" : "당신이 방금 제공한 URL혹은 파일 통로를 체크해주시기 바랍니다.", 18 | "Error while uploading torrent file" : "토렌트 파일 업로드 중 발생한 오류", 19 | "You are not allowed to use the FTP protocol" : "당신은 FTP 프로토콜을 사용할 권한이 없습니다.", 20 | "Please check the URL you've just provided" : "당신이 방금 제공한 URL을 체크해주시기 바랍니다.", 21 | "You are not allowed to use the HTTP protocol" : "당신은 HTTP 프로토콜을 사용할 권한이 없습니다.", 22 | "Video" : "영상", 23 | "The folder doesn't exist. It has been created." : "폴더가 존재하지 않습니다. 생성되었습니다.", 24 | "Unknown field" : "알 수 없는 필드", 25 | "Undefined field" : "정의되지 않은 필드", 26 | "Uploaded" : "업로드 완료", 27 | "Removed" : "제거됨", 28 | "Seeding" : "시딩중", 29 | "Returned status is null ! Is Aria2c running as a daemon ?" : "반환된 상태가 없습니다! Aria2c가 daemon으로 실행중입니까?", 30 | "Unable to find download status file %s" : "다운로드 상태 파일 %s을 찾을 수 없습니다.", 31 | "The download has been paused" : "다운로드가 일시 정지됐습니다.", 32 | "An error occurred while pausing the download" : "다운로드를 일시 정지하는 중에 오류가 발생했습니다.", 33 | "Bad GID" : "잘못된 GID", 34 | "The download has been unpaused" : "다운로드의 일시 정지가 해제됐습니다.", 35 | "An error occurred while unpausing the download" : "다운로드의 일시 정지를 해제하는 중에 오류가 발생했습니다.", 36 | "The download has been cleaned" : "다운로드가 청소됐습니다.", 37 | "All downloads have been cleaned" : "모든 다운로드가 청소됐습니다.", 38 | "No GIDS in the download queue" : "다운로드 큐 안에 GID 없음", 39 | "The download has been removed" : "다운로드가 제거됐습니다.", 40 | "An error occurred while removing the download" : "다운로드를 제거하는 중에 오류가 발생했습니다.", 41 | "All downloads have been removed" : "모든 다운로드가 제거됐습니다.", 42 | "The download has been totally removed" : "다운로드가 완전히 제거됐습니다.", 43 | "You are not allowed to use the YouTube protocol" : "당신은 YouTube 프로토콜을 사용하도록 허가 받지 않았습니다.", 44 | "Unable to retrieve true YouTube audio URL" : "YouTube 오디오 URL을 검색할 수 없습니다.", 45 | "Unable to retrieve true YouTube video URL" : "YouTube 영상 URL을 검색할 수 없습니다.", 46 | "Invalid URL. Please check the address of the file…" : "잘못된 URL. 파일의 주소를 확인해 주십시오...", 47 | "Select a file.torrent" : "file.torrent를 선택하십시오", 48 | "Unable to find the GID for this download…" : "이 다운로드를 위한 GID를 찾을 수 없습니다.", 49 | "No downloads in the queue…" : "큐에 다운로드가 존재하지 않습니다.", 50 | "Paused" : "일시 정지", 51 | "Active" : "활성화", 52 | "Upload" : "업로드", 53 | "Easy to use download manager for Nextcloud" : "사용하기 쉬운 Nextcloud용 다운로드 관리자", 54 | "Easy to use download manager using Curl/Aria2 and youtube-dl to allow downloading HTTP(S), FTP(S), YouTube videos and BitTorrent files. For more information on how to install, please go to https://github.com/e-alfred/ocdownloader/blob/master/README.md" : "HTTP(S), FTP(S), YouTube 영상과 BitTorrent 파일의 다운로드를 허가하기 위해 Curl/Aria2와 youtube-dl을 사용하는 다운로드 관리자는 사용하기 쉽습니다. 설치 방법을 위한 더 많은 정보를 위해, https://github.com/e-alfred/ocdownloader/blob/master/README.md로 방문해주시기 바랍니다", 55 | "FILENAME" : "파일명", 56 | "SPEED" : "속도", 57 | "Loading" : "불러오는 중", 58 | "Add Download" : "다운로드 추가", 59 | "New Magnet/HTTP download" : "새로운 Magnet/HTTP 다운로드", 60 | "New HTTP download" : "새로운 HTTP 다운로드", 61 | "Launch Magnet/HTTP download" : "Magnet/HTTP 다운로드 실행", 62 | "Launch HTTP download" : "HTTP 다운로드 실행", 63 | "Magnet/HTTP link to download" : "다운로드를 위한 Magnet/HTTP 링크", 64 | "HTTP link to download" : "다운로드를 위한 HTTP 링크", 65 | "Options" : "옵션들", 66 | "Basic Auth User" : "기본 Auth 사용자", 67 | "Username" : "사용자 이름", 68 | "Basic Auth Password" : "기본 Auth 암호", 69 | "Password" : "암호", 70 | "Filename" : "파일 이름", 71 | "New YouTube download" : "새로운 YouTube 다운로드", 72 | "Launch YouTube Download" : "유투브 다운로드 실행", 73 | "YouTube Video URL to download" : "다운로드를 위한 YouTube 영상 URL", 74 | "Only Extract audio ?" : " 오디오만 추출하시겠습니까?", 75 | "(No post-processing, just extract the best audio quality)" : "(후처리 없음, 그냥 최고 퀄리티의 오디오 추출)", 76 | "Launch BitTorrent Download" : "비트토런트 다운로드 실행", 77 | "(Default : List torrent files in the folder /Downloads/Files/Torrents, go to the Personal Settings panel)" : "(기본: /Downloads/Files/Torrents 폴더에 토렌트 파일을 리스트합니다, 개인 설정 제어반으로 가주십시오.)", 78 | "Remove torrent file ?" : "토런트 파일을 삭제할까요?", 79 | "STATUS" : "상태", 80 | "All Downloads" : "모든 다운로드", 81 | "Complete Downloads" : "완전한 다운로드", 82 | "Waiting Downloads" : "대기 중인 다운로드", 83 | "Stopped Downloads" : "중단된 다운로드", 84 | "Removed Downloads" : "제거된 다운로드", 85 | "Leave fields blank to reset a setting value" : "설정 값을 리셋하기 위해서 필드를 공백으로 남겨둡니다.", 86 | "Proxy settings" : "프록시 설정", 87 | "Proxy Address" : "프록시 주소", 88 | "Proxy Port" : "프록시 포트", 89 | "If no authentication is required by your proxy, leave the following fields blank" : "만약 당신의 프록시가 인증을 요구하지 않는다면, 이하의 필드를 공백으로 남겨두세요.", 90 | "Proxy User" : "프록시 사용자", 91 | "Proxy Password" : "프록시 암호", 92 | "Only use proxy settings with YouTube-DL?" : "YouTube-DL에서 오직 프록시 설정 만을 사용할 것입니까?", 93 | "No" : "아니요", 94 | "Yes" : "예", 95 | "General settings" : "일반 설정", 96 | "WARNING !! Switching from ARIA2 to another downloader engine will remove all current downloads from ARIA2" : "경고!! ARIA2를 다른 다운로드 엔진으로 바꿀 경우 현재 ARIA2를 통해 받는 모든 다운로드가 제거됩니다.", 97 | "Which downloader do you want to use?" : "어떤 다운로더를 사용하시겠습니까?", 98 | "Available protocols" : "가능한 프로토콜", 99 | "Max download speed ?" : "최대 다운로드 속도는?", 100 | "BitTorrent protocol settings - Max upload speed" : "비트토런트 프로토콜 설정 - 업로드 최대속도", 101 | "Allow protocols for users (except for members of the admin group)" : "사용자에게 프로토콜 허용 (관리자 그룹의 멤버는 제외)", 102 | "Save" : "저장", 103 | "minutes" : "분", 104 | "hours" : "시간", 105 | "days" : "일", 106 | "weeks" : "주", 107 | "months" : "개월", 108 | "years" : "년" 109 | }, 110 | "nplurals=1; plural=0;"); 111 | -------------------------------------------------------------------------------- /l10n/ko.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Unable to find YouTube-DL binary" : "YouTube-DL 바이너리를 찾을 수 없습니다.", 3 | "Invalid proxy address URL" : "잘못된 프록시 주소 URL", 4 | "Proxy port should be a numeric value" : "프록시 포트는 숫자 값이어야 합니다.", 5 | "Proxy port should be a value from 1 to 65536" : "프록시 포트는 1에서부터 65536 사이의 값이어야 합니다.", 6 | "Invalid Aria address URL" : "잘못된 Aria 주소 URL", 7 | "Aria port should be a numeric value" : "Aria 포트는 숫자 값이어야 합니다.", 8 | "Aria port should be a value from 1 to 65536" : "Aria 포트는 1에서부터 65536 사이의 값이어야 합니다.", 9 | "Max download speed setting should be a numeric value" : "최대 다운로드 속도 설정은 숫자 값이어야 합니다.", 10 | "BitTorrent protocol max upload speed setting should be a numeric value" : "BitTorrent 프로토콜 최대 업로드 속도 설정은 숫자값이어야 합니다.", 11 | "Saved" : "저장됨", 12 | "You are not allowed to use the BitTorrent protocol" : "당신은 BitTorrent 프로토콜을 사용할 권한이 없습니다.", 13 | "Download started" : "다운로드 시작됨", 14 | "Returned GID is null ! Is Aria2c running as a daemon ?" : "반환된 GID가 없습니다! Aria2c가 daemon으로 실행 중입니까?", 15 | "Please check the URL or filepath you've just provided" : "당신이 방금 제공한 URL혹은 파일 통로를 체크해주시기 바랍니다.", 16 | "Error while uploading torrent file" : "토렌트 파일 업로드 중 발생한 오류", 17 | "You are not allowed to use the FTP protocol" : "당신은 FTP 프로토콜을 사용할 권한이 없습니다.", 18 | "Please check the URL you've just provided" : "당신이 방금 제공한 URL을 체크해주시기 바랍니다.", 19 | "You are not allowed to use the HTTP protocol" : "당신은 HTTP 프로토콜을 사용할 권한이 없습니다.", 20 | "Video" : "영상", 21 | "The folder doesn't exist. It has been created." : "폴더가 존재하지 않습니다. 생성되었습니다.", 22 | "Unknown field" : "알 수 없는 필드", 23 | "Undefined field" : "정의되지 않은 필드", 24 | "Uploaded" : "업로드 완료", 25 | "Removed" : "제거됨", 26 | "Seeding" : "시딩중", 27 | "Returned status is null ! Is Aria2c running as a daemon ?" : "반환된 상태가 없습니다! Aria2c가 daemon으로 실행중입니까?", 28 | "Unable to find download status file %s" : "다운로드 상태 파일 %s을 찾을 수 없습니다.", 29 | "The download has been paused" : "다운로드가 일시 정지됐습니다.", 30 | "An error occurred while pausing the download" : "다운로드를 일시 정지하는 중에 오류가 발생했습니다.", 31 | "Bad GID" : "잘못된 GID", 32 | "The download has been unpaused" : "다운로드의 일시 정지가 해제됐습니다.", 33 | "An error occurred while unpausing the download" : "다운로드의 일시 정지를 해제하는 중에 오류가 발생했습니다.", 34 | "The download has been cleaned" : "다운로드가 청소됐습니다.", 35 | "All downloads have been cleaned" : "모든 다운로드가 청소됐습니다.", 36 | "No GIDS in the download queue" : "다운로드 큐 안에 GID 없음", 37 | "The download has been removed" : "다운로드가 제거됐습니다.", 38 | "An error occurred while removing the download" : "다운로드를 제거하는 중에 오류가 발생했습니다.", 39 | "All downloads have been removed" : "모든 다운로드가 제거됐습니다.", 40 | "The download has been totally removed" : "다운로드가 완전히 제거됐습니다.", 41 | "You are not allowed to use the YouTube protocol" : "당신은 YouTube 프로토콜을 사용하도록 허가 받지 않았습니다.", 42 | "Unable to retrieve true YouTube audio URL" : "YouTube 오디오 URL을 검색할 수 없습니다.", 43 | "Unable to retrieve true YouTube video URL" : "YouTube 영상 URL을 검색할 수 없습니다.", 44 | "Invalid URL. Please check the address of the file…" : "잘못된 URL. 파일의 주소를 확인해 주십시오...", 45 | "Select a file.torrent" : "file.torrent를 선택하십시오", 46 | "Unable to find the GID for this download…" : "이 다운로드를 위한 GID를 찾을 수 없습니다.", 47 | "No downloads in the queue…" : "큐에 다운로드가 존재하지 않습니다.", 48 | "Paused" : "일시 정지", 49 | "Active" : "활성화", 50 | "Upload" : "업로드", 51 | "Easy to use download manager for Nextcloud" : "사용하기 쉬운 Nextcloud용 다운로드 관리자", 52 | "Easy to use download manager using Curl/Aria2 and youtube-dl to allow downloading HTTP(S), FTP(S), YouTube videos and BitTorrent files. For more information on how to install, please go to https://github.com/e-alfred/ocdownloader/blob/master/README.md" : "HTTP(S), FTP(S), YouTube 영상과 BitTorrent 파일의 다운로드를 허가하기 위해 Curl/Aria2와 youtube-dl을 사용하는 다운로드 관리자는 사용하기 쉽습니다. 설치 방법을 위한 더 많은 정보를 위해, https://github.com/e-alfred/ocdownloader/blob/master/README.md로 방문해주시기 바랍니다", 53 | "FILENAME" : "파일명", 54 | "SPEED" : "속도", 55 | "Loading" : "불러오는 중", 56 | "Add Download" : "다운로드 추가", 57 | "New Magnet/HTTP download" : "새로운 Magnet/HTTP 다운로드", 58 | "New HTTP download" : "새로운 HTTP 다운로드", 59 | "Launch Magnet/HTTP download" : "Magnet/HTTP 다운로드 실행", 60 | "Launch HTTP download" : "HTTP 다운로드 실행", 61 | "Magnet/HTTP link to download" : "다운로드를 위한 Magnet/HTTP 링크", 62 | "HTTP link to download" : "다운로드를 위한 HTTP 링크", 63 | "Options" : "옵션들", 64 | "Basic Auth User" : "기본 Auth 사용자", 65 | "Username" : "사용자 이름", 66 | "Basic Auth Password" : "기본 Auth 암호", 67 | "Password" : "암호", 68 | "Filename" : "파일 이름", 69 | "New YouTube download" : "새로운 YouTube 다운로드", 70 | "Launch YouTube Download" : "유투브 다운로드 실행", 71 | "YouTube Video URL to download" : "다운로드를 위한 YouTube 영상 URL", 72 | "Only Extract audio ?" : " 오디오만 추출하시겠습니까?", 73 | "(No post-processing, just extract the best audio quality)" : "(후처리 없음, 그냥 최고 퀄리티의 오디오 추출)", 74 | "Launch BitTorrent Download" : "비트토런트 다운로드 실행", 75 | "(Default : List torrent files in the folder /Downloads/Files/Torrents, go to the Personal Settings panel)" : "(기본: /Downloads/Files/Torrents 폴더에 토렌트 파일을 리스트합니다, 개인 설정 제어반으로 가주십시오.)", 76 | "Remove torrent file ?" : "토런트 파일을 삭제할까요?", 77 | "STATUS" : "상태", 78 | "All Downloads" : "모든 다운로드", 79 | "Complete Downloads" : "완전한 다운로드", 80 | "Waiting Downloads" : "대기 중인 다운로드", 81 | "Stopped Downloads" : "중단된 다운로드", 82 | "Removed Downloads" : "제거된 다운로드", 83 | "Leave fields blank to reset a setting value" : "설정 값을 리셋하기 위해서 필드를 공백으로 남겨둡니다.", 84 | "Proxy settings" : "프록시 설정", 85 | "Proxy Address" : "프록시 주소", 86 | "Proxy Port" : "프록시 포트", 87 | "If no authentication is required by your proxy, leave the following fields blank" : "만약 당신의 프록시가 인증을 요구하지 않는다면, 이하의 필드를 공백으로 남겨두세요.", 88 | "Proxy User" : "프록시 사용자", 89 | "Proxy Password" : "프록시 암호", 90 | "Only use proxy settings with YouTube-DL?" : "YouTube-DL에서 오직 프록시 설정 만을 사용할 것입니까?", 91 | "No" : "아니요", 92 | "Yes" : "예", 93 | "General settings" : "일반 설정", 94 | "WARNING !! Switching from ARIA2 to another downloader engine will remove all current downloads from ARIA2" : "경고!! ARIA2를 다른 다운로드 엔진으로 바꿀 경우 현재 ARIA2를 통해 받는 모든 다운로드가 제거됩니다.", 95 | "Which downloader do you want to use?" : "어떤 다운로더를 사용하시겠습니까?", 96 | "Available protocols" : "가능한 프로토콜", 97 | "Max download speed ?" : "최대 다운로드 속도는?", 98 | "BitTorrent protocol settings - Max upload speed" : "비트토런트 프로토콜 설정 - 업로드 최대속도", 99 | "Allow protocols for users (except for members of the admin group)" : "사용자에게 프로토콜 허용 (관리자 그룹의 멤버는 제외)", 100 | "Save" : "저장", 101 | "minutes" : "분", 102 | "hours" : "시간", 103 | "days" : "일", 104 | "weeks" : "주", 105 | "months" : "개월", 106 | "years" : "년" 107 | },"pluralForm" :"nplurals=1; plural=0;" 108 | } -------------------------------------------------------------------------------- /l10n/lb.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Gespäichert", 5 | "Video" : "Video", 6 | "Uploaded" : "Eropgelueden", 7 | "Paused" : "Gepaust", 8 | "Upload" : "Eroplueden", 9 | "Loading" : "Loading", 10 | "Username" : "Benotzernumm", 11 | "Password" : "Passwuert", 12 | "No" : "No", 13 | "Yes" : "Yes", 14 | "Save" : "Späicheren", 15 | "minutes" : "Minutten", 16 | "hours" : "Stonnen", 17 | "days" : "Deeg", 18 | "weeks" : "Wochen" 19 | }, 20 | "nplurals=2; plural=(n != 1);"); 21 | -------------------------------------------------------------------------------- /l10n/lb.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Gespäichert", 3 | "Video" : "Video", 4 | "Uploaded" : "Eropgelueden", 5 | "Paused" : "Gepaust", 6 | "Upload" : "Eroplueden", 7 | "Loading" : "Loading", 8 | "Username" : "Benotzernumm", 9 | "Password" : "Passwuert", 10 | "No" : "No", 11 | "Yes" : "Yes", 12 | "Save" : "Späicheren", 13 | "minutes" : "Minutten", 14 | "hours" : "Stonnen", 15 | "days" : "Deeg", 16 | "weeks" : "Wochen" 17 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 18 | } -------------------------------------------------------------------------------- /l10n/lo.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Video" : "ວີດີໂອ", 5 | "Uploaded" : "ອັບໂຫຼດແລ້ວ", 6 | "Upload" : "ອັບໂຫຼດ", 7 | "Loading" : "ການໂຫຼດ", 8 | "Username" : "ຊື່ຜູ້ໃຊ້", 9 | "Password" : "ລະຫັດຜ່ານ", 10 | "Filename" : "ຊື່ຟາຍ", 11 | "No" : "ບໍ່", 12 | "Yes" : "ແມ່ນແລ້ວ", 13 | "Save" : "ບັນທຶກ" 14 | }, 15 | "nplurals=1; plural=0;"); 16 | -------------------------------------------------------------------------------- /l10n/lo.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Video" : "ວີດີໂອ", 3 | "Uploaded" : "ອັບໂຫຼດແລ້ວ", 4 | "Upload" : "ອັບໂຫຼດ", 5 | "Loading" : "ການໂຫຼດ", 6 | "Username" : "ຊື່ຜູ້ໃຊ້", 7 | "Password" : "ລະຫັດຜ່ານ", 8 | "Filename" : "ຊື່ຟາຍ", 9 | "No" : "ບໍ່", 10 | "Yes" : "ແມ່ນແລ້ວ", 11 | "Save" : "ບັນທຶກ" 12 | },"pluralForm" :"nplurals=1; plural=0;" 13 | } -------------------------------------------------------------------------------- /l10n/lt_LT.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Unable to find YouTube-DL binary" : "Nepavyko rasti YouTube-DL dvejetainės", 5 | "Invalid proxy address URL" : "Neteisingas įgaliotojo serverio adreso URL", 6 | "Proxy port should be a numeric value" : "Įgaliotojo serverio prievadas turėtų būti skaitmeninė reikšmė", 7 | "Proxy port should be a value from 1 to 65536" : "Įgaliotojo serverio prievadas turėtų būti reikšmė nuo 1 iki 65536", 8 | "Saved" : "Įrašyta", 9 | "You are not allowed to use the BitTorrent protocol" : "Jums nėra leidžiama naudoti „BitTorrent“ protokolą", 10 | "Download started" : "Atsiuntimas pradėtas", 11 | "Seeders" : "Skleidėjai", 12 | "Returned GID is null ! Is Aria2c running as a daemon ?" : "Grąžintas GID yra nulinis! Ar Aria2c veikia kaip tarnyba?", 13 | "Please check the URL or filepath you've just provided" : "Patikrinkite ką tik pateiktą URL ar failo kelią", 14 | "You are not allowed to use the FTP protocol" : "Jums nėra leidžiama naudoti FTP protokolą", 15 | "Please check the URL you've just provided" : "Patikrinkite ką tik pateiktą URL", 16 | "You are not allowed to use the HTTP protocol" : "Jums nėra leidžiama naudoti HTTP protokolą", 17 | "Video" : "Video", 18 | "The folder doesn't exist. It has been created." : "Aplanko nėra. Jis buvo sukurtas.", 19 | "Uploaded" : "Įkelta", 20 | "Ratio" : "Santykis", 21 | "Seeding" : "Skleidžiama", 22 | "Returned status is null ! Is Aria2c running as a daemon ?" : "Grąžinta būsena yra nulinė! Ar Aria2c veikia kaip tarnyba?", 23 | "The download has been paused" : "Atsiuntimas pristabdytas", 24 | "An error occurred while pausing the download" : "Klaida pristabdant atsiuntimą", 25 | "Bad GID" : "Blogas GID", 26 | "The download has been removed" : "Atsiuntimas pašalintas", 27 | "An error occurred while removing the download" : "Šalinant atsiuntimą, įvyko klaida", 28 | "All downloads have been removed" : "Visi atsiuntimai pašalinti", 29 | "The download has been totally removed" : "Atsiuntimas buvo visiškai pašalintas", 30 | "You are not allowed to use the YouTube protocol" : "Jums nėra leidžiama naudoti YouTube protokolą", 31 | "Invalid URL. Please check the address of the file…" : "Neteisingas URL. Patikrinkite failo adresą…", 32 | "Paused" : "Pristabdyti", 33 | "Active" : "Aktyvi", 34 | "Upload" : "Įkelti", 35 | "Active Downloads" : "Aktyvūs atsiuntimai", 36 | "PROTOCOL" : "PROTOKOLAS", 37 | "INFORMATION" : "INFORMACIJA", 38 | "SPEED" : "GREITIS", 39 | "Loading" : "Įkeliama", 40 | "Magnet/HTTP" : "Magnet/HTTP", 41 | "HTTP" : "HTTP", 42 | "Add Download" : "Pridėti atsiuntimą", 43 | "New Magnet/HTTP download" : "Naujas Magnet/HTTP atsiuntimas", 44 | "New HTTP download" : "Naujas HTTP atsiuntimas", 45 | "Options" : "Parinktys", 46 | "Username" : "Naudotojo vardas", 47 | "Password" : "Slaptažodis", 48 | "Filename" : "Failo pavadinimas", 49 | "New FTP download" : "Naujas FTP atsiuntimas", 50 | "FTP User" : "FTP naudotojas", 51 | "FTP Password" : "FTP slaptažodis", 52 | "Passive Mode" : "Pasyvi veiksena", 53 | "New YouTube download" : "Naujas YouTube atsiuntimas", 54 | "Launch YouTube Download" : "Paleisti YouTube atsiuntimą", 55 | "YouTube Video URL to download" : "Norimo atsisiųsti YouTube vaizdo įrašo URL", 56 | "Only Extract audio ?" : "Išskleisti tik garsą?", 57 | "(No post-processing, just extract the best audio quality)" : "(Jokio papildomojo apdorojimo, tiesiog išskleisti geriausią garso kokybę)", 58 | "New BitTorrent download" : "Naujas BitTorrent atsiuntimas", 59 | "Launch BitTorrent Download" : "Paleisti BitTorrent atsiuntimą", 60 | "Remove torrent file ?" : "Šalinti torrent failą?", 61 | "STATUS" : "BŪSENA", 62 | "All Downloads" : "Visi atsiuntimai", 63 | "Complete Downloads" : "Užbaigti atsiuntimai", 64 | "Waiting Downloads" : "Laukiantys atsiuntimai", 65 | "Stopped Downloads" : "Sustabdyti atsiuntimai", 66 | "Removed Downloads" : "Pašalinti atsiuntimai", 67 | "YouTube DL Binary Path" : "YouTube DL dvejetainės kelias", 68 | "Proxy settings" : "Įgaliotojo serverio nustatymai", 69 | "Proxy Address" : "Įgaliotojo serverio adresas", 70 | "Proxy Port" : "Įgaliotojo serverio prievadas", 71 | "Proxy User" : "Įgaliotojo serverio naudotojas", 72 | "Proxy Password" : "Įgaliotojo serverio slaptažodis", 73 | "No" : "Ne", 74 | "Yes" : "Taip", 75 | "General settings" : "Bendri nustatymai", 76 | "Available protocols" : "Prieinami protokolai", 77 | "ARIA2 Address" : "ARIA2 adresas", 78 | "ARIA2 Port" : "ARIA2 prievadas", 79 | "Allow HTTP/Magnet?" : "Leisti HTTP/Magnet?", 80 | "Allow FTP?" : "Leisti FTP?", 81 | "Allow YouTube?" : "Leisti YouTube?", 82 | "Allow BitTorrent?" : "Leisti BitTorrent?", 83 | "Default Downloads Folder" : "Numatytasis atsiuntimų aplankas", 84 | "Save" : "Įrašyti", 85 | "BitTorrent protocol settings - Ratio" : "BitTorrent protokolo nustatymai - Santykis", 86 | "BitTorrent protocol settings - Seed time" : "BitTorrent protokolo nustatymai - Skleidimo laikas", 87 | "minutes" : "minučių", 88 | "hours" : "valandų", 89 | "days" : "dienų", 90 | "weeks" : "savaičių", 91 | "months" : "mėnesių", 92 | "years" : "metų" 93 | }, 94 | "nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"); 95 | -------------------------------------------------------------------------------- /l10n/lt_LT.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Unable to find YouTube-DL binary" : "Nepavyko rasti YouTube-DL dvejetainės", 3 | "Invalid proxy address URL" : "Neteisingas įgaliotojo serverio adreso URL", 4 | "Proxy port should be a numeric value" : "Įgaliotojo serverio prievadas turėtų būti skaitmeninė reikšmė", 5 | "Proxy port should be a value from 1 to 65536" : "Įgaliotojo serverio prievadas turėtų būti reikšmė nuo 1 iki 65536", 6 | "Saved" : "Įrašyta", 7 | "You are not allowed to use the BitTorrent protocol" : "Jums nėra leidžiama naudoti „BitTorrent“ protokolą", 8 | "Download started" : "Atsiuntimas pradėtas", 9 | "Seeders" : "Skleidėjai", 10 | "Returned GID is null ! Is Aria2c running as a daemon ?" : "Grąžintas GID yra nulinis! Ar Aria2c veikia kaip tarnyba?", 11 | "Please check the URL or filepath you've just provided" : "Patikrinkite ką tik pateiktą URL ar failo kelią", 12 | "You are not allowed to use the FTP protocol" : "Jums nėra leidžiama naudoti FTP protokolą", 13 | "Please check the URL you've just provided" : "Patikrinkite ką tik pateiktą URL", 14 | "You are not allowed to use the HTTP protocol" : "Jums nėra leidžiama naudoti HTTP protokolą", 15 | "Video" : "Video", 16 | "The folder doesn't exist. It has been created." : "Aplanko nėra. Jis buvo sukurtas.", 17 | "Uploaded" : "Įkelta", 18 | "Ratio" : "Santykis", 19 | "Seeding" : "Skleidžiama", 20 | "Returned status is null ! Is Aria2c running as a daemon ?" : "Grąžinta būsena yra nulinė! Ar Aria2c veikia kaip tarnyba?", 21 | "The download has been paused" : "Atsiuntimas pristabdytas", 22 | "An error occurred while pausing the download" : "Klaida pristabdant atsiuntimą", 23 | "Bad GID" : "Blogas GID", 24 | "The download has been removed" : "Atsiuntimas pašalintas", 25 | "An error occurred while removing the download" : "Šalinant atsiuntimą, įvyko klaida", 26 | "All downloads have been removed" : "Visi atsiuntimai pašalinti", 27 | "The download has been totally removed" : "Atsiuntimas buvo visiškai pašalintas", 28 | "You are not allowed to use the YouTube protocol" : "Jums nėra leidžiama naudoti YouTube protokolą", 29 | "Invalid URL. Please check the address of the file…" : "Neteisingas URL. Patikrinkite failo adresą…", 30 | "Paused" : "Pristabdyti", 31 | "Active" : "Aktyvi", 32 | "Upload" : "Įkelti", 33 | "Active Downloads" : "Aktyvūs atsiuntimai", 34 | "PROTOCOL" : "PROTOKOLAS", 35 | "INFORMATION" : "INFORMACIJA", 36 | "SPEED" : "GREITIS", 37 | "Loading" : "Įkeliama", 38 | "Magnet/HTTP" : "Magnet/HTTP", 39 | "HTTP" : "HTTP", 40 | "Add Download" : "Pridėti atsiuntimą", 41 | "New Magnet/HTTP download" : "Naujas Magnet/HTTP atsiuntimas", 42 | "New HTTP download" : "Naujas HTTP atsiuntimas", 43 | "Options" : "Parinktys", 44 | "Username" : "Naudotojo vardas", 45 | "Password" : "Slaptažodis", 46 | "Filename" : "Failo pavadinimas", 47 | "New FTP download" : "Naujas FTP atsiuntimas", 48 | "FTP User" : "FTP naudotojas", 49 | "FTP Password" : "FTP slaptažodis", 50 | "Passive Mode" : "Pasyvi veiksena", 51 | "New YouTube download" : "Naujas YouTube atsiuntimas", 52 | "Launch YouTube Download" : "Paleisti YouTube atsiuntimą", 53 | "YouTube Video URL to download" : "Norimo atsisiųsti YouTube vaizdo įrašo URL", 54 | "Only Extract audio ?" : "Išskleisti tik garsą?", 55 | "(No post-processing, just extract the best audio quality)" : "(Jokio papildomojo apdorojimo, tiesiog išskleisti geriausią garso kokybę)", 56 | "New BitTorrent download" : "Naujas BitTorrent atsiuntimas", 57 | "Launch BitTorrent Download" : "Paleisti BitTorrent atsiuntimą", 58 | "Remove torrent file ?" : "Šalinti torrent failą?", 59 | "STATUS" : "BŪSENA", 60 | "All Downloads" : "Visi atsiuntimai", 61 | "Complete Downloads" : "Užbaigti atsiuntimai", 62 | "Waiting Downloads" : "Laukiantys atsiuntimai", 63 | "Stopped Downloads" : "Sustabdyti atsiuntimai", 64 | "Removed Downloads" : "Pašalinti atsiuntimai", 65 | "YouTube DL Binary Path" : "YouTube DL dvejetainės kelias", 66 | "Proxy settings" : "Įgaliotojo serverio nustatymai", 67 | "Proxy Address" : "Įgaliotojo serverio adresas", 68 | "Proxy Port" : "Įgaliotojo serverio prievadas", 69 | "Proxy User" : "Įgaliotojo serverio naudotojas", 70 | "Proxy Password" : "Įgaliotojo serverio slaptažodis", 71 | "No" : "Ne", 72 | "Yes" : "Taip", 73 | "General settings" : "Bendri nustatymai", 74 | "Available protocols" : "Prieinami protokolai", 75 | "ARIA2 Address" : "ARIA2 adresas", 76 | "ARIA2 Port" : "ARIA2 prievadas", 77 | "Allow HTTP/Magnet?" : "Leisti HTTP/Magnet?", 78 | "Allow FTP?" : "Leisti FTP?", 79 | "Allow YouTube?" : "Leisti YouTube?", 80 | "Allow BitTorrent?" : "Leisti BitTorrent?", 81 | "Default Downloads Folder" : "Numatytasis atsiuntimų aplankas", 82 | "Save" : "Įrašyti", 83 | "BitTorrent protocol settings - Ratio" : "BitTorrent protokolo nustatymai - Santykis", 84 | "BitTorrent protocol settings - Seed time" : "BitTorrent protokolo nustatymai - Skleidimo laikas", 85 | "minutes" : "minučių", 86 | "hours" : "valandų", 87 | "days" : "dienų", 88 | "weeks" : "savaičių", 89 | "months" : "mėnesių", 90 | "years" : "metų" 91 | },"pluralForm" :"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);" 92 | } -------------------------------------------------------------------------------- /l10n/lv.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Saglabāts", 5 | "Video" : "Video", 6 | "Uploaded" : "Augšupielādēts", 7 | "Paused" : "Apturēts", 8 | "Upload" : "Augšupielādēt", 9 | "Loading" : "Ielādē", 10 | "Username" : "Lietotājvārds", 11 | "Password" : "Parole", 12 | "Filename" : "Datnes nosaukums", 13 | "Proxy Port" : "Starpniekservera ports", 14 | "No" : "Nē", 15 | "Yes" : "Jā", 16 | "General settings" : "Vispārīgi iestatījumi", 17 | "Save" : "Saglabāt", 18 | "minutes" : "minūtes", 19 | "hours" : "stundas", 20 | "days" : "dienas", 21 | "weeks" : "nedēļas" 22 | }, 23 | "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"); 24 | -------------------------------------------------------------------------------- /l10n/lv.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Saglabāts", 3 | "Video" : "Video", 4 | "Uploaded" : "Augšupielādēts", 5 | "Paused" : "Apturēts", 6 | "Upload" : "Augšupielādēt", 7 | "Loading" : "Ielādē", 8 | "Username" : "Lietotājvārds", 9 | "Password" : "Parole", 10 | "Filename" : "Datnes nosaukums", 11 | "Proxy Port" : "Starpniekservera ports", 12 | "No" : "Nē", 13 | "Yes" : "Jā", 14 | "General settings" : "Vispārīgi iestatījumi", 15 | "Save" : "Saglabāt", 16 | "minutes" : "minūtes", 17 | "hours" : "stundas", 18 | "days" : "dienas", 19 | "weeks" : "nedēļas" 20 | },"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);" 21 | } -------------------------------------------------------------------------------- /l10n/mn.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Хадгалах", 5 | "Video" : "Video", 6 | "Uploaded" : "Байршуулсан", 7 | "Paused" : "Зогсоосон", 8 | "Upload" : "байршуулах", 9 | "Loading" : "Loading", 10 | "Username" : "Хэрэглэгчийн нэр", 11 | "Password" : "Нууц үг", 12 | "Filename" : "Файлын нэр", 13 | "No" : "Үгүй", 14 | "Yes" : "Тийм", 15 | "Save" : "Хадгалах", 16 | "hours" : "хугацаа", 17 | "days" : "өдрүүд" 18 | }, 19 | "nplurals=2; plural=(n != 1);"); 20 | -------------------------------------------------------------------------------- /l10n/mn.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Хадгалах", 3 | "Video" : "Video", 4 | "Uploaded" : "Байршуулсан", 5 | "Paused" : "Зогсоосон", 6 | "Upload" : "байршуулах", 7 | "Loading" : "Loading", 8 | "Username" : "Хэрэглэгчийн нэр", 9 | "Password" : "Нууц үг", 10 | "Filename" : "Файлын нэр", 11 | "No" : "Үгүй", 12 | "Yes" : "Тийм", 13 | "Save" : "Хадгалах", 14 | "hours" : "хугацаа", 15 | "days" : "өдрүүд" 16 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 17 | } -------------------------------------------------------------------------------- /l10n/ms_MY.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Disimpan", 5 | "Video" : "Video", 6 | "Upload" : "Muat naik", 7 | "Loading" : "Loading", 8 | "Username" : "Nama pengguna", 9 | "Password" : "Kata laluan", 10 | "No" : "No", 11 | "Yes" : "Yes", 12 | "Save" : "Simpan" 13 | }, 14 | "nplurals=1; plural=0;"); 15 | -------------------------------------------------------------------------------- /l10n/ms_MY.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Disimpan", 3 | "Video" : "Video", 4 | "Upload" : "Muat naik", 5 | "Loading" : "Loading", 6 | "Username" : "Nama pengguna", 7 | "Password" : "Kata laluan", 8 | "No" : "No", 9 | "Yes" : "Yes", 10 | "Save" : "Simpan" 11 | },"pluralForm" :"nplurals=1; plural=0;" 12 | } -------------------------------------------------------------------------------- /l10n/nn_NO.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Lagra", 5 | "Video" : "Video", 6 | "Upload" : "Last opp", 7 | "Loading" : "Loading", 8 | "Username" : "Brukarnamn", 9 | "Password" : "Passord", 10 | "No" : "Nei", 11 | "Yes" : "Ja", 12 | "Save" : "Lagre", 13 | "minutes" : "minutt", 14 | "hours" : "timar", 15 | "days" : "dagar" 16 | }, 17 | "nplurals=2; plural=(n != 1);"); 18 | -------------------------------------------------------------------------------- /l10n/nn_NO.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Lagra", 3 | "Video" : "Video", 4 | "Upload" : "Last opp", 5 | "Loading" : "Loading", 6 | "Username" : "Brukarnamn", 7 | "Password" : "Passord", 8 | "No" : "Nei", 9 | "Yes" : "Ja", 10 | "Save" : "Lagre", 11 | "minutes" : "minutt", 12 | "hours" : "timar", 13 | "days" : "dagar" 14 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 15 | } -------------------------------------------------------------------------------- /l10n/oc.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Enregistrat", 5 | "Video" : "Video", 6 | "Uploaded" : "Mandat", 7 | "The download has been paused" : "Lo telecargament es estat mes en pausa", 8 | "The download has been unpaused" : "Lo telecargament a représ", 9 | "Paused" : "En pausa", 10 | "Active" : "Activa", 11 | "Upload" : "Cargament", 12 | "Loading" : "Loading", 13 | "Options" : "Opcions", 14 | "Username" : "Nom d'utilizaire", 15 | "Password" : "Senhal", 16 | "Filename" : "Nom de fichièr", 17 | "FTP Password" : "Senhal FTP", 18 | "Proxy settings" : "Paramètres Proxy", 19 | "Proxy Password" : "Senhal proxy", 20 | "No" : "No", 21 | "Yes" : "Yes", 22 | "General settings" : "Paramètres generals", 23 | "Save" : "Salvar", 24 | "minutes" : "minutas", 25 | "hours" : "oras", 26 | "days" : "jorns", 27 | "weeks" : "setmanas", 28 | "months" : "mese", 29 | "years" : "annadas" 30 | }, 31 | "nplurals=2; plural=(n > 1);"); 32 | -------------------------------------------------------------------------------- /l10n/oc.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Enregistrat", 3 | "Video" : "Video", 4 | "Uploaded" : "Mandat", 5 | "The download has been paused" : "Lo telecargament es estat mes en pausa", 6 | "The download has been unpaused" : "Lo telecargament a représ", 7 | "Paused" : "En pausa", 8 | "Active" : "Activa", 9 | "Upload" : "Cargament", 10 | "Loading" : "Loading", 11 | "Options" : "Opcions", 12 | "Username" : "Nom d'utilizaire", 13 | "Password" : "Senhal", 14 | "Filename" : "Nom de fichièr", 15 | "FTP Password" : "Senhal FTP", 16 | "Proxy settings" : "Paramètres Proxy", 17 | "Proxy Password" : "Senhal proxy", 18 | "No" : "No", 19 | "Yes" : "Yes", 20 | "General settings" : "Paramètres generals", 21 | "Save" : "Salvar", 22 | "minutes" : "minutas", 23 | "hours" : "oras", 24 | "days" : "jorns", 25 | "weeks" : "setmanas", 26 | "months" : "mese", 27 | "years" : "annadas" 28 | },"pluralForm" :"nplurals=2; plural=(n > 1);" 29 | } -------------------------------------------------------------------------------- /l10n/pt_PT.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Guardado", 5 | "Download started" : "Transferência iniciada", 6 | "Video" : "Vídeo", 7 | "Uploaded" : "Enviado", 8 | "The download has been paused" : "A transferência foi pausada", 9 | "The download has been unpaused" : "A transferência foi retomada", 10 | "The download has been cleaned" : "A transferência foi limpa", 11 | "All downloads have been cleaned" : "Foram limpas todas as transferências", 12 | "The download has been removed" : "A transferência foi removida", 13 | "All downloads have been removed" : "Foram removidas todas as transferências", 14 | "Paused" : "Em pausa", 15 | "Upload" : "Carregar", 16 | "ocDownloader" : "ocDownloader", 17 | "Active Downloads" : "Transferências Ativas", 18 | "FILENAME" : "FILENAME", 19 | "Loading" : "A carregar", 20 | "Add Download" : "Adicionar Transferência", 21 | "New HTTP download" : "Nova transferência de HTTP", 22 | "Options" : "Opções", 23 | "Username" : "Nome de utilizador", 24 | "Password" : "Palavra-passe", 25 | "Filename" : "Nome do ficheiro", 26 | "New FTP download" : "Nova transferência de FTP", 27 | "Launch FTP Download" : "Iniciar transferência de FTP", 28 | "FTP URL to download" : "URL de FTP para transferir", 29 | "New YouTube download" : "Nova transferência do YouTube", 30 | "Launch YouTube Download" : "Iniciar transferência do YouTube", 31 | "YouTube Video URL to download" : "URL do Vídeo do YouTube para transferir", 32 | "New BitTorrent download" : "Nova transferência do BitTorrent", 33 | "Launch BitTorrent Download" : "Iniciar transferência do BitTorrent", 34 | "All Downloads" : "Todas as Transferências", 35 | "Complete Downloads" : "Transferências Completas", 36 | "Waiting Downloads" : "Transferências em Espera", 37 | "Stopped Downloads" : "Transferências Paradas", 38 | "Removed Downloads" : "Transferências Removidas", 39 | "Proxy Port" : "Porta do Proxy", 40 | "No" : "Não", 41 | "Yes" : "Sim", 42 | "General settings" : "Definições Gerais", 43 | "Max download speed ?" : "Velocidade máxima de transferência?", 44 | "Default Downloads Folder" : "Pasta de Transferências Predefinida", 45 | "Save" : "Guardar", 46 | "minutes" : "minutos", 47 | "hours" : "horas", 48 | "days" : "dias", 49 | "weeks" : "semanas", 50 | "months" : "meses", 51 | "years" : "anos" 52 | }, 53 | "nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 54 | -------------------------------------------------------------------------------- /l10n/pt_PT.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Guardado", 3 | "Download started" : "Transferência iniciada", 4 | "Video" : "Vídeo", 5 | "Uploaded" : "Enviado", 6 | "The download has been paused" : "A transferência foi pausada", 7 | "The download has been unpaused" : "A transferência foi retomada", 8 | "The download has been cleaned" : "A transferência foi limpa", 9 | "All downloads have been cleaned" : "Foram limpas todas as transferências", 10 | "The download has been removed" : "A transferência foi removida", 11 | "All downloads have been removed" : "Foram removidas todas as transferências", 12 | "Paused" : "Em pausa", 13 | "Upload" : "Carregar", 14 | "ocDownloader" : "ocDownloader", 15 | "Active Downloads" : "Transferências Ativas", 16 | "FILENAME" : "FILENAME", 17 | "Loading" : "A carregar", 18 | "Add Download" : "Adicionar Transferência", 19 | "New HTTP download" : "Nova transferência de HTTP", 20 | "Options" : "Opções", 21 | "Username" : "Nome de utilizador", 22 | "Password" : "Palavra-passe", 23 | "Filename" : "Nome do ficheiro", 24 | "New FTP download" : "Nova transferência de FTP", 25 | "Launch FTP Download" : "Iniciar transferência de FTP", 26 | "FTP URL to download" : "URL de FTP para transferir", 27 | "New YouTube download" : "Nova transferência do YouTube", 28 | "Launch YouTube Download" : "Iniciar transferência do YouTube", 29 | "YouTube Video URL to download" : "URL do Vídeo do YouTube para transferir", 30 | "New BitTorrent download" : "Nova transferência do BitTorrent", 31 | "Launch BitTorrent Download" : "Iniciar transferência do BitTorrent", 32 | "All Downloads" : "Todas as Transferências", 33 | "Complete Downloads" : "Transferências Completas", 34 | "Waiting Downloads" : "Transferências em Espera", 35 | "Stopped Downloads" : "Transferências Paradas", 36 | "Removed Downloads" : "Transferências Removidas", 37 | "Proxy Port" : "Porta do Proxy", 38 | "No" : "Não", 39 | "Yes" : "Sim", 40 | "General settings" : "Definições Gerais", 41 | "Max download speed ?" : "Velocidade máxima de transferência?", 42 | "Default Downloads Folder" : "Pasta de Transferências Predefinida", 43 | "Save" : "Guardar", 44 | "minutes" : "minutos", 45 | "hours" : "horas", 46 | "days" : "dias", 47 | "weeks" : "semanas", 48 | "months" : "meses", 49 | "years" : "anos" 50 | },"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 51 | } -------------------------------------------------------------------------------- /l10n/ro.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Salvat", 5 | "Video" : "Video", 6 | "Uploaded" : "Încărcat", 7 | "Paused" : "oprit", 8 | "Active" : "Activ", 9 | "Upload" : "Încarcă", 10 | "Loading" : "Loading", 11 | "Options" : "Opțiuni", 12 | "Username" : "Nume utilizator", 13 | "Password" : "Parolă", 14 | "Filename" : "Nume fișier", 15 | "Proxy Port" : "Port proxy ", 16 | "No" : "Nu", 17 | "Yes" : "a", 18 | "Save" : "Salvează", 19 | "minutes" : "minute", 20 | "hours" : "ore", 21 | "days" : "zile", 22 | "weeks" : "săptămâni", 23 | "months" : "luni", 24 | "years" : "ani" 25 | }, 26 | "nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"); 27 | -------------------------------------------------------------------------------- /l10n/ro.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Salvat", 3 | "Video" : "Video", 4 | "Uploaded" : "Încărcat", 5 | "Paused" : "oprit", 6 | "Active" : "Activ", 7 | "Upload" : "Încarcă", 8 | "Loading" : "Loading", 9 | "Options" : "Opțiuni", 10 | "Username" : "Nume utilizator", 11 | "Password" : "Parolă", 12 | "Filename" : "Nume fișier", 13 | "Proxy Port" : "Port proxy ", 14 | "No" : "Nu", 15 | "Yes" : "a", 16 | "Save" : "Salvează", 17 | "minutes" : "minute", 18 | "hours" : "ore", 19 | "days" : "zile", 20 | "weeks" : "săptămâni", 21 | "months" : "luni", 22 | "years" : "ani" 23 | },"pluralForm" :"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));" 24 | } -------------------------------------------------------------------------------- /l10n/si.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Upload" : "උඩුගත", 5 | "Loading" : "පූරණය වෙමින්", 6 | "Username" : "පරිශීලක නාමය", 7 | "Password" : "මුර පදය", 8 | "Filename" : "ගොනු නාමය", 9 | "No" : "නැහැ", 10 | "Yes" : "ඔව්", 11 | "Save" : "සුරකින්න" 12 | }, 13 | "nplurals=2; plural=(n != 1);"); 14 | -------------------------------------------------------------------------------- /l10n/si.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Upload" : "උඩුගත", 3 | "Loading" : "පූරණය වෙමින්", 4 | "Username" : "පරිශීලක නාමය", 5 | "Password" : "මුර පදය", 6 | "Filename" : "ගොනු නාමය", 7 | "No" : "නැහැ", 8 | "Yes" : "ඔව්", 9 | "Save" : "සුරකින්න" 10 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 11 | } -------------------------------------------------------------------------------- /l10n/sq.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Ruajtur", 5 | "Video" : "Video", 6 | "Uploaded" : "U ngarkua", 7 | "Paused" : "Pushuar", 8 | "Upload" : "Ngarkoni", 9 | "Loading" : "Duke ngarkuar", 10 | "Username" : "Username", 11 | "Password" : "Fjalëkalim", 12 | "Filename" : "Emri i skedarit", 13 | "No" : "Jo", 14 | "Yes" : "Yes", 15 | "General settings" : "Opsjonet e Pergjithshme", 16 | "Save" : "Ruaj", 17 | "minutes" : "minuta", 18 | "hours" : "orë", 19 | "days" : "ditë", 20 | "weeks" : "javë" 21 | }, 22 | "nplurals=2; plural=(n != 1);"); 23 | -------------------------------------------------------------------------------- /l10n/sq.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Ruajtur", 3 | "Video" : "Video", 4 | "Uploaded" : "U ngarkua", 5 | "Paused" : "Pushuar", 6 | "Upload" : "Ngarkoni", 7 | "Loading" : "Duke ngarkuar", 8 | "Username" : "Username", 9 | "Password" : "Fjalëkalim", 10 | "Filename" : "Emri i skedarit", 11 | "No" : "Jo", 12 | "Yes" : "Yes", 13 | "General settings" : "Opsjonet e Pergjithshme", 14 | "Save" : "Ruaj", 15 | "minutes" : "minuta", 16 | "hours" : "orë", 17 | "days" : "ditë", 18 | "weeks" : "javë" 19 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 20 | } -------------------------------------------------------------------------------- /l10n/sr@latin.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Video" : "Video", 5 | "Uploaded" : "Otpremljeno", 6 | "Upload" : "Otpremi", 7 | "Loading" : "Loading", 8 | "Username" : "Username", 9 | "Password" : "Password", 10 | "Filename" : "Ime fajla", 11 | "No" : "No", 12 | "Yes" : "Yes", 13 | "Save" : "Save" 14 | }, 15 | "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"); 16 | -------------------------------------------------------------------------------- /l10n/sr@latin.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Video" : "Video", 3 | "Uploaded" : "Otpremljeno", 4 | "Upload" : "Otpremi", 5 | "Loading" : "Loading", 6 | "Username" : "Username", 7 | "Password" : "Password", 8 | "Filename" : "Ime fajla", 9 | "No" : "No", 10 | "Yes" : "Yes", 11 | "Save" : "Save" 12 | },"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" 13 | } -------------------------------------------------------------------------------- /l10n/sw.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Imehifadhiwa", 5 | "Video" : "Video", 6 | "Uploaded" : "Uploaded", 7 | "Active" : "Active", 8 | "Upload" : "Pakia", 9 | "Loading" : "Loading", 10 | "Options" : "Chaguzi", 11 | "Username" : "Username", 12 | "Password" : "Nenosiri", 13 | "Filename" : "Jina la faili", 14 | "Proxy Port" : "Proxy Port", 15 | "No" : "Hapana", 16 | "Yes" : "Ndiyo", 17 | "General settings" : "General settings", 18 | "Save" : "Hifadhi", 19 | "unlimited" : "unlimited", 20 | "minutes" : "dakika", 21 | "hours" : "masaa", 22 | "days" : "siku", 23 | "weeks" : "wiki", 24 | "months" : "months", 25 | "years" : "years" 26 | }, 27 | "nplurals=2; plural=(n != 1);"); 28 | -------------------------------------------------------------------------------- /l10n/sw.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Imehifadhiwa", 3 | "Video" : "Video", 4 | "Uploaded" : "Uploaded", 5 | "Active" : "Active", 6 | "Upload" : "Pakia", 7 | "Loading" : "Loading", 8 | "Options" : "Chaguzi", 9 | "Username" : "Username", 10 | "Password" : "Nenosiri", 11 | "Filename" : "Jina la faili", 12 | "Proxy Port" : "Proxy Port", 13 | "No" : "Hapana", 14 | "Yes" : "Ndiyo", 15 | "General settings" : "General settings", 16 | "Save" : "Hifadhi", 17 | "unlimited" : "unlimited", 18 | "minutes" : "dakika", 19 | "hours" : "masaa", 20 | "days" : "siku", 21 | "weeks" : "wiki", 22 | "months" : "months", 23 | "years" : "years" 24 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 25 | } -------------------------------------------------------------------------------- /l10n/ta.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Video" : "Video", 5 | "Upload" : "பதிவேற்றுக", 6 | "Loading" : "Loading", 7 | "Username" : "பயனாளர் பெயர்", 8 | "Password" : "கடவுச்சொல்", 9 | "No" : "No", 10 | "Yes" : "Yes", 11 | "Save" : "சேமிக்க " 12 | }, 13 | "nplurals=2; plural=(n != 1);"); 14 | -------------------------------------------------------------------------------- /l10n/ta.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Video" : "Video", 3 | "Upload" : "பதிவேற்றுக", 4 | "Loading" : "Loading", 5 | "Username" : "பயனாளர் பெயர்", 6 | "Password" : "கடவுச்சொல்", 7 | "No" : "No", 8 | "Yes" : "Yes", 9 | "Save" : "சேமிக்க " 10 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 11 | } -------------------------------------------------------------------------------- /l10n/th.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "บันทึกแล้ว", 5 | "Video" : "วิดีโอ", 6 | "Uploaded" : "อัปโหลดแล้ว", 7 | "Paused" : "หยุดชั่วคราว", 8 | "Upload" : "อัปโหลด", 9 | "Loading" : "กำลังโหลด", 10 | "Options" : "ตัวเลือก", 11 | "Username" : "ชื่อผู้ใช้", 12 | "Password" : "รหัสผ่าน", 13 | "Filename" : "ชื่อไฟล์", 14 | "No" : "ไม่ใช่", 15 | "Yes" : "ใช่", 16 | "Save" : "บันทึก", 17 | "minutes" : "นาที", 18 | "hours" : "ชั่วโมง", 19 | "days" : "วัน", 20 | "weeks" : "สัปดาห์" 21 | }, 22 | "nplurals=1; plural=0;"); 23 | -------------------------------------------------------------------------------- /l10n/th.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "บันทึกแล้ว", 3 | "Video" : "วิดีโอ", 4 | "Uploaded" : "อัปโหลดแล้ว", 5 | "Paused" : "หยุดชั่วคราว", 6 | "Upload" : "อัปโหลด", 7 | "Loading" : "กำลังโหลด", 8 | "Options" : "ตัวเลือก", 9 | "Username" : "ชื่อผู้ใช้", 10 | "Password" : "รหัสผ่าน", 11 | "Filename" : "ชื่อไฟล์", 12 | "No" : "ไม่ใช่", 13 | "Yes" : "ใช่", 14 | "Save" : "บันทึก", 15 | "minutes" : "นาที", 16 | "hours" : "ชั่วโมง", 17 | "days" : "วัน", 18 | "weeks" : "สัปดาห์" 19 | },"pluralForm" :"nplurals=1; plural=0;" 20 | } -------------------------------------------------------------------------------- /l10n/tk.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Uploaded" : "Ýüklendi", 5 | "Upload" : "Ýükle", 6 | "Username" : "Ulanyjy ady", 7 | "Password" : "Açarsöz", 8 | "Filename" : "Faýlyň ady", 9 | "No" : "Ýok", 10 | "Yes" : "Hawa", 11 | "Save" : "Saklamak" 12 | }, 13 | "nplurals=2; plural=(n != 1);"); 14 | -------------------------------------------------------------------------------- /l10n/tk.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Uploaded" : "Ýüklendi", 3 | "Upload" : "Ýükle", 4 | "Username" : "Ulanyjy ady", 5 | "Password" : "Açarsöz", 6 | "Filename" : "Faýlyň ady", 7 | "No" : "Ýok", 8 | "Yes" : "Hawa", 9 | "Save" : "Saklamak" 10 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 11 | } -------------------------------------------------------------------------------- /l10n/uz.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Saved", 5 | "Upload" : "Yuklash", 6 | "Loading" : "Loading", 7 | "Options" : "Variantlar", 8 | "Username" : "Username", 9 | "Password" : "Password", 10 | "Filename" : "Fayl nomi", 11 | "Proxy Port" : "Proksi port", 12 | "No" : "No", 13 | "Yes" : "Yes", 14 | "Save" : "Saqlash", 15 | "minutes" : "minutes", 16 | "hours" : "soat", 17 | "days" : "days", 18 | "weeks" : "hafta", 19 | "months" : "oy", 20 | "years" : "yil" 21 | }, 22 | "nplurals=1; plural=0;"); 23 | -------------------------------------------------------------------------------- /l10n/uz.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Saved", 3 | "Upload" : "Yuklash", 4 | "Loading" : "Loading", 5 | "Options" : "Variantlar", 6 | "Username" : "Username", 7 | "Password" : "Password", 8 | "Filename" : "Fayl nomi", 9 | "Proxy Port" : "Proksi port", 10 | "No" : "No", 11 | "Yes" : "Yes", 12 | "Save" : "Saqlash", 13 | "minutes" : "minutes", 14 | "hours" : "soat", 15 | "days" : "days", 16 | "weeks" : "hafta", 17 | "months" : "oy", 18 | "years" : "yil" 19 | },"pluralForm" :"nplurals=1; plural=0;" 20 | } -------------------------------------------------------------------------------- /l10n/vi.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "ocdownloader", 3 | { 4 | "Saved" : "Đã lưu", 5 | "Video" : "Video", 6 | "Uploaded" : "Đã tải lên", 7 | "Active" : "Hoạt động", 8 | "Upload" : "Tải lên", 9 | "Loading" : "Đang tải", 10 | "Username" : "Tài khoản", 11 | "Password" : "Mật khẩu", 12 | "Filename" : "Tên tập tin", 13 | "No" : "Không", 14 | "Yes" : "Đồng ý", 15 | "General settings" : "Cài đặt chung", 16 | "Save" : "Lưu", 17 | "minutes" : "phút", 18 | "hours" : "giờ", 19 | "days" : "ngày", 20 | "weeks" : "tuần", 21 | "months" : "tháng", 22 | "years" : "năm" 23 | }, 24 | "nplurals=1; plural=0;"); 25 | -------------------------------------------------------------------------------- /l10n/vi.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Saved" : "Đã lưu", 3 | "Video" : "Video", 4 | "Uploaded" : "Đã tải lên", 5 | "Active" : "Hoạt động", 6 | "Upload" : "Tải lên", 7 | "Loading" : "Đang tải", 8 | "Username" : "Tài khoản", 9 | "Password" : "Mật khẩu", 10 | "Filename" : "Tên tập tin", 11 | "No" : "Không", 12 | "Yes" : "Đồng ý", 13 | "General settings" : "Cài đặt chung", 14 | "Save" : "Lưu", 15 | "minutes" : "phút", 16 | "hours" : "giờ", 17 | "days" : "ngày", 18 | "weeks" : "tuần", 19 | "months" : "tháng", 20 | "years" : "năm" 21 | },"pluralForm" :"nplurals=1; plural=0;" 22 | } -------------------------------------------------------------------------------- /lib/AppInfo/Application.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Xavier Beurois 2015 10 | */ 11 | 12 | namespace OCA\ocDownloader\AppInfo; 13 | 14 | use OCP\AppFramework\App; 15 | use OCP\IContainer; 16 | 17 | use OCA\ocDownloader\Controller\Index; 18 | use OCA\ocDownloader\Controller\HttpDownloader; 19 | use OCA\ocDownloader\Controller\FtpDownloader; 20 | use OCA\ocDownloader\Controller\YTDownloader; 21 | use OCA\ocDownloader\Controller\BTDownloader; 22 | use OCA\ocDownloader\Controller\Lib\Api; 23 | use OCA\ocDownloader\Controller\Queue; 24 | use OCA\ocDownloader\Controller\PersonalSettings; 25 | use OCA\ocDownloader\Controller\AdminSettings; 26 | 27 | use OCP\AppFramework\Bootstrap\IBootContext; 28 | use OCP\AppFramework\Bootstrap\IBootstrap; 29 | use OCP\AppFramework\Bootstrap\IRegistrationContext; 30 | use OCP\AppFramework\IAppContainer; 31 | 32 | class Application extends App implements IBootstrap { 33 | public function __construct(array $URLParams = array()) { 34 | parent::__construct('ocdownloader', $URLParams); 35 | } 36 | 37 | public function register(IRegistrationContext $context): void { 38 | } 39 | 40 | public function boot(IBootContext $context): void { 41 | 42 | //$container = $this->getContainer(); 43 | $container = $context->getAppContainer(); 44 | $container->registerService('CurrentUID', function (IContainer $Container) { 45 | $User = $Container->query('ServerContainer')->getUserSession()->getUser(); 46 | return($User) ? $User->getUID() : ''; 47 | }); 48 | 49 | $container->registerService('IndexController', function (IContainer $Container) { 50 | return new Index( 51 | $Container->query('AppName'), 52 | $Container->query('Request'), 53 | $Container->query('CurrentUID'), 54 | $Container->getServer()->getL10N('ocdownloader') 55 | ); 56 | }); 57 | 58 | $container->registerService('HttpDownloaderController', function (IContainer $Container) { 59 | return new HttpDownloader( 60 | $Container->query('AppName'), 61 | $Container->query('Request'), 62 | $Container->query('CurrentUID'), 63 | $Container->getServer()->getL10N('ocdownloader') 64 | ); 65 | }); 66 | 67 | $container->registerService('FtpDownloaderController', function (IContainer $Container) { 68 | return new FtpDownloader( 69 | $Container->query('AppName'), 70 | $Container->query('Request'), 71 | $Container->query('CurrentUID'), 72 | $Container->getServer()->getL10N('ocdownloader') 73 | ); 74 | }); 75 | 76 | $container->registerService('YTDownloaderController', function (IContainer $Container) { 77 | return new YTDownloader( 78 | $Container->query('AppName'), 79 | $Container->query('Request'), 80 | $Container->query('CurrentUID'), 81 | $Container->getServer()->getL10N('ocdownloader') 82 | ); 83 | }); 84 | 85 | $container->registerService('BTDownloaderController', function (IContainer $Container) { 86 | return new BTDownloader( 87 | $Container->query('AppName'), 88 | $Container->query('Request'), 89 | $Container->query('CurrentUID'), 90 | $Container->getServer()->getL10N('ocdownloader') 91 | ); 92 | }); 93 | 94 | $container->registerService('QueueController', function (IContainer $Container) { 95 | return new Queue( 96 | $Container->query('AppName'), 97 | $Container->query('Request'), 98 | $Container->query('CurrentUID'), 99 | $Container->getServer()->getL10N('ocdownloader') 100 | ); 101 | }); 102 | 103 | $container->registerService('AdminSettingsController', function (IContainer $Container) { 104 | return new AdminSettings( 105 | $Container->query('AppName'), 106 | $Container->query('Request'), 107 | $Container->getServer()->getL10N('ocdownloader') 108 | ); 109 | }); 110 | 111 | $container->registerService('PersonalSettingsController', function (IContainer $Container) { 112 | return new PersonalSettings( 113 | $Container->query('AppName'), 114 | $Container->query('Request'), 115 | $Container->query('CurrentUID'), 116 | $Container->getServer()->getL10N('ocdownloader') 117 | ); 118 | }); 119 | 120 | $container->registerService('ApiController', function (IContainer $Container) { 121 | return new Api( 122 | $Container->query('AppName'), 123 | $Container->query('Request'), 124 | $Container->getServer()->getL10N('ocdownloader') 125 | ); 126 | }); 127 | } 128 | } 129 | -------------------------------------------------------------------------------- /lib/Migration/Version010709Date20201214095324.php: -------------------------------------------------------------------------------- 1 | hasTable('ocdownloader_queue')) { 36 | $table = $schema->createTable('ocdownloader_queue'); 37 | $table->addColumn('ID', 'integer', [ 38 | 'autoincrement' => true, 39 | 'notnull' => true, 40 | 'length' => 4, 41 | ]); 42 | $table->addColumn('UID', 'string', [ 43 | 'notnull' => false, 44 | 'length' => 64, 45 | ]); 46 | $table->addColumn('GID', 'string', [ 47 | 'notnull' => true, 48 | 'length' => 32, 49 | ]); 50 | $table->addColumn('FILENAME', 'string', [ 51 | 'notnull' => true, 52 | 'length' => 255, 53 | ]); 54 | $table->addColumn('PROTOCOL', 'string', [ 55 | 'notnull' => true, 56 | 'length' => 10, 57 | ]); 58 | $table->addColumn('STATUS', 'smallint', [ 59 | 'notnull' => true, 60 | 'length' => 1, 61 | 'default' => 1, 62 | ]); 63 | $table->addColumn('IS_CLEANED', 'smallint', [ 64 | 'notnull' => true, 65 | 'length' => 1, 66 | 'default' => 0, 67 | ]); 68 | $table->addColumn('TIMESTAMP', 'bigint', [ 69 | 'notnull' => true, 70 | 'length' => 15, 71 | 'default' => 0, 72 | ]); 73 | $table->setPrimaryKey(['ID']); 74 | } 75 | 76 | if (!$schema->hasTable('ocdownloader_admin')) { 77 | $table = $schema->createTable('ocdownloader_admin'); 78 | $table->addColumn('ID', 'integer', [ 79 | 'autoincrement' => true, 80 | 'notnull' => true, 81 | 'length' => 4, 82 | ]); 83 | $table->addColumn('KEY', 'string', [ 84 | 'notnull' => true, 85 | 'length' => 100, 86 | ]); 87 | $table->addColumn('VAL', 'string', [ 88 | 'notnull' => false, 89 | 'length' => 255, 90 | ]); 91 | $table->setPrimaryKey(['ID']); 92 | } 93 | 94 | if (!$schema->hasTable('ocdownloader_personal')) { 95 | $table = $schema->createTable('ocdownloader_personal'); 96 | $table->addColumn('ID', 'integer', [ 97 | 'autoincrement' => true, 98 | 'notnull' => true, 99 | 'length' => 4, 100 | ]); 101 | $table->addColumn('UID', 'string', [ 102 | 'notnull' => true, 103 | 'length' => 64, 104 | ]); 105 | $table->addColumn('KEY', 'string', [ 106 | 'notnull' => true, 107 | 'length' => 100, 108 | ]); 109 | $table->addColumn('VAL', 'string', [ 110 | 'notnull' => false, 111 | 'length' => 255, 112 | ]); 113 | $table->setPrimaryKey(['ID']); 114 | } 115 | return $schema; 116 | } 117 | 118 | /** 119 | * @param IOutput $output 120 | * @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper` 121 | * @param array $options 122 | */ 123 | public function postSchemaChange(IOutput $output, Closure $schemaClosure, array $options) { 124 | } 125 | } 126 | -------------------------------------------------------------------------------- /lib/Settings/Admin.php: -------------------------------------------------------------------------------- 1 | getAllValues(); 15 | $parameters = []; 16 | 17 | while ($Row = $rows->fetchRow()) { 18 | $parameters['OCDS_' . $Row['KEY']] = $Row['VAL']; 19 | } 20 | 21 | return new TemplateResponse('ocdownloader', 'settings/admin', $parameters); 22 | 23 | } 24 | 25 | public function getSection() { 26 | return 'additional'; 27 | } 28 | 29 | public function getPriority() { 30 | return 50; 31 | } 32 | 33 | } 34 | -------------------------------------------------------------------------------- /lib/Settings/Personal.php: -------------------------------------------------------------------------------- 1 | setKey('AllowProtocolBT'); 16 | $allowProtocolBT = $settings->getValue(); 17 | $allowProtocolBT = is_null($allowProtocolBT) ? true : strcmp($allowProtocolBT, 'Y') == 0; 18 | 19 | $parameters = [ 20 | 'AllowProtocolBT' => $allowProtocolBT, 21 | ]; 22 | 23 | $settings->setTable('personal'); 24 | $settings->setUID(OC::$server->getUserSession()->isLoggedIn()); 25 | $rows = $settings->getAllValues(); 26 | 27 | while ($row = $rows->fetchRow()) { 28 | $parameters['OCDS_' . $row['KEY']] = $row['VAL']; 29 | } 30 | 31 | return new TemplateResponse('ocdownloader', 'settings/personal', $parameters); 32 | 33 | } 34 | 35 | public function getSection() { 36 | return 'additional'; 37 | } 38 | 39 | public function getPriority() { 40 | return 50; 41 | } 42 | 43 | } 44 | -------------------------------------------------------------------------------- /templates/actives.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Xavier Beurois 2015 10 | * 11 | * @var array $_ 12 | * @var IL10N $l 13 | */ 14 | 15 | use OCP\IL10N; 16 | 17 | style ('ocdownloader', 'styles.min'); 18 | script ('ocdownloader', 'badger.min'); 19 | script ('ocdownloader', 'ocdownloader.min'); 20 | script ('ocdownloader', 'actives'); 21 | ?> 22 |
23 |
24 | inc ('part.navigation')); ?> 25 |
26 |
27 |
28 |
29 |
t ('Active Downloads')); ?>
30 |

t (' using %s', $_['WD'])); ?>

31 |
32 |
33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 |
t ('FILENAME')); ?>t ('PROTOCOL')); ?>t ('INFORMATION')); ?>t ('SPEED')); ?>
t ('Loading')); ?> ...
49 |
50 | 51 |
52 |
53 |
54 | -------------------------------------------------------------------------------- /templates/all.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Xavier Beurois 2015 10 | * 11 | * @var array $_ 12 | * @var IL10N $l 13 | */ 14 | 15 | use OCP\IL10N; 16 | 17 | style ('ocdownloader', 'styles.min'); 18 | script ('ocdownloader', 'badger.min'); 19 | script ('ocdownloader', 'ocdownloader.min'); 20 | script ('ocdownloader', 'all'); 21 | ?> 22 |
23 |
24 | inc ('part.navigation')); ?> 25 |
26 |
27 |
28 |
29 |
t ('All Downloads')); ?>
30 |

t (' using %s', $_['WD'])); ?>

31 |
32 |
33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 |
t ('FILENAME')); ?>t ('PROTOCOL')); ?>t ('INFORMATION')); ?>t ('SPEED')); ?>t ('STATUS')); ?>
t ('Loading')); ?> ...
50 |
51 | 52 |
53 |
54 |
55 | -------------------------------------------------------------------------------- /templates/completes.php: -------------------------------------------------------------------------------- 1 | 12 | * @copyright Xavier Beurois 2015 13 | */ 14 | 15 | use OCP\IL10N; 16 | 17 | style ('ocdownloader', 'styles.min'); 18 | script ('ocdownloader', 'badger.min'); 19 | script ('ocdownloader', 'ocdownloader.min'); 20 | script ('ocdownloader', 'completes'); 21 | ?> 22 |
23 |
24 | inc ('part.navigation')); ?> 25 |
26 |
27 |
28 |
29 |
t ('Complete Downloads')); ?>
30 |

t (' using %s', $_['WD'])); ?>

31 |
32 |
33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 |
t ('FILENAME')); ?>t ('PROTOCOL')); ?>t ('INFORMATION')); ?>
t ('Loading')); ?> ...
48 |
49 | 50 |
51 |
52 |
53 | -------------------------------------------------------------------------------- /templates/part.navigation.php: -------------------------------------------------------------------------------- 1 | 12 | * @copyright Xavier Beurois 2015 13 | */ 14 | 15 | use OCP\IL10N; 16 | 17 | ?> 18 | 53 | -------------------------------------------------------------------------------- /templates/removed.php: -------------------------------------------------------------------------------- 1 | 12 | * @copyright Xavier Beurois 2015 13 | */ 14 | 15 | use OCP\IL10N; 16 | 17 | style ('ocdownloader', 'styles.min'); 18 | script ('ocdownloader', 'badger.min'); 19 | script ('ocdownloader', 'ocdownloader.min'); 20 | script ('ocdownloader', 'removed'); 21 | ?> 22 |
23 |
24 | inc ('part.navigation')); ?> 25 |
26 |
27 |
28 |
29 |
t ('Removed Downloads')); ?>
30 |

t (' using %s', $_['WD'])); ?>

31 |
32 |
33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 |
t ('FILENAME')); ?>t ('PROTOCOL')); ?>t ('INFORMATION')); ?>
t ('Loading')); ?> ...
48 |
49 | 50 |
51 |
52 |
53 | -------------------------------------------------------------------------------- /templates/settings/personal.php: -------------------------------------------------------------------------------- 1 | 12 | * @copyright Xavier Beurois 2015 13 | */ 14 | 15 | use OCP\IL10N; 16 | 17 | script('ocdownloader', 'settings/personal'); 18 | style('ocdownloader', 'settings/personal'); 19 | 20 | $BTSeedTimeToReach = 1; 21 | $BTSeedTimeToReachUnit = 'w'; 22 | if (isset ($_['OCDS_BTSeedTimeToReach_BTSeedTimeToReachUnit'])) 23 | { 24 | $SeedTime = explode ('_', $_['OCDS_BTSeedTimeToReach_BTSeedTimeToReachUnit']); 25 | if (count ($SeedTime) == 2) 26 | { 27 | $BTSeedTimeToReach = $SeedTime[0]; 28 | $BTSeedTimeToReachUnit = $SeedTime[1]; 29 | } 30 | } 31 | 32 | ?> 33 |
34 |

ocDownloader

35 |

t ('Leave fields blank to reset a setting value')); ?>

36 |

37 | 38 | 39 | 40 |

41 | 42 |
43 |
44 |

45 | 46 | 47 | 48 |

49 |
50 |
51 |

t ('BitTorrent protocol settings - Ratio')); ?>

52 |

53 | 54 | 67 | 68 |

69 |

t ('BitTorrent protocol settings - Seed time')); ?>

70 |

71 | 72 | 77 | 85 | 86 |

87 | 88 |
89 | -------------------------------------------------------------------------------- /templates/stopped.php: -------------------------------------------------------------------------------- 1 | 12 | * @copyright Xavier Beurois 2015 13 | */ 14 | 15 | use OCP\IL10N; 16 | 17 | style ('ocdownloader', 'styles.min'); 18 | script ('ocdownloader', 'badger.min'); 19 | script ('ocdownloader', 'ocdownloader.min'); 20 | script ('ocdownloader', 'stopped'); 21 | ?> 22 |
23 |
24 | inc ('part.navigation')); ?> 25 |
26 |
27 |
28 |
29 |
t ('Stopped Downloads')); ?>
30 |

t (' using %s', $_['WD'])); ?>

31 |
32 |
33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 |
t ('FILENAME')); ?>t ('PROTOCOL')); ?>t ('INFORMATION')); ?>
t ('Loading')); ?> ...
48 |
49 | 50 |
51 |
52 |
53 | -------------------------------------------------------------------------------- /templates/waitings.php: -------------------------------------------------------------------------------- 1 | 12 | * @copyright Xavier Beurois 2015 13 | */ 14 | 15 | use OCP\IL10N; 16 | 17 | style ('ocdownloader', 'styles.min'); 18 | script ('ocdownloader', 'badger.min'); 19 | script ('ocdownloader', 'ocdownloader.min'); 20 | script ('ocdownloader', 'waitings'); 21 | ?> 22 |
23 |
24 | inc ('part.navigation')); ?> 25 |
26 |
27 |
28 |
29 |
t ('Waiting Downloads')); ?>
30 |

t (' using %s', $_['WD'])); ?>

31 |
32 |
33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 |
t ('FILENAME')); ?>t ('PROTOCOL')); ?>t ('INFORMATION')); ?>
t ('Loading')); ?> ...
48 |
49 | 50 |
51 |
52 |
53 | --------------------------------------------------------------------------------