add my import :)

This commit is contained in:
Colin Frei 2013-07-15 10:07:11 +02:00
parent c11fdb9787
commit cb5242f79b
3 changed files with 36 additions and 7 deletions

View file

@ -164,7 +164,7 @@ function ImportCtrl($scope, pageSwitcher, google)
function DevCtrl($scope, downloader, updateFeedsAlarmManager)
function DevCtrl($scope, downloader, updateFeedsAlarmManager, opml, downloaderBackend)
{
$scope.downloadFiles = function() {
downloader.downloadAll();
@ -177,4 +177,12 @@ function DevCtrl($scope, downloader, updateFeedsAlarmManager)
$scope.setAlarmTmp = function() {
updateFeedsAlarmManager.setAlarm();
};
$scope.importColinsOpml = function() {
var url = 'https://raw.github.com/colinfrei/Podcast/master/podcasts.xml';
var xmlPromise = downloaderBackend.downloadXml(url);
xmlPromise.then(function(xml) {
opml.import(xml);
});
}
}

View file

@ -828,14 +828,25 @@ angular.module('podcasts.settings', ['podcasts.database'])
}])
;
angular.module('podcasts.importer', [])
.service('opml', function() {
angular.module('podcasts.importer', ['podcasts.utilities', 'podcasts.services'])
.service('opml', ['xmlParser', 'feeds', function(xmlParser, feeds) {
return {
import: function(url) {
import: function(xml) {
angular.forEach(xml.find('outline'), function(value, key) {
var element = angular.element(value);
if ("rss" != element.attr('type')) {
return;
}
var feedUrl = element.attr('xmlUrl');
if (feedUrl) {
console.log('adding something');
feeds.add(feedUrl);
}
});
}
}
})
}])
.service('google', ['$q', '$http', 'feeds', function($q, $http, feeds) {
return {
import: function(email, password) {

View file

@ -2,7 +2,16 @@
<button ng-click="setAlarmTmp()">Set Alarm in 10 Seconds</button>
<button ng-click="checkForPendingMessage()">Check for pending Messages</button>
<div>
Import OPML File<br />
<button ng-click="importColinsOpml()">Import Colin's OPML File</button>
<!--
File input fields don't work yet on FirefoxOS, see https://bugzilla.mozilla.org/show_bug.cgi?id=832923
<input type="file" onchange="angular.element(this).scope().importOpmlFile(this)" />
-->
</div>
<!--
<br />
List of ALarms
$scope.feeds
<table>
@ -14,4 +23,5 @@ $scope.feeds
<tr ng-repeat="alarm in alarms">
<td>alarm.</td>
</tr>
</table>
</table>
-->