diff options
author | Alessandro Cosentino <cosenal@gmail.com> | 2012-08-03 00:35:45 -0400 |
---|---|---|
committer | Alessandro Cosentino <cosenal@gmail.com> | 2012-08-03 00:35:45 -0400 |
commit | a4502857ece08326168fd5b1170d9ff9f4c3be01 (patch) | |
tree | 2eaff7d4a705bcc7bee42a9f4eaf8bd2dec67f3c | |
parent | 9e1b6c31a8818f665ac58307931c6fd308e6c353 (diff) |
small fixes on previous commits
-rw-r--r-- | ajax/createfeed.php | 16 | ||||
-rw-r--r-- | index.php | 7 | ||||
-rw-r--r-- | js/news.js | 4 | ||||
-rw-r--r-- | lib/feedmapper.php | 24 | ||||
-rw-r--r-- | templates/part.feeds.php | 6 | ||||
-rw-r--r-- | templates/part.itemcounter.php | 4 | ||||
-rw-r--r-- | templates/part.listfeed.php | 4 |
7 files changed, 38 insertions, 27 deletions
diff --git a/ajax/createfeed.php b/ajax/createfeed.php index 3b20b3ce9..a17ef8f33 100644 --- a/ajax/createfeed.php +++ b/ajax/createfeed.php @@ -21,21 +21,23 @@ $feedurl = trim($_POST['feedurl']); $folderid = trim($_POST['folderid']); $feed = OC_News_Utils::fetch($feedurl); -$feedmapper = new OC_News_FeedMapper(); -$feedid = $feedmapper->save($feed, $folderid); + +if ($feed != null) { + $feedmapper = new OC_News_FeedMapper(); + $feedid = $feedmapper->save($feed, $folderid); +} $l = OC_L10N::get('news'); -if(!$feedid) { - OCP\JSON::error(array('data' => array('message' => $l->t('Error adding folder.')))); +if($feed == null || !$feedid) { + OCP\JSON::error(array('data' => array('message' => $l->t('Error adding feed.')))); OCP\Util::writeLog('news','ajax/createfeed.php: Error adding feed: '.$_POST['feedurl'], OCP\Util::ERROR); exit(); } $tmpl = new OCP\Template("news", "part.listfeed"); $tmpl->assign('child', $feed); -$listitem = $tmpl->fetchPage(); +$listfeed = $tmpl->fetchPage(); -//TODO: replace the following with a real success case. see contact/ajax/createaddressbook.php for inspirations -OCP\JSON::success(array('data' => array('message' => $l->t('Feed added!'), 'listitem' => $listitem))); +OCP\JSON::success(array('data' => array('message' => $l->t('Feed added!'), 'listfeed' => $listfeed))); @@ -23,14 +23,17 @@ OCP\Util::addStyle('news','settings'); $l = OC_L10N::get('news'); -$foldermapper = new OC_News_FolderMapper(OCP\USER::getUser()); +$userid = OCP\USER::getUser(); + +$foldermapper = new OC_News_FolderMapper($userid); $allfeeds = $foldermapper->populate($l->t('Everything'), 0); if ($allfeeds) { $feedid = isset( $_GET['feedid'] ) ? $_GET['feedid'] : null; if ($feedid == null) { - + $feedmapper = new OC_News_FeedMapper(OCP\USER::getUser($userid)); + $feedid = $feedmapper->mostRecent(); } } else { diff --git a/js/news.js b/js/news.js index 3084ef455..8490254e3 100644 --- a/js/news.js +++ b/js/news.js @@ -108,8 +108,8 @@ News={ $.post(OC.filePath('news', 'ajax', 'createfeed.php'), { feedurl: feedurl, folderid: folderid }, function(jsondata){ if(jsondata.status == 'success'){ - $('div[data-id="' + folderid + '"] > ul').before(jsondata.data.listitem); - setupFeedList(); + $('div[data-id="' + folderid + '"] > ul').append(jsondata.data.listfeed); + //setupFeedList(); OC.dialogs.alert(jsondata.data.message, t('news', 'Success!')); } else { OC.dialogs.alert(jsondata.data.message, t('news', 'Error')); diff --git a/lib/feedmapper.php b/lib/feedmapper.php index 7b544c3cf..6e3f6080d 100644 --- a/lib/feedmapper.php +++ b/lib/feedmapper.php @@ -125,6 +125,18 @@ class OC_News_FeedMapper { } return $id; } + + public function mostRecent(){ + //FIXME: does something like SELECT TOP 1 * exists in pear/mdb2 ?? + $stmt = OCP\DB::prepare('SELECT * FROM ' . self::tableName . ' ORDER BY lastmodified'); + $result = $stmt->execute(); + $row = $result->fetchRow(); + $id = null; + if ($row != null){ + $id = $row['id']; + } + return $id; + } /** * @brief Save the feed and all its items into the database @@ -153,19 +165,17 @@ class OC_News_FeedMapper { //FIXME: Detect when feed contains already a database id $feedid = $this->findIdFromUrl($url); if ($feedid == null){ - $query = OCP\DB::prepare(' - INSERT INTO ' . self::tableName . - '(url, title, favicon_link, folder_id, added, lastmodified, user_id) - VALUES (?, ?, ?, ?, ?, ?, ?) - '); + $query = OCP\DB::prepare(" + INSERT INTO " . self::tableName . + "(url, title, favicon_link, folder_id, user_id, added, lastmodified) + VALUES (?, ?, ?, ?, ?, $_ut, $_ut) + "); $params=array( $url, htmlspecialchars_decode($title), $feed->getFavicon(), $folderid, - $_ut, - $_ut, $this->userid ); $query->execute($params); diff --git a/templates/part.feeds.php b/templates/part.feeds.php index ac57da384..df781767c 100644 --- a/templates/part.feeds.php +++ b/templates/part.feeds.php @@ -9,9 +9,8 @@ '<button class="svg action" id="feeds_delete" onClick="(News.Folder.delete(' . $folder->getId(). '))" title="' . $l->t('Delete folder') . '"></button>' . '<button class="svg action" id="feeds_edit" title="' . $l->t('Rename folder') . '"></button>' : '' ) . - - '</div>' . - '<ul>'; + '</div>' . + '<ul>'; $children = $folder->getChildren(); foreach($children as $child) { @@ -29,5 +28,6 @@ } echo '</ul></div></li></ul>'; } + print_folder($_['allfeeds'], 0); ?>
\ No newline at end of file diff --git a/templates/part.itemcounter.php b/templates/part.itemcounter.php index 9a1127ea8..ba4751033 100644 --- a/templates/part.itemcounter.php +++ b/templates/part.itemcounter.php @@ -15,6 +15,4 @@ function countUnreadItems($feedid) { else { echo '<span id="unreaditemcounter" class="zero"></span>'; } -} - -?>
\ No newline at end of file +}
\ No newline at end of file diff --git a/templates/part.listfeed.php b/templates/part.listfeed.php index 1ee7f168e..3746a1eb4 100644 --- a/templates/part.listfeed.php +++ b/templates/part.listfeed.php @@ -6,7 +6,7 @@ include_once("part.itemcounter.php"); $child = isset($_['child']) ? $_['child'] : null; $favicon = $child->getFavicon(); if ($favicon == null) { - $favicon = OCP\Util::imagePath('news', 'rss.svg'); + $favicon = OCP\Util::imagePath('news', 'rss.svg'); } echo '<li class="feeds_list" data-id="' . $child->getId() . '"><a href="' . OCP\Util::linkTo('news', 'index.php'). '?feedid=' . $child->getId() . '" style="background: url(' . $favicon . ') left center no-repeat; background-size:16px 16px;">' . $child->getTitle() .'</a>'; @@ -14,5 +14,3 @@ countUnreadItems($child->getId()); echo '<button class="svg action" id="feeds_delete" onClick="(News.Feed.delete(' . $child->getId(). '))" title="' . $l->t('Delete feed') . '"></button>'; echo '<button class="svg action" id="feeds_edit" title="' . $l->t('Edit feed') . '"></button>'; echo '</li>'; - -?>
\ No newline at end of file |