add urlcleaner utility
This commit is contained in:
parent
28112eb306
commit
37e290f4b0
3 changed files with 23 additions and 5 deletions
|
@ -49,6 +49,7 @@
|
|||
<script src="lib/angular/angular.js"></script>
|
||||
<script src="lib/iscroll.js"></script>
|
||||
<script src="js/app.js"></script>
|
||||
<script src="js/utilities.js"></script>
|
||||
<script src="js/services.js"></script>
|
||||
<script src="js/directives.js"></script>
|
||||
<script src="js/controllers.js"></script>
|
||||
|
|
|
@ -143,7 +143,7 @@ angular.module('podcasts.services', [])
|
|||
}
|
||||
}
|
||||
}])
|
||||
.service('feeds', ['$log', '$q', 'dbNew', 'db', 'downloaderBackend', 'xmlParser', 'feedItems', function($log, $q, db, dbOld, downloaderBackend, xmlParser, feedItems) {
|
||||
.service('feeds', ['$log', '$q', 'dbNew', 'db', 'downloaderBackend', 'xmlParser', 'feedItems', 'utilities', function($log, $q, db, dbOld, downloaderBackend, xmlParser, feedItems, utilities) {
|
||||
return {
|
||||
feeds: [],
|
||||
add: function(url) {
|
||||
|
@ -157,9 +157,9 @@ angular.module('podcasts.services', [])
|
|||
});
|
||||
};
|
||||
|
||||
// TODO: verify URL format somewhere
|
||||
var cleanedUrl = utilities.clean_url(url);
|
||||
|
||||
var promise = downloaderBackend.downloadXml(url);
|
||||
var promise = downloaderBackend.downloadXml(cleanedUrl);
|
||||
promise.then(function(xml) {
|
||||
var channelChildren = xml.find('channel').children(),
|
||||
newFeed = {},
|
||||
|
@ -175,7 +175,7 @@ angular.module('podcasts.services', [])
|
|||
}
|
||||
});
|
||||
|
||||
newFeed.url = url;
|
||||
newFeed.url = cleanedUrl;
|
||||
newFeed.title = channelChildren.find('title').text();
|
||||
newFeed.summary = channelChildren.find('description').text();
|
||||
newFeed.nrQueueItems = 1;
|
||||
|
@ -190,7 +190,7 @@ angular.module('podcasts.services', [])
|
|||
}, function() {
|
||||
console.warn('Could not fetch XML for feed, adding just URL for now');
|
||||
var newFeed = {};
|
||||
newFeed.url = url;
|
||||
newFeed.url = cleanedUrl;
|
||||
|
||||
finishSave(newFeed);
|
||||
});
|
||||
|
|
17
js/utilities.js
Normal file
17
js/utilities.js
Normal file
|
@ -0,0 +1,17 @@
|
|||
angular.module('podcasts.utilities', [])
|
||||
.service('utilities', function() {
|
||||
return {
|
||||
clean_url: function(url) {
|
||||
var cleanedUrl;
|
||||
|
||||
if (url.substring(0, 4) != 'http') {
|
||||
cleanedUrl = 'http://' + url;
|
||||
} else {
|
||||
cleanedUrl = url;
|
||||
}
|
||||
|
||||
return cleanedUrl;
|
||||
}
|
||||
}
|
||||
})
|
||||
;
|
Loading…
Add table
Add a link
Reference in a new issue