summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlessandro Cosentino <cosenal@gmail.com>2012-07-10 10:57:35 -0400
committerAlessandro Cosentino <cosenal@gmail.com>2012-07-10 10:57:35 -0400
commitaf0bf0486c25b7af0b237a33e2c1088924b84d0c (patch)
treeb41cd75fae87d518345aabf25f32e18ebfb1dcde
parentd6532b0418fda7f97e72b6bfdbac2b401055c925 (diff)
update views when you remove a feed or mark item as read
-rw-r--r--ajax/createfeed.php4
-rw-r--r--ajax/markitem.php2
-rw-r--r--js/news.js8
-rw-r--r--lib/itemmapper.php2
-rw-r--r--templates/part.feeds.php2
-rw-r--r--templates/part.items.php8
6 files changed, 16 insertions, 10 deletions
diff --git a/ajax/createfeed.php b/ajax/createfeed.php
index e5c0396a6..d1c15fb4b 100644
--- a/ajax/createfeed.php
+++ b/ajax/createfeed.php
@@ -18,11 +18,11 @@ OCP\JSON::callCheck();
$userid = OCP\USER::getUser();
$feedurl = trim($_POST['feedurl']);
-$folderid = trim($_POST['folderid']);
+//$folderid = trim($_POST['folderid']);
$feed = OC_News_Utils::fetch($feedurl);
$feedmapper = new OC_News_FeedMapper();
-$feedid = $feedmapper->save($feed, $folderid);
+$feedid = $feedmapper->save($feed, 0); //$folderid);
$l = OC_L10N::get('news');
diff --git a/ajax/markitem.php b/ajax/markitem.php
index 4d0a54fae..c42dc9350 100644
--- a/ajax/markitem.php
+++ b/ajax/markitem.php
@@ -31,5 +31,5 @@ if(!$success) {
}
//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('Item updated!'))));
+OCP\JSON::success(array('data' => array('itemid' => $itemid )));
diff --git a/js/news.js b/js/news.js
index 82cd248a0..f3f65a258 100644
--- a/js/news.js
+++ b/js/news.js
@@ -110,7 +110,8 @@ News={
if(answer == true) {
$.post(OC.filePath('news', 'ajax', 'deletefeed.php'),{'feedid':feedid},function(jsondata){
if(jsondata.status == 'success'){
- alert('removed!');
+ $('#leftcontent [data-id="'+jsondata.data.feedid+'"]').remove();
+ //change the right view too (maybe a message to subscribe, like in Google Reader?)
}
else{
OC.dialogs.alert(jsondata.data.message, t('news', 'Error'));
@@ -123,7 +124,10 @@ News={
markItem:function(itemid) {
$.post(OC.filePath('news', 'ajax', 'markitem.php'),{'itemid':itemid},function(jsondata){
if(jsondata.status == 'success'){
-
+ var $currentitem = $('#rightcontent [data-id="'+jsondata.data.itemid+'"]');
+ $currentitem.removeClass('title_unread');
+ $currentitem.addClass('title_read');
+ //set a timeout for this
}
else{
OC.dialogs.alert(jsondata.data.message, t('news', 'Error'));
diff --git a/lib/itemmapper.php b/lib/itemmapper.php
index 95b88f6b3..8d6a755b1 100644
--- a/lib/itemmapper.php
+++ b/lib/itemmapper.php
@@ -131,7 +131,7 @@ class OC_News_ItemMapper {
$itemid = OCP\DB::insertid(self::tableName);
}
else {
- update($item);
+ $this->update($item);
}
$item->setId($itemid);
return $itemid;
diff --git a/templates/part.feeds.php b/templates/part.feeds.php
index 60dc4efbc..f899695e9 100644
--- a/templates/part.feeds.php
+++ b/templates/part.feeds.php
@@ -15,7 +15,7 @@
}
elseif ($child instanceOf OC_News_Feed) { //onhover $(element).attr('id', 'newID');
- echo '<li class="feeds_list"><a href="' . OCP\Util::linkTo('news', 'index.php'). '?feedid=' . $child->getId() . '">' . $child->getTitle() .'</a>';
+ echo '<li class="feeds_list" data-id="' . $child->getId() . '"><a href="' . OCP\Util::linkTo('news', 'index.php'). '?feedid=' . $child->getId() . '">' . $child->getTitle() .'</a>';
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>';
diff --git a/templates/part.items.php b/templates/part.items.php
index 33bffc8ee..24ca958e9 100644
--- a/templates/part.items.php
+++ b/templates/part.items.php
@@ -10,12 +10,14 @@ echo '<ul class="accordion">';
foreach($items as $item) {
$title = $item->getTitle();
echo '<li>';
+ echo '<div data-id="' . $item->getId() . '"';
if ($item->isRead()) {
- echo '<div class="title_read">' . $title . '</div>';
+ echo ' class="title_read">';
}
else {
- echo '<div class="title_unread" onClick="News.Feed.markItem(' . $item->getId() . ')">' . $title . '</div>';
+ echo ' class="title_unread" onClick="News.Feed.markItem(' . $item->getId() . ')">';
}
- echo '<div class="body">' . $item->getBody() . '</div></li>';
+ echo $title . '</div><div class="body">' . $item->getBody() . '</div>';
+ echo '</li>';
}
echo '</ul>';