summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--actions/all.php11
-rw-r--r--actions/block.php2
-rw-r--r--actions/favorited.php11
-rw-r--r--actions/groupmembers.php11
-rw-r--r--actions/groups.php11
-rw-r--r--actions/inbox.php21
-rw-r--r--actions/outbox.php13
-rw-r--r--actions/public.php11
-rw-r--r--actions/replies.php11
-rw-r--r--actions/showfavorites.php12
-rw-r--r--actions/showgroup.php11
-rw-r--r--actions/showstream.php19
-rw-r--r--actions/tag.php12
-rw-r--r--actions/unblock.php2
-rw-r--r--classes/Notice.php7
-rw-r--r--js/util.js6
-rw-r--r--lib/action.php46
-rw-r--r--lib/router.php2
-rwxr-xr-xscripts/maildaemon.php14
19 files changed, 35 insertions, 198 deletions
diff --git a/actions/all.php b/actions/all.php
index a53bbea07..03179a246 100644
--- a/actions/all.php
+++ b/actions/all.php
@@ -69,17 +69,6 @@ class AllAction extends ProfileAction
sprintf(_('Feed for friends of %s (Atom)'), $this->user->nickname)));
}
- /**
- * Output document relationship links
- *
- * @return void
- */
- function showRelationshipLinks()
- {
- $this->sequenceRelationships($this->page > 1, $this->count > NOTICES_PER_PAGE, // FIXME
- $this->page, 'all', array('nickname' => $this->user->nickname));
- }
-
function showLocalNav()
{
$nav = new PersonalGroupNav($this);
diff --git a/actions/block.php b/actions/block.php
index 34f991dc6..0efee5932 100644
--- a/actions/block.php
+++ b/actions/block.php
@@ -180,7 +180,7 @@ class BlockAction extends Action
if ($action) {
common_redirect(common_local_url($action, $args), 303);
} else {
- common_redirect(common_local_url('subscriptions',
+ common_redirect(common_local_url('subscribers',
array('nickname' => $cur->nickname)),
303);
}
diff --git a/actions/favorited.php b/actions/favorited.php
index 7e31303e3..c902d80f5 100644
--- a/actions/favorited.php
+++ b/actions/favorited.php
@@ -221,15 +221,4 @@ class FavoritedAction extends Action
$this->pagination($this->page > 1, $cnt > NOTICES_PER_PAGE,
$this->page, 'favorited');
}
-
- /**
- * Output document relationship links
- *
- * @return void
- */
- function showRelationshipLinks()
- {
- $this->sequenceRelationships($this->page > 1, $this->count > NOTICES_PER_PAGE, // FIXME
- $this->page, 'favorited');
- }
}
diff --git a/actions/groupmembers.php b/actions/groupmembers.php
index 909935bec..21e5ebbaa 100644
--- a/actions/groupmembers.php
+++ b/actions/groupmembers.php
@@ -137,15 +137,4 @@ class GroupmembersAction extends Action
$this->page, 'groupmembers',
array('nickname' => $this->group->nickname));
}
-
- /**
- * Output document relationship links
- *
- * @return void
- */
- function showRelationshipLinks()
- {
- $this->sequenceRelationships($this->page > 1, $this->count > NOTICES_PER_PAGE, // FIXME
- $this->page, 'groupmembers', array('nickname' => $this->group->nickname));
- }
}
diff --git a/actions/groups.php b/actions/groups.php
index e20acce70..26b52a5fc 100644
--- a/actions/groups.php
+++ b/actions/groups.php
@@ -129,15 +129,4 @@ class GroupsAction extends Action
$gbm = new GroupsByMembersSection($this);
$gbm->show();
}
-
- /**
- * Output document relationship links
- *
- * @return void
- */
- function showRelationshipLinks()
- {
- $this->sequenceRelationships($this->page > 1, $this->count > NOTICES_PER_PAGE, // FIXME
- $this->page, 'groups', array('nickname' => $this->group->nickname));
- }
}
diff --git a/actions/inbox.php b/actions/inbox.php
index 7b5cf2d20..f14ba631f 100644
--- a/actions/inbox.php
+++ b/actions/inbox.php
@@ -46,15 +46,15 @@ require_once INSTALLDIR.'/lib/mailbox.php';
class InboxAction extends MailboxAction
{
-
+
/**
* Title of the page
*
* @return string page title
*/
-
+
function title()
- {
+ {
if ($this->page > 1) {
return sprintf(_("Inbox for %s - page %d"), $this->user->nickname,
$this->page);
@@ -64,21 +64,10 @@ class InboxAction extends MailboxAction
}
/**
- * Output document relationship links
- *
- * @return void
- */
- function showRelationshipLinks()
- {
- $this->sequenceRelationships($this->page > 1, $this->count > NOTICES_PER_PAGE, // FIXME
- $this->page, 'inbox', array('nickname' => $this->user->nickname));
- }
-
- /**
* Retrieve the messages for this user and this page
*
* Does a query for the right messages
- *
+ *
* @return Message data object with stream for messages
*
* @see MailboxAction::getMessages()
@@ -95,7 +84,7 @@ class InboxAction extends MailboxAction
if ($message->find()) {
return $message;
- } else {
+ } else {
return null;
}
}
diff --git a/actions/outbox.php b/actions/outbox.php
index deef1cc87..a875e9ad9 100644
--- a/actions/outbox.php
+++ b/actions/outbox.php
@@ -63,21 +63,10 @@ class OutboxAction extends MailboxAction
}
/**
- * Output document relationship links
- *
- * @return void
- */
- function showRelationshipLinks()
- {
- $this->sequenceRelationships($this->page > 1, $this->count > NOTICES_PER_PAGE, // FIXME
- $this->page, 'outbox', array('nickname' => $this->user->nickname));
- }
-
- /**
* retrieve the messages for this user and this page
*
* Does a query for the right messages
- *
+ *
* @return Message data object with stream for messages
*
* @see MailboxAction::getMessages()
diff --git a/actions/public.php b/actions/public.php
index d2f9da646..27153f131 100644
--- a/actions/public.php
+++ b/actions/public.php
@@ -136,17 +136,6 @@ class PublicAction extends Action
}
/**
- * Output document relationship links
- *
- * @return void
- */
- function showRelationshipLinks()
- {
- $this->sequenceRelationships($this->page > 1, $this->count > NOTICES_PER_PAGE, // FIXME
- $this->page, 'public');
- }
-
- /**
* Extra head elements
*
* We include a <meta> element linking to the publicxrds page, for OpenID
diff --git a/actions/replies.php b/actions/replies.php
index dfb520d64..eac4d0a3a 100644
--- a/actions/replies.php
+++ b/actions/replies.php
@@ -139,17 +139,6 @@ class RepliesAction extends Action
}
/**
- * Output document relationship links
- *
- * @return void
- */
- function showRelationshipLinks()
- {
- $this->sequenceRelationships($this->page > 1, $this->count > NOTICES_PER_PAGE, // FIXME
- $this->page, 'replies', array('nickname' => $this->user->nickname));
- }
-
- /**
* show the personal group nav
*
* @return void
diff --git a/actions/showfavorites.php b/actions/showfavorites.php
index eed62a2ab..865045337 100644
--- a/actions/showfavorites.php
+++ b/actions/showfavorites.php
@@ -151,18 +151,6 @@ class ShowfavoritesAction extends Action
}
/**
- * Output document relationship links
- *
- * @return void
- */
- function showRelationshipLinks()
- {
- $this->sequenceRelationships($this->page > 1, $this->count > NOTICES_PER_PAGE, // FIXME
- $this->page, 'showfavorites', array('nickname' => $this->user->nickname));
- }
-
-
- /**
* show the personal group nav
*
* @return void
diff --git a/actions/showgroup.php b/actions/showgroup.php
index a7df39727..29b6fa1e6 100644
--- a/actions/showgroup.php
+++ b/actions/showgroup.php
@@ -312,17 +312,6 @@ class ShowgroupAction extends Action
}
/**
- * Output document relationship links
- *
- * @return void
- */
- function showRelationshipLinks()
- {
- $this->sequenceRelationships($this->page > 1, $this->count > NOTICES_PER_PAGE, // FIXME
- $this->page, 'showgroup', array('nickname' => $this->group->nickname));
- }
-
- /**
* Fill in the sidebar.
*
* @return void
diff --git a/actions/showstream.php b/actions/showstream.php
index 82665e5b8..641228bc7 100644
--- a/actions/showstream.php
+++ b/actions/showstream.php
@@ -135,17 +135,6 @@ class ShowstreamAction extends ProfileAction
sprintf(_('FOAF for %s'), $this->user->nickname)));
}
- /**
- * Output document relationship links
- *
- * @return void
- */
- function showRelationshipLinks()
- {
- $this->sequenceRelationships($this->page > 1, $this->count > NOTICES_PER_PAGE, // FIXME
- $this->page, 'showstream', array('nickname' => $this->user->nickname));
- }
-
function extraHead()
{
// for remote subscriptions etc.
@@ -319,10 +308,14 @@ class ShowstreamAction extends ProfileAction
$blocked = $cur->hasBlocked($this->profile);
$this->elementStart('li', 'entity_block');
if ($blocked) {
- $ubf = new UnblockForm($this, $this->profile);
+ $ubf = new UnblockForm($this, $this->profile,
+ array('action' => 'showstream',
+ 'nickname' => $this->profile->nickname));
$ubf->show();
} else {
- $bf = new BlockForm($this, $this->profile);
+ $bf = new BlockForm($this, $this->profile,
+ array('action' => 'showstream',
+ 'nickname' => $this->profile->nickname));
$bf->show();
}
$this->elementEnd('li');
diff --git a/actions/tag.php b/actions/tag.php
index 02f3e3522..f5ca06f05 100644
--- a/actions/tag.php
+++ b/actions/tag.php
@@ -51,7 +51,6 @@ class TagAction extends Action
$pop->show();
}
-
function title()
{
if ($this->page == 1) {
@@ -77,17 +76,6 @@ class TagAction extends Action
sprintf(_('Feed for tag %s'), $this->tag)));
}
- /**
- * Output document relationship links
- *
- * @return void
- */
- function showRelationshipLinks()
- {
- $this->sequenceRelationships($this->page > 1, $this->count > NOTICES_PER_PAGE, // FIXME
- $this->page, 'tag', array('tag' => $this->tag));
- }
-
function showPageNotice()
{
return sprintf(_('Messages tagged "%s", most recent first'), $this->tag);
diff --git a/actions/unblock.php b/actions/unblock.php
index 8573b2a87..6e671c9dd 100644
--- a/actions/unblock.php
+++ b/actions/unblock.php
@@ -118,7 +118,7 @@ class UnblockAction extends Action
if ($action) {
common_redirect(common_local_url($action, $args), 303);
} else {
- common_redirect(common_local_url('subscriptions',
+ common_redirect(common_local_url('subscribers',
array('nickname' => $cur->nickname)),
303);
}
diff --git a/classes/Notice.php b/classes/Notice.php
index b4c86ebeb..bca4b22c4 100644
--- a/classes/Notice.php
+++ b/classes/Notice.php
@@ -123,7 +123,12 @@ class Notice extends Memcached_DataObject
$profile = Profile::staticGet($profile_id);
- $final = common_shorten_links($content);
+ $final = common_shorten_links($content);
+
+ if (mb_strlen($final) > 140) {
+ common_log(LOG_INFO, 'Rejecting notice that is too long.');
+ return _('Problem saving notice. Too long.');
+ }
if (!$profile) {
common_log(LOG_ERR, 'Problem saving notice. Unknown user.');
diff --git a/js/util.js b/js/util.js
index 763c7d7ee..23abba6c2 100644
--- a/js/util.js
+++ b/js/util.js
@@ -178,10 +178,14 @@ $(document).ready(function(){
$('#form_notice').append(document._importNode($(".error", xhr.responseXML).get(0), true));
}
else {
- var HTTP20x30x = new Array(200, 201, 202, 203, 204, 205, 206, 300, 301, 302, 303, 304, 305, 306, 307);
+ var HTTP20x30x = [200, 201, 202, 203, 204, 205, 206, 300, 301, 302, 303, 304, 305, 306, 307];
if(jQuery.inArray(parseInt(xhr.status), HTTP20x30x) < 0) {
alert("Sorry! We had trouble sending your notice ("+xhr.status+" "+xhr.statusText+"). Please report the problem to the site administrator if this happens again.");
}
+ else {
+ $("#notice_data-text").val("");
+ counter();
+ }
}
}
},
diff --git a/lib/action.php b/lib/action.php
index 6b130b6d5..7c7c52c2c 100644
--- a/lib/action.php
+++ b/lib/action.php
@@ -124,7 +124,6 @@ class Action extends HTMLOutputter // lawsuit
$this->showShortcutIcon();
$this->showStylesheets();
$this->showScripts();
- $this->showRelationshipLinks();
$this->showOpenSearch();
$this->showFeeds();
$this->showDescription();
@@ -262,19 +261,6 @@ class Action extends HTMLOutputter // lawsuit
}
/**
- * Show document relationship links
- *
- * SHOULD overload
- *
- * @return nothing
- */
- function showRelationshipLinks()
- {
- // output <link> elements with appropriate HTML4.01 link types:
- // http://www.w3.org/TR/html401/types.html#type-links
- }
-
- /**
* Show OpenSearch headers
*
* @return nothing
@@ -1055,36 +1041,4 @@ class Action extends HTMLOutputter // lawsuit
{
return null;
}
-
- /**
- * Generate document metadata for sequential navigation
- *
- * @param boolean $have_before is there something before?
- * @param boolean $have_after is there something after?
- * @param integer $page current page
- * @param string $action current action
- * @param array $args rest of query arguments
- *
- * @return nothing
- */
- function sequenceRelationships($have_next, $have_previous, $page, $action, $args=null)
- {
- // Outputs machine-readable pagination in <link> elements.
- // Pattern taken from $this->pagination() method.
-
- // "next" is equivalent to "after"
- if ($have_next) {
- $pargs = array('page' => $page-1);
- $this->element('link', array('rel' => 'next',
- 'href' => common_local_url($action, $args, $pargs),
- 'title' => _('Next')));
- }
- // "previous" is equivalent to "before"
- if ($have_previous=true) { // FIXME
- $pargs = array('page' => $page+1);
- $this->element('link', array('rel' => 'prev',
- 'href' => common_local_url($action, $args, $pargs),
- 'title' => _('Previous')));
- }
- }
}
diff --git a/lib/router.php b/lib/router.php
index 12590b790..748966567 100644
--- a/lib/router.php
+++ b/lib/router.php
@@ -101,7 +101,7 @@ class Router
$main = array('login', 'logout', 'register', 'subscribe',
'unsubscribe', 'confirmaddress', 'recoverpassword',
'invite', 'favor', 'disfavor', 'sup',
- 'block', 'subedit');
+ 'block', 'unblock', 'subedit');
foreach ($main as $a) {
$m->connect('main/'.$a, array('action' => $a));
diff --git a/scripts/maildaemon.php b/scripts/maildaemon.php
index b9facec1a..9dd647bf4 100755
--- a/scripts/maildaemon.php
+++ b/scripts/maildaemon.php
@@ -66,7 +66,13 @@ class MailerDaemon
return true;
}
$msg = $this->cleanup_msg($msg);
- $this->add_notice($user, $msg);
+ $err = $this->add_notice($user, $msg);
+ if (is_string($err)) {
+ $this->error($from, $err);
+ return false;
+ } else {
+ return true;
+ }
}
function error($from, $msg)
@@ -130,17 +136,15 @@ class MailerDaemon
function add_notice($user, $msg)
{
- // should test
- // $msg_shortened = common_shorten_links($msg);
- // if (mb_strlen($msg_shortened) > 140) ERROR and STOP
$notice = Notice::saveNew($user->id, $msg, 'mail');
if (is_string($notice)) {
$this->log(LOG_ERR, $notice);
- return;
+ return $notice;
}
common_broadcast_notice($notice);
$this->log(LOG_INFO,
'Added notice ' . $notice->id . ' from user ' . $user->nickname);
+ return true;
}
function parse_message($fname)