diff --git a/actions/opensearch.php b/actions/opensearch.php
index 7709249bb1..2eb8183066 100644
--- a/actions/opensearch.php
+++ b/actions/opensearch.php
@@ -67,7 +67,7 @@ class OpensearchAction extends Action
$short_name = _('Notice Search');
}
header('Content-Type: text/html');
- common_start_xml();
+ $this->startXML();
$this->elementStart('OpenSearchDescription', array('xmlns' => 'http://a9.com/-/spec/opensearch/1.1/'));
$short_name = common_config('site', 'name').' '.$short_name;
$this->element('ShortName', null, $short_name);
@@ -81,7 +81,7 @@ class OpensearchAction extends Action
$this->element('OutputEncoding', null, 'UTF-8');
$this->element('InputEncoding', null, 'UTF-8');
$this->elementEnd('OpenSearchDescription');
- common_end_xml();
+ $this->endXML();
}
function isReadOnly()
diff --git a/actions/showstream.php b/actions/showstream.php
index eab1fc0a2d..ecd9526353 100644
--- a/actions/showstream.php
+++ b/actions/showstream.php
@@ -312,14 +312,22 @@ class ShowstreamAction extends Action
}
$this->elementEnd('div');
- //XXX: entity_actions doesn't need to be outputted if entity is looking at their own profile
$this->elementStart('div', 'entity_actions');
$this->element('h2', null, _('User actions'));
$this->elementStart('ul');
- $this->elementStart('li', array('class' => 'entity_subscribe'));
$cur = common_current_user();
+
+ if ($cur && $cur->id == $this->profile->id) {
+ $this->elementStart('li', 'entity_edit');
+ $this->element('a', array('href' => common_local_url('profilesettings'),
+ 'title' => _('Edit profile settings')),
+ _('Edit'));
+ $this->elementEnd('li');
+ }
+
if ($cur) {
if ($cur->id != $this->profile->id) {
+ $this->elementStart('li', 'entity_subscribe');
if ($cur->isSubscribed($this->profile)) {
$usf = new UnsubscribeForm($this, $this->profile);
$usf->show();
@@ -327,24 +335,24 @@ class ShowstreamAction extends Action
$sf = new SubscribeForm($this, $this->profile);
$sf->show();
}
+ $this->elementEnd('li');
}
} else {
+ $this->elementStart('li', 'entity_subscribe');
$this->showRemoteSubscribeLink();
+ $this->elementEnd('li');
}
- $this->elementEnd('li');
-
-// common_profile_new_message_nudge($cur, $this->user, $this->profile);
$user = User::staticGet('id', $this->profile->id);
if ($cur && $cur->id != $user->id && $cur->mutuallySubscribed($user)) {
- $this->elementStart('li', array('class' => 'entity_send-a-message'));
+ $this->elementStart('li', 'entity_send-a-message');
$this->element('a', array('href' => common_local_url('newmessage', array('to' => $user->id)),
'title' => _('Send a direct message to this user')),
_('Message'));
$this->elementEnd('li');
if ($user->email && $user->emailnotifynudge) {
- $this->elementStart('li', array('class' => 'entity_nudge'));
+ $this->elementStart('li', 'entity_nudge');
$nf = new NudgeForm($this, $user);
$nf->show();
$this->elementEnd('li');
@@ -353,7 +361,7 @@ class ShowstreamAction extends Action
if ($cur && $cur->id != $this->profile->id) {
$blocked = $cur->hasBlocked($this->profile);
- $this->elementStart('li', array('class' => 'entity_block'));
+ $this->elementStart('li', 'entity_block');
if ($blocked) {
$ubf = new UnblockForm($this, $this->profile);
$ubf->show();
diff --git a/classes/Channel.php b/classes/Channel.php
index 2e3e4e8d4a..c03efef481 100644
--- a/classes/Channel.php
+++ b/classes/Channel.php
@@ -19,7 +19,7 @@
if (!defined('LACONICA')) { exit(1); }
-class Channel
+class Channel extends Action
{
function on($user)
@@ -129,6 +129,7 @@ class WebChannel extends Channel
# XXX: buffer all output and send it at the end
# XXX: even better, redirect to appropriate page
# depending on what command was run
+
common_show_header(_('Command results'));
common_element('p', null, $text);
common_show_footer();
@@ -146,26 +147,26 @@ class AjaxWebChannel extends WebChannel
function output($user, $text)
{
- common_start_html('text/xml;charset=utf-8', true);
- common_element_start('head');
- common_element('title', null, _('Command results'));
- common_element_end('head');
- common_element_start('body');
- common_element('p', array('id' => 'command_result'), $text);
- common_element_end('body');
- common_element_end('html');
+ $this->startHTML('text/xml;charset=utf-8', true);
+ $this->elementStart('head');
+ $this->element('title', null, _('Command results'));
+ $this->elementEnd('head');
+ $this->elementStart('body');
+ $this->element('p', array('id' => 'command_result'), $text);
+ $this->elementEnd('body');
+ $this->elementEnd('html');
}
function error($user, $text)
{
- common_start_html('text/xml;charset=utf-8', true);
- common_element_start('head');
- common_element('title', null, _('Ajax Error'));
- common_element_end('head');
- common_element_start('body');
- common_element('p', array('id' => 'error'), $text);
- common_element_end('body');
- common_element_end('html');
+ $this->startHTML('text/xml;charset=utf-8', true);
+ $this->elementStart('head');
+ $this->element('title', null, _('Ajax error'));
+ $this->elementEnd('head');
+ $this->elementStart('body');
+ $this->element('p', array('id' => 'error'), $text);
+ $this->elementEnd('body');
+ $this->elementEnd('html');
}
}
diff --git a/lib/action.php b/lib/action.php
index 587d2ab13a..f9b0688786 100644
--- a/lib/action.php
+++ b/lib/action.php
@@ -162,15 +162,15 @@ class Action extends HTMLOutputter // lawsuit
'media' => 'screen, projection, tv'));
$this->comment('[if IE]>comment('[if IE]>comment('[if lte IE '.$ver.']>comment('[if IE]>elementStart('body', array('id' => $this->trimmed('action')));
- $this->elementStart('div', 'wrap');
+ $this->elementStart('div', array('id' => 'wrap'));
$this->showHeader();
$this->showCore();
$this->showFooter();
diff --git a/lib/noticelist.php b/lib/noticelist.php
index 7c88c33cc4..3ef6691afa 100644
--- a/lib/noticelist.php
+++ b/lib/noticelist.php
@@ -203,11 +203,14 @@ class NoticeListItem extends Widget
function showNoticeOptions()
{
- $this->out->elementStart('div', 'notice-options');
- $this->showFaveForm();
- $this->showReplyLink();
- $this->showDeleteLink();
- $this->out->elementEnd('div');
+ $user = common_current_user();
+ if ($user) {
+ $this->out->elementStart('div', 'notice-options');
+ $this->showFaveForm();
+ $this->showReplyLink();
+ $this->showDeleteLink();
+ $this->out->elementEnd('div');
+ }
}
/**
diff --git a/lib/popularnoticesection.php b/lib/popularnoticesection.php
index 89daaa563c..5734d80018 100644
--- a/lib/popularnoticesection.php
+++ b/lib/popularnoticesection.php
@@ -31,7 +31,7 @@ if (!defined('LACONICA')) {
exit(1);
}
-define('NOTICES_PER_SECTION', 6);
+define('NOTICES_PER_SECTION', 5);
/**
* Base class for sections showing lists of notices
diff --git a/theme/base/css/display.css b/theme/base/css/display.css
index 809c1ba6f8..242818c9a0 100644
--- a/theme/base/css/display.css
+++ b/theme/base/css/display.css
@@ -20,8 +20,6 @@ font-family:sans-serif;
font-size:1em;
line-height:1.65;
position:relative;
-margin:0 auto;
-width:71.714em;
}
h1,h2,h3,h4,h5,h6 {
text-transform:uppercase;
@@ -240,10 +238,9 @@ display:none;
#site_notice {
position:absolute;
-right:0;
-top:49px;
-float:right;
-width:300px;
+top:65px;
+right:18px;
+width:250px;
}
#page_notice {
clear:both;
@@ -254,6 +251,7 @@ margin-bottom:18px;
#anon_notice {
float:left;
width:432px;
+width:28.052em;
padding:11px;
border-radius:7px;
-moz-border-radius:7px;
@@ -361,9 +359,10 @@ margin-right:4px;
}
#wrap {
-float:left;
margin:0 auto;
width:71.714em;
+width:1003px;
+overflow:hidden;
}
#core {
@@ -391,9 +390,9 @@ float:left;
}
#aside_primary {
-width:284px;
+width:280px;
float:left;
-margin-left:2px;
+margin-left:4px;
padding:18px;
border-radius:7px;
-moz-border-radius:7px;
@@ -606,12 +605,14 @@ display:block;
.form_user_block input.submit,
.form_user_unblock input.submit,
.entity_send-a-message a,
+.entity_edit a,
.form_user_nudge input.submit,
.entity_nudge p {
border:0;
padding-left:20px;
}
+.entity_edit a,
.entity_send-a-message a,
.entity_nudge p {
padding:4px 4px 4px 23px;
@@ -749,7 +750,7 @@ border-radius:4px;
/* NOTICES */
#notices_primary {
float:left;
-width:644px;
+width:100%;
border-radius:7px;
-moz-border-radius:7px;
-webkit-border-radius:7px;
@@ -1063,13 +1064,16 @@ margin-bottom:0;
}
.section .notice {
-padding-top:11px;
-padding-bottom:11px;
+padding-top:7px;
+padding-bottom:7px;
+border-top:0;
}
.section .notice:first-child {
padding-top:0;
-border-top:0;
+}
+.section .notice .fn {
+display:none;
}
@@ -1154,3 +1158,4 @@ clear:both;
#form_settings_avatar .form_actions {
margin-bottom:0;
}
+
diff --git a/theme/base/images/icons/icon_atom.jpg b/theme/base/images/icons/icon_atom.jpg
deleted file mode 100644
index 22853edc43..0000000000
Binary files a/theme/base/images/icons/icon_atom.jpg and /dev/null differ
diff --git a/theme/base/images/icons/icon_atom.png b/theme/base/images/icons/icon_atom.png
new file mode 100644
index 0000000000..6a001f11aa
Binary files /dev/null and b/theme/base/images/icons/icon_atom.png differ
diff --git a/theme/base/images/icons/icon_rss.jpg b/theme/base/images/icons/icon_rss.jpg
deleted file mode 100644
index da23422d06..0000000000
Binary files a/theme/base/images/icons/icon_rss.jpg and /dev/null differ
diff --git a/theme/base/images/icons/icon_rss.png b/theme/base/images/icons/icon_rss.png
new file mode 100644
index 0000000000..0ccd1ce254
Binary files /dev/null and b/theme/base/images/icons/icon_rss.png differ
diff --git a/theme/default/css/display.css b/theme/default/css/display.css
index 97a6a12a8f..da1ba67173 100644
--- a/theme/default/css/display.css
+++ b/theme/default/css/display.css
@@ -67,7 +67,6 @@ color:#002E6E;
.profile {
border-top-color:#D1D9E4;
}
-.section .notice,
.section .profile {
border-top-color:#97BFD1;
}
@@ -92,12 +91,6 @@ color:#333;
color:#000;
}
-#form_notice #notice_data-attach_view {
-background-image:url(../images/icons/twotone/green/paper-clip.gif);
-background-repeat:no-repeat;
-background-position:0 45%;
-background-color:transparent;
-}
#nav_register a {
text-decoration:none;
@@ -123,8 +116,6 @@ background-color:rgba(255, 255, 255, 0.7);
}
-
-
#page_notice .error {
background-color:#F7E8E8;
}
@@ -144,26 +135,21 @@ background-color:#A9BF4F;
}
-
-
#export_data li a {
background-repeat:no-repeat;
background-position:0 45%;
}
#export_data li a.rss {
-background-image:url(../../base/images/icons/icon_rss.jpg);
+background-image:url(../../base/images/icons/icon_rss.png);
}
#export_data li a.atom {
-background-image:url(../../base/images/icons/icon_atom.jpg);
+background-image:url(../../base/images/icons/icon_atom.png);
}
#export_data li a.foaf {
background-image:url(../../base/images/icons/icon_foaf.gif);
}
-#export_data li a.export_vcard {
-background-image:url(../../base/images/icons/icon_vcard.gif);
-}
-
+.entity_edit a,
.entity_send-a-message a,
.form_user_nudge input.submit,
.form_user_block input.submit,
@@ -185,6 +171,9 @@ color:#fff;
background-color:#97BFD1;
}
+.entity_edit a {
+background-image:url(../images/icons/twotone/green/edit.gif);
+}
.entity_send-a-message a {
background-image:url(../images/icons/twotone/green/quote.gif);
}
@@ -204,30 +193,6 @@ background-image:url(../images/icons/twotone/green/shield.gif);
background-color:#fcfcfc;
}
-.notice-data a span {
-background-color:transparent;
-background-repeat:no-repeat;
-background-position:0 45%;
-}
-.notice_video .notice-data a span {
-background-image:url(../images/icons/twotone/green/camera.gif);
-}
-.notice_audio .notice-data a span {
-background-image:url(../images/icons/twotone/green/music.gif);
-}
-.notice_image .notice-data a span {
-background-image:url(../images/icons/twotone/green/search.gif);
-}
-.notice_event .notice-data a span {
-background-image:url(../images/icons/twotone/green/calendar.gif);
-}
-.notice_location .notice-data a span {
-background-image:url(../images/icons/twotone/green/flag.gif);
-}
-.notice_document .notice-data a span {
-background-image:url(../images/icons/twotone/green/document.gif);
-}
-
.notice-options .notice_reply a,
.notice-options form input.submit {
background-color:transparent;
@@ -274,12 +239,13 @@ background:transparent url(../images/icons/twotone/green/news.gif) no-repeat 0 4
.pagination .nav_prev a,
.pagination .nav_next a {
background-repeat:no-repeat;
+border-color:#D1D9E4;
}
.pagination .nav_prev a {
background-image:url(../images/icons/twotone/green/arrow-left.gif);
-background-position:0 45%;
+background-position:10% 45%;
}
.pagination .nav_next a {
background-image:url(../images/icons/twotone/green/arrow-right.gif);
-background-position:100% 45%;
+background-position:90% 45%;
}
diff --git a/theme/default/css/ie.css b/theme/default/css/ie.css
new file mode 100644
index 0000000000..2b06768ea4
--- /dev/null
+++ b/theme/default/css/ie.css
@@ -0,0 +1,9 @@
+/* IE specific styles */
+
+.notice-options input.submit {
+color:#fff;
+}
+
+#site_nav_local_views a {
+background-color:#ACCCDA;
+}
diff --git a/theme/identica/css/display.css b/theme/identica/css/display.css
index beb5a2c13d..6fcd730a90 100644
--- a/theme/identica/css/display.css
+++ b/theme/identica/css/display.css
@@ -67,7 +67,6 @@ color:#002E6E;
.profile {
border-top-color:#CEE1E9;
}
-.section .notice,
.section .profile {
border-top-color:#87B4C8;
}
@@ -92,12 +91,6 @@ color:#333;
color:#000;
}
-#form_notice #notice_data-attach_view {
-background-image:url(../images/icons/twotone/green/paper-clip.gif);
-background-repeat:no-repeat;
-background-position:0 45%;
-background-color:transparent;
-}
#nav_register a {
text-decoration:none;
@@ -123,8 +116,6 @@ background-color:rgba(255, 255, 255, 0.7);
}
-
-
#page_notice .error {
background-color:#F7E8E8;
}
@@ -144,26 +135,21 @@ background-color:#9BB43E;
}
-
-
#export_data li a {
background-repeat:no-repeat;
background-position:0 45%;
}
#export_data li a.rss {
-background-image:url(../../base/images/icons/icon_rss.jpg);
+background-image:url(../../base/images/icons/icon_rss.png);
}
#export_data li a.atom {
-background-image:url(../../base/images/icons/icon_atom.jpg);
+background-image:url(../../base/images/icons/icon_atom.png);
}
#export_data li a.foaf {
background-image:url(../../base/images/icons/icon_foaf.gif);
}
-#export_data li a.export_vcard {
-background-image:url(../../base/images/icons/icon_vcard.gif);
-}
-
+.entity_edit a,
.entity_send-a-message a,
.form_user_nudge input.submit,
.form_user_block input.submit,
@@ -185,6 +171,9 @@ color:#fff;
background-color:#87B4C8;
}
+.entity_edit a {
+background-image:url(../images/icons/twotone/green/edit.gif);
+}
.entity_send-a-message a {
background-image:url(../images/icons/twotone/green/quote.gif);
}
@@ -204,30 +193,6 @@ background-image:url(../images/icons/twotone/green/shield.gif);
background-color:#fcfcfc;
}
-.notice-data a span {
-background-color:transparent;
-background-repeat:no-repeat;
-background-position:0 45%;
-}
-.notice_video .notice-data a span {
-background-image:url(../images/icons/twotone/green/camera.gif);
-}
-.notice_audio .notice-data a span {
-background-image:url(../images/icons/twotone/green/music.gif);
-}
-.notice_image .notice-data a span {
-background-image:url(../images/icons/twotone/green/search.gif);
-}
-.notice_event .notice-data a span {
-background-image:url(../images/icons/twotone/green/calendar.gif);
-}
-.notice_location .notice-data a span {
-background-image:url(../images/icons/twotone/green/flag.gif);
-}
-.notice_document .notice-data a span {
-background-image:url(../images/icons/twotone/green/document.gif);
-}
-
.notice-options .notice_reply a,
.notice-options form input.submit {
background-color:transparent;