| OLD | NEW |
| 1 /* | 1 /* |
| 2 * This file is part of Adblock Plus <http://adblockplus.org/>, | 2 * This file is part of Adblock Plus <http://adblockplus.org/>, |
| 3 * Copyright (C) 2006-2014 Eyeo GmbH | 3 * Copyright (C) 2006-2014 Eyeo GmbH |
| 4 * | 4 * |
| 5 * Adblock Plus is free software: you can redistribute it and/or modify | 5 * Adblock Plus is free software: you can redistribute it and/or modify |
| 6 * it under the terms of the GNU General Public License version 3 as | 6 * it under the terms of the GNU General Public License version 3 as |
| 7 * published by the Free Software Foundation. | 7 * published by the Free Software Foundation. |
| 8 * | 8 * |
| 9 * Adblock Plus is distributed in the hope that it will be useful, | 9 * Adblock Plus is distributed in the hope that it will be useful, |
| 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| (...skipping 221 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 232 { | 232 { |
| 233 messageElement.setAttribute("invisible", "true"); | 233 messageElement.setAttribute("invisible", "true"); |
| 234 addMainCheckbox.setAttribute("invisible", "true"); | 234 addMainCheckbox.setAttribute("invisible", "true"); |
| 235 } | 235 } |
| 236 } | 236 } |
| 237 | 237 |
| 238 function validateURL(url) | 238 function validateURL(url) |
| 239 { | 239 { |
| 240 if (!url) | 240 if (!url) |
| 241 return null; | 241 return null; |
| 242 url = url.replace(/^\s+/, "").replace(/\s+$/, ""); | 242 url = url.trim(); |
| 243 | 243 |
| 244 // Is this a file path? | 244 // Is this a file path? |
| 245 try { | 245 try { |
| 246 let file = new FileUtils.File(url); | 246 let file = new FileUtils.File(url); |
| 247 return Services.io.newFileURI(file).spec; | 247 return Services.io.newFileURI(file).spec; |
| 248 } catch (e) {} | 248 } catch (e) {} |
| 249 | 249 |
| 250 // Is this a valid URL? | 250 // Is this a valid URL? |
| 251 let uri = Utils.makeURI(url); | 251 let uri = Utils.makeURI(url); |
| 252 if (uri) | 252 if (uri) |
| 253 return uri.spec; | 253 return uri.spec; |
| 254 | 254 |
| 255 return null; | 255 return null; |
| 256 } | 256 } |
| 257 | 257 |
| 258 function addSubscription() | 258 function addSubscription() |
| 259 { | 259 { |
| 260 let url = E("location").value; | 260 let url = E("location").value; |
| 261 url = validateURL(url); | 261 url = validateURL(url); |
| 262 if (!url) | 262 if (!url) |
| 263 { | 263 { |
| 264 Utils.alert(window, Utils.getString("subscription_invalid_location")); | 264 Utils.alert(window, Utils.getString("subscription_invalid_location")); |
| 265 E("location").focus(); | 265 E("location").focus(); |
| 266 return false; | 266 return false; |
| 267 } | 267 } |
| 268 | 268 |
| 269 let title = E("title").value.replace(/^\s+/, "").replace(/\s+$/, ""); | 269 let title = E("title").value.trim(); |
| 270 if (!title) | 270 if (!title) |
| 271 title = url; | 271 title = url; |
| 272 | 272 |
| 273 doAddSubscription(url, title); | 273 doAddSubscription(url, title); |
| 274 | 274 |
| 275 let addMainCheckbox = E("addMainSubscription") | 275 let addMainCheckbox = E("addMainSubscription") |
| 276 if (addMainCheckbox.getAttribute("invisible") != "true" && addMainCheckbox.che
cked) | 276 if (addMainCheckbox.getAttribute("invisible") != "true" && addMainCheckbox.che
cked) |
| 277 { | 277 { |
| 278 let mainSubscriptionTitle = addMainCheckbox.getAttribute("_mainSubscriptionT
itle"); | 278 let mainSubscriptionTitle = addMainCheckbox.getAttribute("_mainSubscriptionT
itle"); |
| 279 let mainSubscriptionURL = validateURL(addMainCheckbox.value); | 279 let mainSubscriptionURL = validateURL(addMainCheckbox.value); |
| (...skipping 19 matching lines...) Expand all Loading... |
| 299 subscription.title = title; | 299 subscription.title = title; |
| 300 | 300 |
| 301 if (subscription instanceof DownloadableSubscription && !subscription.lastDown
load) | 301 if (subscription instanceof DownloadableSubscription && !subscription.lastDown
load) |
| 302 Synchronizer.execute(subscription); | 302 Synchronizer.execute(subscription); |
| 303 } | 303 } |
| 304 | 304 |
| 305 function hasSubscription(url) | 305 function hasSubscription(url) |
| 306 { | 306 { |
| 307 return FilterStorage.subscriptions.some(function(subscription) subscription in
stanceof DownloadableSubscription && subscription.url == url); | 307 return FilterStorage.subscriptions.some(function(subscription) subscription in
stanceof DownloadableSubscription && subscription.url == url); |
| 308 } | 308 } |
| OLD | NEW |