Merge branch '0.7.x' into 0.8.x

This commit is contained in:
Sarven Capadisli 2009-04-02 06:44:54 +00:00
commit 798984381f
34 changed files with 174 additions and 99 deletions

8
README
View File

@ -1188,10 +1188,10 @@ newuser
Options with new users.
subscribe: nickname of a user account to automatically subscribe new
users to. Typically this would be system account for e.g.
service updates or announcements. Users are able to unsub
if they want. Default is null; no auto subscribe.
default: nickname of a user account to automatically subscribe new
users to. Typically this would be system account for e.g.
service updates or announcements. Users are able to unsub
if they want. Default is null; no auto subscribe.
welcome: nickname of a user account that sends welcome messages to new
users. Can be the same as 'subscribe' account, although on
busy servers it may be a good idea to keep that one just for

View File

@ -93,7 +93,8 @@ class BlockAction extends Action
if ($this->arg('no')) {
$cur = common_current_user();
$other = Profile::staticGet('id', $this->arg('blockto'));
common_redirect(common_local_url('showstream', array('nickname' => $other->nickname)));
common_redirect(common_local_url('showstream', array('nickname' => $other->nickname)),
303);
} elseif ($this->arg('yes')) {
$this->blockProfile();
} elseif ($this->arg('blockto')) {
@ -102,7 +103,6 @@ class BlockAction extends Action
}
}
function showContent() {
$this->areYouSureForm();
}
@ -110,7 +110,7 @@ class BlockAction extends Action
function title() {
return _('Block user');
}
function showNoticeForm() {
// nop
}
@ -178,10 +178,11 @@ class BlockAction extends Action
}
if ($action) {
common_redirect(common_local_url($action, $args));
common_redirect(common_local_url($action, $args), 303);
} else {
common_redirect(common_local_url('subscriptions',
array('nickname' => $cur->nickname)));
array('nickname' => $cur->nickname)),
303);
}
}
}

View File

@ -141,6 +141,6 @@ class DeletenoticeAction extends DeleteAction
$url = common_local_url('public');
}
common_redirect($url);
common_redirect($url, 303);
}
}

View File

@ -49,7 +49,7 @@ class DisfavorAction extends Action
{
/**
* Class handler.
*
*
* @param array $args query arguments
*
* @return void
@ -100,7 +100,8 @@ class DisfavorAction extends Action
$this->elementEnd('html');
} else {
common_redirect(common_local_url('showfavorites',
array('nickname' => $user->nickname)));
array('nickname' => $user->nickname)),
303);
}
}
}

View File

@ -166,7 +166,6 @@ class EditgroupAction extends Action
return;
}
$nickname = common_canonical_nickname($this->trimmed('nickname'));
$fullname = $this->trimmed('fullname');
$homepage = $this->trimmed('homepage');
@ -221,7 +220,7 @@ class EditgroupAction extends Action
if ($this->group->nickname != $orig->nickname) {
common_redirect(common_local_url('editgroup',
array('nickname' => $nickname)),
307);
303);
} else {
$this->showForm(_('Options saved.'));
}

View File

@ -52,7 +52,7 @@ class FavorAction extends Action
{
/**
* Class handler.
*
*
* @param array $args query arguments
*
* @return void
@ -100,13 +100,14 @@ class FavorAction extends Action
$this->elementEnd('html');
} else {
common_redirect(common_local_url('showfavorites',
array('nickname' => $user->nickname)));
array('nickname' => $user->nickname)),
303);
}
}
/**
* Notifies a user when his notice is favorited.
*
*
* @param class $notice favorited notice
* @param class $user user declaring a favorite
*

View File

@ -139,7 +139,7 @@ class FinishaddopenidAction extends Action
oid_set_last($display);
common_redirect(common_local_url('openidsettings'));
common_redirect(common_local_url('openidsettings'), 303);
}
}

View File

@ -271,7 +271,8 @@ class FinishopenidloginAction extends Action
common_rememberme($user);
}
unset($_SESSION['openid_rememberme']);
common_redirect(common_local_url('showstream', array('nickname' => $user->nickname)));
common_redirect(common_local_url('showstream', array('nickname' => $user->nickname)),
303);
}
function connectUser()
@ -324,7 +325,7 @@ class FinishopenidloginAction extends Action
array('nickname' =>
$nickname));
}
common_redirect($url);
common_redirect($url, 303);
}
function bestNewNickname($display, $sreg)

View File

@ -230,7 +230,8 @@ class FinishremotesubscribeAction extends Action
# show up close to the top of the page
common_redirect(common_local_url('subscribers', array('nickname' =>
$user->nickname)));
$user->nickname)),
303);
}
function add_avatar($profile, $url)

View File

@ -143,7 +143,8 @@ class JoingroupAction extends Action
$this->elementEnd('html');
} else {
common_redirect(common_local_url('groupmembers', array('nickname' =>
$this->group->nickname)));
$this->group->nickname)),
303);
}
}
}

View File

@ -147,7 +147,8 @@ class LeavegroupAction extends Action
$this->elementEnd('html');
} else {
common_redirect(common_local_url('groupmembers', array('nickname' =>
$this->group->nickname)));
$this->group->nickname)),
303);
}
}
}

View File

@ -138,7 +138,7 @@ class LoginAction extends Action
$nickname));
}
common_redirect($url);
common_redirect($url, 303);
}
/**

View File

@ -46,10 +46,10 @@ require_once INSTALLDIR.'/lib/openid.php';
*/
class LogoutAction extends Action
{
/**
* This is read only.
*
*
* @return boolean true
*/
function isReadOnly()
@ -59,7 +59,7 @@ class LogoutAction extends Action
/**
* Class handler.
*
*
* @param array $args array of arguments
*
* @return nothing
@ -73,7 +73,7 @@ class LogoutAction extends Action
common_set_user(null);
common_real_login(false); // not logged in
common_forgetme(); // don't log back in!
common_redirect(common_local_url('public'));
common_redirect(common_local_url('public'), 303);
}
}
}

View File

@ -193,7 +193,7 @@ class NewgroupAction extends Action
$group->query('COMMIT');
common_redirect($group->homeUrl(), 307);
common_redirect($group->homeUrl(), 303);
}
function nicknameExists($nickname)

View File

@ -50,7 +50,7 @@ class NudgeAction extends Action
{
/**
* Class handler.
*
*
* @param array $args array of arguments
*
* @return nothing
@ -75,7 +75,7 @@ class NudgeAction extends Action
// CSRF protection
$token = $this->trimmed('token');
if (!$token || $token != common_session_token()) {
$this->clientError(_('There was a problem with your session token. Try again, please.'));
return;
@ -100,7 +100,8 @@ class NudgeAction extends Action
} else {
// display a confirmation to the user
common_redirect(common_local_url('showstream',
array('nickname' => $other->nickname)));
array('nickname' => $other->nickname)),
303);
}
}

View File

@ -166,6 +166,50 @@ class PublicAction extends Action
$nav->show();
}
function showPageNotice()
{
$notice = Notice::publicStream(0, 1);
if (!$notice) {
$this->serverError(_('Could not retrieve public stream.'));
return;
}
// no notices in the public stream, let's get out of here
if ($notice->count()) {
return;
}
$message = _('This is the public timeline for %%site.name%% but noone has posted anything yet.') . ' ';
if (common_logged_in()) {
$message .= _('Be the first to post!');
/*
sprintf(_('You are logged in... %%%%site.name%%%% groups let you find and talk with ' .
'people of similar interests. After you join a group ' .
'you can send messages to all other members using the ' .
'syntax "!groupname". Don\'t see a group you like? Try ' .
'[searching for one](%%%%action.groupsearch%%%%) or ' .
'[start your own!](%%%%action.newgroup%%%%)'));
*/
}
else {
$message .= _('Why not [register an account](%%action.register%%) and be the first to post!');
/*
sprintf(_('You are not logged in... %%%%site.name%%%% groups let you find and talk with ' .
'people of similar interests. After you join a group ' .
'you can send messages to all other members using the ' .
'syntax "!groupname". Don\'t see a group you like? Try ' .
'[searching for one](%%%%action.groupsearch%%%%) or ' .
'[start your own!](%%%%action.newgroup%%%%)'));
*/
}
$this->elementStart('div', 'blankfiller');
$this->raw(common_markup_to_html($message));
$this->elementEnd('div');
}
/**
* Fill the content area
*

View File

@ -99,7 +99,7 @@ class RemotesubscribeAction extends Action
$this->elementStart('fieldset');
$this->element('legend', 'Subscribe to a remote user');
$this->hidden('token', common_session_token());
$this->elementStart('ul', 'form_data');
$this->elementStart('li');
$this->input('nickname', _('User nickname'), $this->nickname,
@ -407,7 +407,7 @@ class RemotesubscribeAction extends Action
# Redirect to authorization service
common_redirect($req->to_url());
common_redirect($req->to_url(), 303);
return;
}
}

View File

@ -488,7 +488,8 @@ class SmssettingsAction extends ConnectSettingsAction
}
common_redirect(common_local_url('confirmaddress',
array('code' => $code)));
array('code' => $code)),
303);
}
/**

View File

@ -85,7 +85,8 @@ class SubeditAction extends Action
}
common_redirect(common_local_url('subscriptions',
array('nickname' => $cur->nickname)));
array('nickname' => $cur->nickname)),
303);
}
}
}

View File

@ -75,7 +75,8 @@ class SubscribeAction extends Action
$this->elementEnd('html');
} else {
common_redirect(common_local_url('subscriptions', array('nickname' =>
$user->nickname)));
$user->nickname)),
303);
}
}
}

View File

@ -33,7 +33,9 @@ class TagAction extends Action
}
if ($this->tag != $taginput) {
common_redirect(common_local_url('tag', array('tag' => $this->tag)));
common_redirect(common_local_url('tag', array('tag' => $this->tag)),
301);
return false;
}
$this->page = ($this->arg('page')) ? ($this->arg('page')+0) : 1;

View File

@ -221,7 +221,8 @@ class TagotherAction extends Action
$this->elementEnd('html');
} else {
common_redirect(common_local_url($action, array('nickname' =>
$user->nickname)));
$user->nickname)),
303);
}
}

View File

@ -116,10 +116,11 @@ class UnblockAction extends Action
}
}
if ($action) {
common_redirect(common_local_url($action, $args));
common_redirect(common_local_url($action, $args), 303);
} else {
common_redirect(common_local_url('subscriptions',
array('nickname' => $cur->nickname)));
array('nickname' => $cur->nickname)),
303);
}
}
}

View File

@ -77,7 +77,8 @@ class UnsubscribeAction extends Action
$this->elementEnd('html');
} else {
common_redirect(common_local_url('subscriptions', array('nickname' =>
$user->nickname)));
$user->nickname)),
303);
}
}
}

View File

@ -13,7 +13,7 @@ create table profile (
index profile_nickname_idx (nickname),
FULLTEXT(nickname, fullname, location, bio, homepage)
) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_general_ci;
create table avatar (
profile_id integer not null comment 'foreign key to profile table' references profile (id),
@ -73,7 +73,7 @@ create table user (
modified timestamp comment 'date this record was modified',
index user_smsemail_idx (smsemail)
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci;
/* remote people */
@ -103,7 +103,6 @@ create table subscription (
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
create table notice (
id integer auto_increment primary key comment 'unique identifier',
profile_id integer not null comment 'who made the update' references profile (id),
uri varchar(255) unique key comment 'universally unique identifier, usually a tag URI',
@ -121,7 +120,7 @@ create table notice (
index notice_conversation_idx (conversation),
index notice_created_idx (created),
FULLTEXT(content)
) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_general_ci;
create table notice_source (
code varchar(32) primary key not null comment 'source code',
@ -132,7 +131,6 @@ create table notice_source (
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
create table reply (
notice_id integer not null comment 'notice that is the reply' references notice (id),
profile_id integer not null comment 'profile replied to' references profile (id),
modified timestamp not null comment 'date this record was modified',
@ -146,7 +144,6 @@ create table reply (
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
create table fave (
notice_id integer not null comment 'notice that is the favorite' references notice (id),
user_id integer not null comment 'user who likes this notice' references user (id),
modified timestamp not null comment 'date this record was modified',
@ -323,7 +320,6 @@ create table invitation (
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
create table message (
id integer auto_increment primary key comment 'unique identifier',
uri varchar(255) unique key comment 'universally unique identifier',
from_profile integer not null comment 'who the message is from' references profile (id),
@ -338,10 +334,9 @@ create table message (
index message_from_idx (from_profile),
index message_to_idx (to_profile),
index message_created_idx (created)
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci;
create table notice_inbox (
user_id integer not null comment 'user receiving the message' references user (id),
notice_id integer not null comment 'notice received' references notice (id),
created datetime not null comment 'date the notice was created',
@ -364,7 +359,6 @@ create table profile_tag (
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
create table profile_block (
blocker integer not null comment 'user making the block' references user (id),
blocked integer not null comment 'profile that is blocked' references profile (id),
modified timestamp comment 'date of blocking',
@ -374,7 +368,6 @@ create table profile_block (
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
create table user_group (
id integer auto_increment primary key comment 'unique identifier',
nickname varchar(64) unique key comment 'nickname for addressing',
@ -393,10 +386,9 @@ create table user_group (
index user_group_nickname_idx (nickname)
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci;
create table group_member (
group_id integer not null comment 'foreign key to user_group' references user_group (id),
profile_id integer not null comment 'foreign key to profile table' references profile (id),
is_admin boolean default false comment 'is this user an admin?',
@ -411,7 +403,6 @@ create table group_member (
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
create table related_group (
group_id integer not null comment 'foreign key to user_group' references user_group (id),
related_group_id integer not null comment 'foreign key to user_group' references user_group (id),

View File

@ -326,7 +326,9 @@ class Action extends HTMLOutputter // lawsuit
*/
function showBody()
{
$this->elementStart('body', array('id' => $this->trimmed('action')));
$this->elementStart('body', (common_current_user()) ? array('id' => $this->trimmed('action'),
'class' => 'user_in')
: array('id' => $this->trimmed('action')));
$this->elementStart('div', array('id' => 'wrap'));
if (Event::handle('StartShowHeader', array($this))) {
$this->showHeader();

View File

@ -160,7 +160,7 @@ function oid_authenticate($openid_url, $returnto, $immediate=false)
$auth_request->addExtension($sreg_request);
}
$trust_root = common_path('');
$trust_root = common_root_url(true);
$process_url = common_local_url($returnto);
if ($auth_request->shouldSendRedirect()) {
@ -171,7 +171,7 @@ function oid_authenticate($openid_url, $returnto, $immediate=false)
} else if (Auth_OpenID::isFailure($redirect_url)) {
return sprintf(_('Could not redirect to server: %s'), $redirect_url->message);
} else {
common_redirect($redirect_url);
common_redirect($redirect_url, 303);
}
} else {
// Generate form markup and render it.

View File

@ -78,9 +78,9 @@ class SettingsAction extends Action
common_set_returnto($this->selfUrl());
$user = common_current_user();
if ($user->hasOpenID()) {
common_redirect(common_local_url('openidlogin'));
common_redirect(common_local_url('openidlogin'), 303);
} else {
common_redirect(common_local_url('login'));
common_redirect(common_local_url('login'), 303);
}
} else if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$this->handlePost();

View File

@ -850,7 +850,7 @@ function common_redirect($url, $code=307)
303 => "See Other",
307 => "Temporary Redirect");
header("Status: ${code} $status[$code]");
header('HTTP/1.1 '.$code.' '.$status[$code]);
header("Location: $url");
$xo = new XMLOutputter();
@ -952,9 +952,9 @@ function common_profile_url($nickname)
// Should make up a reasonable root URL
function common_root_url()
function common_root_url($ssl=false)
{
return common_path('');
return common_path('', $ssl);
}
// returns $bytes bytes of random data as a hexadecimal string

View File

@ -250,6 +250,7 @@ position:absolute;
top:65px;
right:18px;
width:250px;
width:24%;
}
#page_notice {
clear:both;
@ -259,9 +260,8 @@ margin-bottom:18px;
#anon_notice {
float:left;
width:432px;
width:28.052em;
padding:11px;
width:43.2%;
padding:1.1%;
border-radius:7px;
-moz-border-radius:7px;
-webkit-border-radius:7px;
@ -369,7 +369,9 @@ margin-right:4px;
#wrap {
margin:0 auto;
width:1003px;
width:100%;
min-width:760px;
max-width:1003px;
overflow:hidden;
}
@ -381,14 +383,16 @@ margin-bottom:1em;
}
#content {
width:644px;
padding:18px;
width:64.009%;
padding:1.795%;
float:left;
border-radius:7px;
-moz-border-radius:7px;
-moz-border-radius-topleft:0;
-webkit-border-radius:7px;
-webkit-border-top-left-radius:0;
border-style:solid;
border-width:1px;
}
#content_inner {
@ -398,10 +402,10 @@ float:left;
}
#aside_primary {
width:280px;
width:27.917%;
float:left;
margin-left:4px;
padding:18px;
margin-left:0.395%;
padding:1.795%;
border-radius:7px;
-moz-border-radius:7px;
-webkit-border-radius:7px;
@ -409,9 +413,8 @@ border-width:1px;
border-style:solid;
}
/*Start: FORM NOTICE*/
#form_notice {
width:458px;
width:45.664%;
float:left;
position:relative;
line-height:1;
@ -428,7 +431,7 @@ float:left;
border-radius:7px;
-moz-border-radius:7px;
-webkit-border-radius:7px;
width:370px;
width:80.789%;
height:67px;
line-height:1.5;
padding:7px 7px 16px 7px;
@ -458,8 +461,9 @@ line-height:1.15;
padding:1px 2px;
}
#form_notice #notice_action-submit {
width:60px;
padding:8px;
width:14%;
height:47px;
padding:0;
position:absolute;
bottom:0;
right:0;
@ -472,13 +476,12 @@ margin-bottom:7px;
margin-left:18px;
float:left;
}
/*end FORM NOTICE*/
/* entity_profile */
.entity_profile {
position:relative;
width:475px;
width:67.702%;
min-height:123px;
float:left;
margin-bottom:18px;
@ -508,7 +511,6 @@ margin-bottom:18px;
.entity_profile .entity_tags {
margin-left:113px;
margin-bottom:4px;
width:322px;
}
.entity_profile .entity_fn,
@ -536,14 +538,14 @@ display:none;
.entity_profile h2 {
display:none;
}
/* entity_profile */
/*entity_actions*/
.entity_actions {
float:right;
margin-left:28px;
margin-left:4.35%;
max-width:25%;
}
.entity_actions h2 {
display:none;
@ -911,8 +913,6 @@ display:none;
border:0;
padding:0;
}
/*END: NOTICES */
#new_group, #group_search {

View File

@ -1,8 +1,21 @@
/* IE specific styles */
#aside_primary {
padding-left:11px;
legend {
margin-left:-7px;
}
input.checkbox {
top:0;
}
#form_notice textarea {
width:78%;
}
#form_notice #notice_action-submit {
width:17%;
max-width:17%;
}
#anon_notice {
max-width:39%;
}
.notice-options input.submit {
font-size:0;
margin-top:3px;
@ -11,15 +24,9 @@ text-align:right;
text-indent:0;
width:24px;
}
input.checkbox {
top:0;
}
legend {
margin-left:-7px;
}
.notice div.entry-content .timestamp a {
margin-right:4px;
}
.entity_profile {
width:64%;
}

View File

@ -1,4 +1,17 @@
/* IE6 specific styles */
address {
margin-left:7px;
}
address .fn {
display:none;
}
#content {
width:70%;
}
#aside_primary {
padding:5%;
width:29.5%;
}
.entity_profile .entity_nickname,
.entity_profile .entity_location,
.entity_profile .entity_url,
@ -9,6 +22,9 @@ margin-left:0;
.entity_profile .entity_depiction {
margin-bottom:123px;
}
.entity_actions {
width:20%;
}
.notice div.entry-content {
width:63%;
}

View File

@ -17,7 +17,7 @@ font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;
font-size:1em;
}
address {
margin-right:71px;
margin-right:7.18%;
}
input, textarea, select, option {

View File

@ -17,7 +17,7 @@ font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;
font-size:1em;
}
address {
margin-right:71px;
margin-right:7.18%;
}
input, textarea, select, option {