Merge branch 'master' into testing
Conflicts: plugins/Blacklist/BlacklistPlugin.php
87
README
@ -2,8 +2,8 @@
|
|||||||
README
|
README
|
||||||
------
|
------
|
||||||
|
|
||||||
StatusNet 0.9.0 ("Stand")
|
StatusNet 0.9.1 ("Everybody Hurts")
|
||||||
4 Mar 2010
|
28 Mar 2010
|
||||||
|
|
||||||
This is the README file for StatusNet, the Open Source microblogging
|
This is the README file for StatusNet, the Open Source microblogging
|
||||||
platform. It includes installation instructions, descriptions of
|
platform. It includes installation instructions, descriptions of
|
||||||
@ -77,57 +77,34 @@ for additional terms.
|
|||||||
New this version
|
New this version
|
||||||
================
|
================
|
||||||
|
|
||||||
This is a major feature release since version 0.8.3, released Feb 1
|
This is a minor bug and feature release since version 0.9.0 released 4
|
||||||
2010. It is the final release version of 0.9.0, replacing any beta
|
March 2010.
|
||||||
versions.
|
|
||||||
|
Because of fixes to OStatus bugs, it is highly recommended that all
|
||||||
|
public sites upgrade to the new version immediately.
|
||||||
|
|
||||||
Notable changes this version:
|
Notable changes this version:
|
||||||
|
|
||||||
- Support for the new distributed status update standard OStatus
|
- Twitter bridge truncates and links back to original for long
|
||||||
<http://ostatus.org>, based on PubSubHubbub, Salmon, Webfinger,
|
notices.
|
||||||
and Activity Streams.
|
- Changed "Home" link in main menu to "Personal".
|
||||||
- Support for location using the Geolocation API. Notices are (optionally)
|
- A new memcached plugin (using pecl/memcached versus pecl/memcache)
|
||||||
marked with lat-long information with geo microformats, and can be shown
|
- Opt-in subscription to update@status.net
|
||||||
on a map.
|
- Script to run commands on behalf of a user.
|
||||||
- No fixed content size. Notice size is configurable, from 1 to
|
- Better Web UI for long notices.
|
||||||
unlimited number of characters. Default is still 140!
|
- A plugin to open external links in their own window or tab
|
||||||
- An authorization framework, allowing different levels of users.
|
- Fixes to Salmon protocol for compatibility with other systems.
|
||||||
- A Web-based administration panel.
|
- Updates to latest ActivityStreams definition.
|
||||||
- A moderation system that lets site moderators sandbox, silence,
|
- Twitpic-compatible API for image upload.
|
||||||
or delete uncooperative users.
|
- Background deletion of user accounts.
|
||||||
- A flag system that lets users flag profiles for moderator review.
|
- Better support for HTTP basic authentication with CGI/FastCGI
|
||||||
- Support for OAuth <http://oauth.net> authentication in the Twitter
|
- Better discovery on OStatus
|
||||||
API.
|
- Support for PuSH-enabled RSS 2.0 feeds
|
||||||
- User roles system that lets the owner of the site to assign
|
- OpenID-only mode
|
||||||
administrator and moderator roles to other users.
|
- OpenID blacklist/whitelist
|
||||||
- A pluggable authentication system.
|
- OStatus unit tests
|
||||||
- An authentication plugin for LDAP servers.
|
|
||||||
- Many features that were core in 0.8.x are now plugins, such
|
|
||||||
as OpenID, Twitter integration, Facebook integration
|
|
||||||
- A much-improved offline processing system
|
|
||||||
- In-browser "realtime" updates using a number of realtime
|
|
||||||
servers (Meteor, Orbited, Cometd)
|
|
||||||
- A plugin to provide an interface optimized for mobile browsers
|
|
||||||
- Support for Facebook Connect
|
|
||||||
- Support for logging in with a Twitter account
|
|
||||||
- Vastly improved translation with additional languages and
|
|
||||||
translation in plugins
|
|
||||||
- Support for all-SSL instances
|
|
||||||
- Core support for "repeats" (like Twitter's "retweets")
|
|
||||||
- Pluggable caching system, with plugins for Memcached,
|
|
||||||
APC, XCache, and a disk-based cache
|
|
||||||
- Plugin to support RSSCloud
|
|
||||||
- A framework for adding advertisements to a public site,
|
|
||||||
and plugins for Google AdSense and OpenX server
|
|
||||||
- Plugins to throttle excessive subscriptions and registrations.
|
|
||||||
- A plugin to blacklist particular URLs or nicknames.
|
|
||||||
|
|
||||||
There are also literally thousands of bugs fixed and minor features
|
A full changelog is available at http://status.net/wiki/StatusNet_0.9.1.
|
||||||
added. A full changelog is available at http://status.net/wiki/StatusNet_0.9.0.
|
|
||||||
|
|
||||||
Under the covers, the software has a vastly improved plugin and
|
|
||||||
extension mechanism that makes writing powerful and flexible additions
|
|
||||||
to the core functionality much easier.
|
|
||||||
|
|
||||||
Prerequisites
|
Prerequisites
|
||||||
=============
|
=============
|
||||||
@ -239,9 +216,9 @@ especially if you've previously installed PHP/MySQL packages.
|
|||||||
1. Unpack the tarball you downloaded on your Web server. Usually a
|
1. Unpack the tarball you downloaded on your Web server. Usually a
|
||||||
command like this will work:
|
command like this will work:
|
||||||
|
|
||||||
tar zxf statusnet-0.9.0.tar.gz
|
tar zxf statusnet-0.9.1.tar.gz
|
||||||
|
|
||||||
...which will make a statusnet-0.9.0 subdirectory in your current
|
...which will make a statusnet-0.9.1 subdirectory in your current
|
||||||
directory. (If you don't have shell access on your Web server, you
|
directory. (If you don't have shell access on your Web server, you
|
||||||
may have to unpack the tarball on your local computer and FTP the
|
may have to unpack the tarball on your local computer and FTP the
|
||||||
files to the server.)
|
files to the server.)
|
||||||
@ -249,7 +226,7 @@ especially if you've previously installed PHP/MySQL packages.
|
|||||||
2. Move the tarball to a directory of your choosing in your Web root
|
2. Move the tarball to a directory of your choosing in your Web root
|
||||||
directory. Usually something like this will work:
|
directory. Usually something like this will work:
|
||||||
|
|
||||||
mv statusnet-0.9.0 /var/www/statusnet
|
mv statusnet-0.9.1 /var/www/statusnet
|
||||||
|
|
||||||
This will make your StatusNet instance available in the statusnet path of
|
This will make your StatusNet instance available in the statusnet path of
|
||||||
your server, like "http://example.net/statusnet". "microblog" or
|
your server, like "http://example.net/statusnet". "microblog" or
|
||||||
@ -664,7 +641,7 @@ with this situation.
|
|||||||
If you've been using StatusNet 0.7, 0.6, 0.5 or lower, or if you've
|
If you've been using StatusNet 0.7, 0.6, 0.5 or lower, or if you've
|
||||||
been tracking the "git" version of the software, you will probably
|
been tracking the "git" version of the software, you will probably
|
||||||
want to upgrade and keep your existing data. There is no automated
|
want to upgrade and keep your existing data. There is no automated
|
||||||
upgrade procedure in StatusNet 0.9.0. Try these step-by-step
|
upgrade procedure in StatusNet 0.9.1. Try these step-by-step
|
||||||
instructions; read to the end first before trying them.
|
instructions; read to the end first before trying them.
|
||||||
|
|
||||||
0. Download StatusNet and set up all the prerequisites as if you were
|
0. Download StatusNet and set up all the prerequisites as if you were
|
||||||
@ -685,7 +662,7 @@ instructions; read to the end first before trying them.
|
|||||||
5. Once all writing processes to your site are turned off, make a
|
5. Once all writing processes to your site are turned off, make a
|
||||||
final backup of the Web directory and database.
|
final backup of the Web directory and database.
|
||||||
6. Move your StatusNet directory to a backup spot, like "statusnet.bak".
|
6. Move your StatusNet directory to a backup spot, like "statusnet.bak".
|
||||||
7. Unpack your StatusNet 0.9.0 tarball and move it to "statusnet" or
|
7. Unpack your StatusNet 0.9.1 tarball and move it to "statusnet" or
|
||||||
wherever your code used to be.
|
wherever your code used to be.
|
||||||
8. Copy the config.php file and avatar directory from your old
|
8. Copy the config.php file and avatar directory from your old
|
||||||
directory to your new directory.
|
directory to your new directory.
|
||||||
@ -1522,7 +1499,7 @@ repository (see below), and you get a compilation error ("unexpected
|
|||||||
T_STRING") in the browser, check to see that you don't have any
|
T_STRING") in the browser, check to see that you don't have any
|
||||||
conflicts in your code.
|
conflicts in your code.
|
||||||
|
|
||||||
If you upgraded to StatusNet 0.9.0 without reading the "Notice
|
If you upgraded to StatusNet 0.9.1 without reading the "Notice
|
||||||
inboxes" section above, and all your users' 'Personal' tabs are empty,
|
inboxes" section above, and all your users' 'Personal' tabs are empty,
|
||||||
read the "Notice inboxes" section above.
|
read the "Notice inboxes" section above.
|
||||||
|
|
||||||
|
@ -221,7 +221,8 @@ class ShowgroupAction extends GroupDesignAction
|
|||||||
|
|
||||||
function showGroupProfile()
|
function showGroupProfile()
|
||||||
{
|
{
|
||||||
$this->elementStart('div', 'entity_profile vcard author');
|
$this->elementStart('div', array('id' => 'i',
|
||||||
|
'class' => 'entity_profile vcard author'));
|
||||||
|
|
||||||
$this->element('h2', null, _('Group profile'));
|
$this->element('h2', null, _('Group profile'));
|
||||||
|
|
||||||
|
@ -196,12 +196,30 @@ class SubscriptionsListItem extends SubscriptionListItem
|
|||||||
$this->out->hidden('token', common_session_token());
|
$this->out->hidden('token', common_session_token());
|
||||||
$this->out->hidden('profile', $this->profile->id);
|
$this->out->hidden('profile', $this->profile->id);
|
||||||
if (common_config('xmpp', 'enabled')) {
|
if (common_config('xmpp', 'enabled')) {
|
||||||
$this->out->checkbox('jabber', _('Jabber'), $sub->jabber);
|
$attrs = array('name' => 'jabber',
|
||||||
|
'type' => 'checkbox',
|
||||||
|
'class' => 'checkbox',
|
||||||
|
'id' => 'jabber-'.$this->profile->id);
|
||||||
|
if ($sub->jabber) {
|
||||||
|
$attrs['checked'] = 'checked';
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->out->element('input', $attrs);
|
||||||
|
$this->out->element('label', array('for' => 'jabber-'.$this->profile->id), _('Jabber'));
|
||||||
} else {
|
} else {
|
||||||
$this->out->hidden('jabber', $sub->jabber);
|
$this->out->hidden('jabber', $sub->jabber);
|
||||||
}
|
}
|
||||||
if (common_config('sms', 'enabled')) {
|
if (common_config('sms', 'enabled')) {
|
||||||
$this->out->checkbox('sms', _('SMS'), $sub->sms);
|
$attrs = array('name' => 'sms',
|
||||||
|
'type' => 'checkbox',
|
||||||
|
'class' => 'checkbox',
|
||||||
|
'id' => 'sms-'.$this->profile->id);
|
||||||
|
if ($sub->sms) {
|
||||||
|
$attrs['checked'] = 'checked';
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->out->element('input', $attrs);
|
||||||
|
$this->out->element('label', array('for' => 'sms-'.$this->profile->id), _('SMS'));
|
||||||
} else {
|
} else {
|
||||||
$this->out->hidden('sms', $sub->sms);
|
$this->out->hidden('sms', $sub->sms);
|
||||||
}
|
}
|
||||||
|
@ -670,8 +670,12 @@ class User extends Memcached_DataObject
|
|||||||
|
|
||||||
function delete()
|
function delete()
|
||||||
{
|
{
|
||||||
$profile = $this->getProfile();
|
try {
|
||||||
$profile->delete();
|
$profile = $this->getProfile();
|
||||||
|
$profile->delete();
|
||||||
|
} catch (UserNoProfileException $unp) {
|
||||||
|
common_log(LOG_INFO, "User {$this->nickname} has no profile; continuing deletion.");
|
||||||
|
}
|
||||||
|
|
||||||
$related = array('Fave',
|
$related = array('Fave',
|
||||||
'Confirm_address',
|
'Confirm_address',
|
||||||
@ -679,6 +683,7 @@ class User extends Memcached_DataObject
|
|||||||
'Foreign_link',
|
'Foreign_link',
|
||||||
'Invitation',
|
'Invitation',
|
||||||
);
|
);
|
||||||
|
|
||||||
Event::handle('UserDeleteRelated', array($this, &$related));
|
Event::handle('UserDeleteRelated', array($this, &$related));
|
||||||
|
|
||||||
foreach ($related as $cls) {
|
foreach ($related as $cls) {
|
||||||
|
128
js/util.js
@ -61,10 +61,8 @@ var SN = { // StatusNet
|
|||||||
|
|
||||||
U: { // Utils
|
U: { // Utils
|
||||||
FormNoticeEnhancements: function(form) {
|
FormNoticeEnhancements: function(form) {
|
||||||
form_id = form.attr('id');
|
|
||||||
|
|
||||||
if (jQuery.data(form[0], 'ElementData') === undefined) {
|
if (jQuery.data(form[0], 'ElementData') === undefined) {
|
||||||
MaxLength = $('#'+form_id+' #'+SN.C.S.NoticeTextCount).text();
|
MaxLength = form.find('#'+SN.C.S.NoticeTextCount).text();
|
||||||
if (typeof(MaxLength) == 'undefined') {
|
if (typeof(MaxLength) == 'undefined') {
|
||||||
MaxLength = SN.C.I.MaxLength;
|
MaxLength = SN.C.I.MaxLength;
|
||||||
}
|
}
|
||||||
@ -72,7 +70,7 @@ var SN = { // StatusNet
|
|||||||
|
|
||||||
SN.U.Counter(form);
|
SN.U.Counter(form);
|
||||||
|
|
||||||
NDT = $('#'+form_id+' #'+SN.C.S.NoticeDataText);
|
NDT = form.find('#'+SN.C.S.NoticeDataText);
|
||||||
|
|
||||||
NDT.bind('keyup', function(e) {
|
NDT.bind('keyup', function(e) {
|
||||||
SN.U.Counter(form);
|
SN.U.Counter(form);
|
||||||
@ -83,11 +81,11 @@ var SN = { // StatusNet
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$('#'+form_id+' #'+SN.C.S.NoticeTextCount).text(jQuery.data(form[0], 'ElementData').MaxLength);
|
form.find('#'+SN.C.S.NoticeTextCount).text(jQuery.data(form[0], 'ElementData').MaxLength);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($('body')[0].id != 'conversation') {
|
if ($('body')[0].id != 'conversation' && window.location.hash.length === 0) {
|
||||||
$('#'+form_id+' textarea').focus();
|
form.find('textarea').focus();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -105,7 +103,6 @@ var SN = { // StatusNet
|
|||||||
|
|
||||||
Counter: function(form) {
|
Counter: function(form) {
|
||||||
SN.C.I.FormNoticeCurrent = form;
|
SN.C.I.FormNoticeCurrent = form;
|
||||||
form_id = form.attr('id');
|
|
||||||
|
|
||||||
var MaxLength = jQuery.data(form[0], 'ElementData').MaxLength;
|
var MaxLength = jQuery.data(form[0], 'ElementData').MaxLength;
|
||||||
|
|
||||||
@ -113,8 +110,8 @@ var SN = { // StatusNet
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var remaining = MaxLength - $('#'+form_id+' #'+SN.C.S.NoticeDataText).val().length;
|
var remaining = MaxLength - form.find('#'+SN.C.S.NoticeDataText).val().length;
|
||||||
var counter = $('#'+form_id+' #'+SN.C.S.NoticeTextCount);
|
var counter = form.find('#'+SN.C.S.NoticeTextCount);
|
||||||
|
|
||||||
if (remaining.toString() != counter.text()) {
|
if (remaining.toString() != counter.text()) {
|
||||||
if (!SN.C.I.CounterBlackout || remaining === 0) {
|
if (!SN.C.I.CounterBlackout || remaining === 0) {
|
||||||
@ -174,7 +171,6 @@ var SN = { // StatusNet
|
|||||||
|
|
||||||
FormNoticeXHR: function(form) {
|
FormNoticeXHR: function(form) {
|
||||||
SN.C.I.NoticeDataGeo = {};
|
SN.C.I.NoticeDataGeo = {};
|
||||||
form_id = form.attr('id');
|
|
||||||
form.append('<input type="hidden" name="ajax" value="1"/>');
|
form.append('<input type="hidden" name="ajax" value="1"/>');
|
||||||
form.ajaxForm({
|
form.ajaxForm({
|
||||||
dataType: 'xml',
|
dataType: 'xml',
|
||||||
@ -403,58 +399,72 @@ var SN = { // StatusNet
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
$.fn.jOverlay.options = {
|
var attachment_more = notice.find('.attachment.more');
|
||||||
method : 'GET',
|
if (attachment_more.length > 0) {
|
||||||
data : '',
|
$(attachment_more[0]).click(function() {
|
||||||
url : '',
|
var m = $(this);
|
||||||
color : '#000',
|
m.addClass(SN.C.S.Processing);
|
||||||
opacity : '0.6',
|
$.get(m.attr('href')+'/ajax', null, function(data) {
|
||||||
zIndex : 9999,
|
m.parent('.entry-content').html($(data).find('#attachment_view .entry-content').html());
|
||||||
center : false,
|
});
|
||||||
imgLoading : $('address .url')[0].href+'theme/base/images/illustrations/illu_progress_loading-01.gif',
|
|
||||||
bgClickToClose : true,
|
|
||||||
success : function() {
|
|
||||||
$('#jOverlayContent').append('<button class="close">×</button>');
|
|
||||||
$('#jOverlayContent button').click($.closeOverlay);
|
|
||||||
},
|
|
||||||
timeout : 0,
|
|
||||||
autoHide : true,
|
|
||||||
css : {'max-width':'542px', 'top':'5%', 'left':'32.5%'}
|
|
||||||
};
|
|
||||||
|
|
||||||
notice.find('a.attachment').click(function() {
|
|
||||||
var attachId = ($(this).attr('id').substring('attachment'.length + 1));
|
|
||||||
if (attachId) {
|
|
||||||
$().jOverlay({url: $('address .url')[0].href+'attachment/' + attachId + '/ajax'});
|
|
||||||
return false;
|
return false;
|
||||||
}
|
});
|
||||||
});
|
}
|
||||||
|
else {
|
||||||
if ($('#shownotice').length == 0) {
|
$.fn.jOverlay.options = {
|
||||||
var t;
|
method : 'GET',
|
||||||
notice.find('a.thumbnail').hover(
|
data : '',
|
||||||
function() {
|
url : '',
|
||||||
var anchor = $(this);
|
color : '#000',
|
||||||
$('a.thumbnail').children('img').hide();
|
opacity : '0.6',
|
||||||
anchor.closest(".entry-title").addClass('ov');
|
zIndex : 9999,
|
||||||
|
center : false,
|
||||||
if (anchor.children('img').length === 0) {
|
imgLoading : $('address .url')[0].href+'theme/base/images/illustrations/illu_progress_loading-01.gif',
|
||||||
t = setTimeout(function() {
|
bgClickToClose : true,
|
||||||
$.get($('address .url')[0].href+'attachment/' + (anchor.attr('id').substring('attachment'.length + 1)) + '/thumbnail', null, function(data) {
|
success : function() {
|
||||||
anchor.append(data);
|
$('#jOverlayContent').append('<button class="close">×</button>');
|
||||||
});
|
$('#jOverlayContent button').click($.closeOverlay);
|
||||||
}, 500);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
anchor.children('img').show();
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
function() {
|
timeout : 0,
|
||||||
clearTimeout(t);
|
autoHide : true,
|
||||||
$('a.thumbnail').children('img').hide();
|
css : {'max-width':'542px', 'top':'5%', 'left':'32.5%'}
|
||||||
$(this).closest('.entry-title').removeClass('ov');
|
};
|
||||||
|
|
||||||
|
notice.find('a.attachment').click(function() {
|
||||||
|
var attachId = ($(this).attr('id').substring('attachment'.length + 1));
|
||||||
|
if (attachId) {
|
||||||
|
$().jOverlay({url: $('address .url')[0].href+'attachment/' + attachId + '/ajax'});
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
);
|
});
|
||||||
|
|
||||||
|
if ($('#shownotice').length == 0) {
|
||||||
|
var t;
|
||||||
|
notice.find('a.thumbnail').hover(
|
||||||
|
function() {
|
||||||
|
var anchor = $(this);
|
||||||
|
$('a.thumbnail').children('img').hide();
|
||||||
|
anchor.closest(".entry-title").addClass('ov');
|
||||||
|
|
||||||
|
if (anchor.children('img').length === 0) {
|
||||||
|
t = setTimeout(function() {
|
||||||
|
$.get($('address .url')[0].href+'attachment/' + (anchor.attr('id').substring('attachment'.length + 1)) + '/thumbnail', null, function(data) {
|
||||||
|
anchor.append(data);
|
||||||
|
});
|
||||||
|
}, 500);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
anchor.children('img').show();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
function() {
|
||||||
|
clearTimeout(t);
|
||||||
|
$('a.thumbnail').children('img').hide();
|
||||||
|
$(this).closest('.entry-title').removeClass('ov');
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -198,8 +198,7 @@ class Action extends HTMLOutputter // lawsuit
|
|||||||
|
|
||||||
if (Event::handle('StartShowStatusNetStyles', array($this)) &&
|
if (Event::handle('StartShowStatusNetStyles', array($this)) &&
|
||||||
Event::handle('StartShowLaconicaStyles', array($this))) {
|
Event::handle('StartShowLaconicaStyles', array($this))) {
|
||||||
$this->cssLink('css/display.css',null,'screen, projection, tv');
|
$this->cssLink('css/display.css',null, 'screen, projection, tv, print');
|
||||||
$this->cssLink('css/print.css','base','print');
|
|
||||||
Event::handle('EndShowStatusNetStyles', array($this));
|
Event::handle('EndShowStatusNetStyles', array($this));
|
||||||
Event::handle('EndShowLaconicaStyles', array($this));
|
Event::handle('EndShowLaconicaStyles', array($this));
|
||||||
}
|
}
|
||||||
|
@ -179,6 +179,17 @@ class Activity
|
|||||||
|
|
||||||
$this->actor = new ActivityObject($actorEl);
|
$this->actor = new ActivityObject($actorEl);
|
||||||
|
|
||||||
|
// Cliqset has bad actor IDs (just nickname of user). We
|
||||||
|
// work around it by getting the author data and using its
|
||||||
|
// id instead
|
||||||
|
|
||||||
|
if (!preg_match('/^\w+:/', $this->actor->id)) {
|
||||||
|
$authorEl = ActivityUtils::child($entry, 'author');
|
||||||
|
if (!empty($authorEl)) {
|
||||||
|
$authorObj = new ActivityObject($authorEl);
|
||||||
|
$this->actor->id = $authorObj->id;
|
||||||
|
}
|
||||||
|
}
|
||||||
} else if (!empty($feed) &&
|
} else if (!empty($feed) &&
|
||||||
$subjectEl = $this->_child($feed, self::SUBJECT)) {
|
$subjectEl = $this->_child($feed, self::SUBJECT)) {
|
||||||
|
|
||||||
|
@ -177,10 +177,7 @@ class ActivityObject
|
|||||||
$this->type = self::PERSON; // XXX: is this fair?
|
$this->type = self::PERSON; // XXX: is this fair?
|
||||||
$this->title = $this->_childContent($element, self::NAME);
|
$this->title = $this->_childContent($element, self::NAME);
|
||||||
|
|
||||||
$id = $this->_childContent($element, self::URI);
|
$this->id = $this->_childContent($element, self::URI);
|
||||||
if (ActivityUtils::validateUri($id)) {
|
|
||||||
$this->id = $id;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (empty($this->id)) {
|
if (empty($this->id)) {
|
||||||
$email = $this->_childContent($element, self::EMAIL);
|
$email = $this->_childContent($element, self::EMAIL);
|
||||||
@ -193,15 +190,6 @@ class ActivityObject
|
|||||||
|
|
||||||
private function _fromAtomEntry($element)
|
private function _fromAtomEntry($element)
|
||||||
{
|
{
|
||||||
if ($element->localName == 'actor') {
|
|
||||||
// Old-fashioned <activity:actor>...
|
|
||||||
// First pull anything from <author>, then we'll add on top.
|
|
||||||
$author = ActivityUtils::child($element->parentNode, 'author');
|
|
||||||
if ($author) {
|
|
||||||
$this->_fromAuthor($author);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$this->type = $this->_childContent($element, Activity::OBJECTTYPE,
|
$this->type = $this->_childContent($element, Activity::OBJECTTYPE,
|
||||||
Activity::SPEC);
|
Activity::SPEC);
|
||||||
|
|
||||||
@ -209,11 +197,6 @@ class ActivityObject
|
|||||||
$this->type = ActivityObject::NOTE;
|
$this->type = ActivityObject::NOTE;
|
||||||
}
|
}
|
||||||
|
|
||||||
$id = $this->_childContent($element, self::ID);
|
|
||||||
if (ActivityUtils::validateUri($id)) {
|
|
||||||
$this->id = $id;
|
|
||||||
}
|
|
||||||
|
|
||||||
$this->summary = ActivityUtils::childHtmlContent($element, self::SUMMARY);
|
$this->summary = ActivityUtils::childHtmlContent($element, self::SUMMARY);
|
||||||
$this->content = ActivityUtils::getContent($element);
|
$this->content = ActivityUtils::getContent($element);
|
||||||
|
|
||||||
@ -226,6 +209,12 @@ class ActivityObject
|
|||||||
$this->source = $this->_getSource($element);
|
$this->source = $this->_getSource($element);
|
||||||
|
|
||||||
$this->link = ActivityUtils::getPermalink($element);
|
$this->link = ActivityUtils::getPermalink($element);
|
||||||
|
|
||||||
|
$this->id = $this->_childContent($element, self::ID);
|
||||||
|
|
||||||
|
if (empty($this->id) && !empty($this->link)) { // fallback if there's no ID
|
||||||
|
$this->id = $this->link;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// @fixme rationalize with Activity::_fromRssItem()
|
// @fixme rationalize with Activity::_fromRssItem()
|
||||||
|
@ -248,9 +248,7 @@ class Attachment extends AttachmentListItem
|
|||||||
$this->out->elementStart('div', array('id' => 'attachment_view',
|
$this->out->elementStart('div', array('id' => 'attachment_view',
|
||||||
'class' => 'hentry'));
|
'class' => 'hentry'));
|
||||||
$this->out->elementStart('div', 'entry-title');
|
$this->out->elementStart('div', 'entry-title');
|
||||||
$this->out->elementStart('a', $this->linkAttr());
|
$this->out->element('a', $this->linkAttr(), $this->linkTitle());
|
||||||
$this->out->element('span', null, $this->linkTitle());
|
|
||||||
$this->out->elementEnd('a');
|
|
||||||
$this->out->elementEnd('div');
|
$this->out->elementEnd('div');
|
||||||
|
|
||||||
$this->out->elementStart('div', 'entry-content');
|
$this->out->elementStart('div', 'entry-content');
|
||||||
@ -296,7 +294,7 @@ class Attachment extends AttachmentListItem
|
|||||||
}
|
}
|
||||||
|
|
||||||
function linkAttr() {
|
function linkAttr() {
|
||||||
return array('class' => 'external', 'href' => $this->attachment->url);
|
return array('rel' => 'external', 'href' => $this->attachment->url);
|
||||||
}
|
}
|
||||||
|
|
||||||
function linkTitle() {
|
function linkTitle() {
|
||||||
@ -332,6 +330,15 @@ class Attachment extends AttachmentListItem
|
|||||||
$this->out->element('param', array('name' => 'autoStart', 'value' => 1));
|
$this->out->element('param', array('name' => 'autoStart', 'value' => 1));
|
||||||
$this->out->elementEnd('object');
|
$this->out->elementEnd('object');
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case 'text/html':
|
||||||
|
if ($this->attachment->filename) {
|
||||||
|
// Locally-uploaded HTML. Scrub and display inline.
|
||||||
|
$this->showHtmlFile($this->attachment);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
// Fall through to default.
|
||||||
|
|
||||||
default:
|
default:
|
||||||
$this->showFallback();
|
$this->showFallback();
|
||||||
}
|
}
|
||||||
@ -361,6 +368,59 @@ class Attachment extends AttachmentListItem
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected function showHtmlFile(File $attachment)
|
||||||
|
{
|
||||||
|
$body = $this->scrubHtmlFile($attachment);
|
||||||
|
if ($body) {
|
||||||
|
$this->out->raw($body);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return mixed false on failure, HTML fragment string on success
|
||||||
|
*/
|
||||||
|
protected function scrubHtmlFile(File $attachment)
|
||||||
|
{
|
||||||
|
$path = File::path($attachment->filename);
|
||||||
|
if (!file_exists($path) || !is_readable($path)) {
|
||||||
|
common_log(LOG_ERR, "Missing local HTML attachment $path");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
$raw = file_get_contents($path);
|
||||||
|
|
||||||
|
// Normalize...
|
||||||
|
$dom = new DOMDocument();
|
||||||
|
if(!$dom->loadHTML($raw)) {
|
||||||
|
common_log(LOG_ERR, "Bad HTML in local HTML attachment $path");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Remove <script>s or htmlawed will dump their contents into output!
|
||||||
|
// Note: removing child nodes while iterating seems to mess things up,
|
||||||
|
// hence the double loop.
|
||||||
|
$scripts = array();
|
||||||
|
foreach ($dom->getElementsByTagName('script') as $script) {
|
||||||
|
$scripts[] = $script;
|
||||||
|
}
|
||||||
|
foreach ($scripts as $script) {
|
||||||
|
common_log(LOG_DEBUG, $script->textContent);
|
||||||
|
$script->parentNode->removeChild($script);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Trim out everything outside the body...
|
||||||
|
$body = $dom->saveHTML();
|
||||||
|
$body = preg_replace('/^.*<body[^>]*>/is', '', $body);
|
||||||
|
$body = preg_replace('/<\/body[^>]*>.*$/is', '', $body);
|
||||||
|
|
||||||
|
require_once INSTALLDIR.'/extlib/htmLawed/htmLawed.php';
|
||||||
|
$config = array('safe' => 1,
|
||||||
|
'deny_attribute' => 'id,style,on*',
|
||||||
|
'comment' => 1); // remove comments
|
||||||
|
$scrubbed = htmLawed($body, $config);
|
||||||
|
|
||||||
|
return $scrubbed;
|
||||||
|
}
|
||||||
|
|
||||||
function showFallback()
|
function showFallback()
|
||||||
{
|
{
|
||||||
// If we don't know how to display an attachment inline, we probably
|
// If we don't know how to display an attachment inline, we probably
|
||||||
|
@ -22,10 +22,10 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
|
|||||||
//exit with 200 response, if this is checking fancy from the installer
|
//exit with 200 response, if this is checking fancy from the installer
|
||||||
if (isset($_REQUEST['p']) && $_REQUEST['p'] == 'check-fancy') { exit; }
|
if (isset($_REQUEST['p']) && $_REQUEST['p'] == 'check-fancy') { exit; }
|
||||||
|
|
||||||
define('STATUSNET_VERSION', '0.9.0');
|
define('STATUSNET_VERSION', '0.9.1');
|
||||||
define('LACONICA_VERSION', STATUSNET_VERSION); // compatibility
|
define('LACONICA_VERSION', STATUSNET_VERSION); // compatibility
|
||||||
|
|
||||||
define('STATUSNET_CODENAME', 'Stand');
|
define('STATUSNET_CODENAME', 'Everybody Hurts');
|
||||||
|
|
||||||
define('AVATAR_PROFILE_SIZE', 96);
|
define('AVATAR_PROFILE_SIZE', 96);
|
||||||
define('AVATAR_STREAM_SIZE', 48);
|
define('AVATAR_STREAM_SIZE', 48);
|
||||||
|
@ -443,7 +443,8 @@ class NoticeListItem extends Widget
|
|||||||
$name);
|
$name);
|
||||||
} else {
|
} else {
|
||||||
$xstr = new XMLStringer(false);
|
$xstr = new XMLStringer(false);
|
||||||
$xstr->elementStart('a', array('href' => $url));
|
$xstr->elementStart('a', array('href' => $url,
|
||||||
|
'rel' => 'external'));
|
||||||
$xstr->element('abbr', array('class' => 'geo',
|
$xstr->element('abbr', array('class' => 'geo',
|
||||||
'title' => $latlon),
|
'title' => $latlon),
|
||||||
$name);
|
$name);
|
||||||
|
@ -213,7 +213,7 @@ class ProfileListItem extends Widget
|
|||||||
{
|
{
|
||||||
if (!empty($this->profile->location)) {
|
if (!empty($this->profile->location)) {
|
||||||
$this->out->text(' ');
|
$this->out->text(' ');
|
||||||
$this->out->elementStart('span', 'location');
|
$this->out->elementStart('span', 'label');
|
||||||
$this->out->raw($this->highlight($this->profile->location));
|
$this->out->raw($this->highlight($this->profile->location));
|
||||||
$this->out->elementEnd('span');
|
$this->out->elementEnd('span');
|
||||||
}
|
}
|
||||||
|
@ -113,12 +113,13 @@ class SubscriptionListItem extends ProfileListItem
|
|||||||
$this->out->elementStart('ul', 'tags xoxo');
|
$this->out->elementStart('ul', 'tags xoxo');
|
||||||
foreach ($tags as $tag) {
|
foreach ($tags as $tag) {
|
||||||
$this->out->elementStart('li');
|
$this->out->elementStart('li');
|
||||||
$this->out->element('span', 'mark_hash', '#');
|
// Avoid space by using raw output.
|
||||||
$this->out->element('a', array('rel' => 'tag',
|
$pt = '<span class="mark_hash">#</span><a rel="tag" href="' .
|
||||||
'href' => common_local_url($this->action->trimmed('action'),
|
common_local_url($this->action->trimmed('action'),
|
||||||
array('nickname' => $this->owner->nickname,
|
array('nickname' => $this->owner->nickname,
|
||||||
'tag' => $tag))),
|
'tag' => $tag)) .
|
||||||
$tag);
|
'">' . $tag . '</a>';
|
||||||
|
$this->out->raw($pt);
|
||||||
$this->out->elementEnd('li');
|
$this->out->elementEnd('li');
|
||||||
}
|
}
|
||||||
$this->out->elementEnd('ul');
|
$this->out->elementEnd('ul');
|
||||||
|
@ -71,7 +71,8 @@ class UserProfile extends Widget
|
|||||||
{
|
{
|
||||||
if (Event::handle('StartProfilePageProfileSection', array(&$this->out, $this->profile))) {
|
if (Event::handle('StartProfilePageProfileSection', array(&$this->out, $this->profile))) {
|
||||||
|
|
||||||
$this->out->elementStart('div', 'entity_profile vcard author');
|
$this->out->elementStart('div', array('id' => 'i',
|
||||||
|
'class' => 'entity_profile vcard author'));
|
||||||
$this->out->element('h2', null, _('User profile'));
|
$this->out->element('h2', null, _('User profile'));
|
||||||
|
|
||||||
if (Event::handle('StartProfilePageProfileElements', array(&$this->out, $this->profile))) {
|
if (Event::handle('StartProfilePageProfileElements', array(&$this->out, $this->profile))) {
|
||||||
|
@ -49,32 +49,26 @@ class BlacklistPlugin extends Plugin
|
|||||||
public $urls = array();
|
public $urls = array();
|
||||||
public $canAdmin = true;
|
public $canAdmin = true;
|
||||||
|
|
||||||
private $_nicknamePatterns = array();
|
function _getNicknamePatterns()
|
||||||
private $_urlPatterns = array();
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Initialize the plugin
|
|
||||||
*
|
|
||||||
* @return void
|
|
||||||
*/
|
|
||||||
|
|
||||||
function initialize()
|
|
||||||
{
|
{
|
||||||
$confNicknames = $this->_configArray('blacklist', 'nicknames');
|
$confNicknames = $this->_configArray('blacklist', 'nicknames');
|
||||||
|
|
||||||
$dbNicknames = Nickname_blacklist::getPatterns();
|
$dbNicknames = Nickname_blacklist::getPatterns();
|
||||||
|
|
||||||
$this->_nicknamePatterns = array_merge($this->nicknames,
|
return array_merge($this->nicknames,
|
||||||
$confNicknames,
|
$confNicknames,
|
||||||
$dbNicknames);
|
$dbNicknames);
|
||||||
|
}
|
||||||
|
|
||||||
|
function _getUrlPatterns()
|
||||||
|
{
|
||||||
$confURLs = $this->_configArray('blacklist', 'urls');
|
$confURLs = $this->_configArray('blacklist', 'urls');
|
||||||
|
|
||||||
$dbURLs = Homepage_blacklist::getPatterns();
|
$dbURLs = Homepage_blacklist::getPatterns();
|
||||||
|
|
||||||
$this->_urlPatterns = array_merge($this->urls,
|
return array_merge($this->urls,
|
||||||
$confURLs,
|
$confURLs,
|
||||||
$dbURLs);
|
$dbURLs);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -265,7 +259,9 @@ class BlacklistPlugin extends Plugin
|
|||||||
|
|
||||||
private function _checkUrl($url)
|
private function _checkUrl($url)
|
||||||
{
|
{
|
||||||
foreach ($this->_urlPatterns as $pattern) {
|
$patterns = $this->_getUrlPatterns();
|
||||||
|
|
||||||
|
foreach ($patterns as $pattern) {
|
||||||
if (preg_match("/$pattern/", $url)) {
|
if (preg_match("/$pattern/", $url)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -286,7 +282,9 @@ class BlacklistPlugin extends Plugin
|
|||||||
|
|
||||||
private function _checkNickname($nickname)
|
private function _checkNickname($nickname)
|
||||||
{
|
{
|
||||||
foreach ($this->_nicknamePatterns as $pattern) {
|
$patterns = $this->_getNicknamePatterns();
|
||||||
|
|
||||||
|
foreach ($patterns as $pattern) {
|
||||||
if (preg_match("/$pattern/", $nickname)) {
|
if (preg_match("/$pattern/", $nickname)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -102,7 +102,8 @@ class OStatusPlugin extends Plugin
|
|||||||
*/
|
*/
|
||||||
function onStartEnqueueNotice($notice, &$transports)
|
function onStartEnqueueNotice($notice, &$transports)
|
||||||
{
|
{
|
||||||
$transports[] = 'ostatus';
|
// put our transport first, in case there's any conflict (like OMB)
|
||||||
|
array_unshift($transports, 'ostatus');
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -550,14 +550,22 @@ class Ostatus_profile extends Memcached_DataObject
|
|||||||
}
|
}
|
||||||
$shortSummary = common_shorten_links($summary);
|
$shortSummary = common_shorten_links($summary);
|
||||||
if (Notice::contentTooLong($shortSummary)) {
|
if (Notice::contentTooLong($shortSummary)) {
|
||||||
$url = common_shorten_url(common_local_url('attachment',
|
$url = common_shorten_url($sourceUrl);
|
||||||
array('attachment' => $attachment->id)));
|
|
||||||
$shortSummary = substr($shortSummary,
|
$shortSummary = substr($shortSummary,
|
||||||
0,
|
0,
|
||||||
Notice::maxContent() - (mb_strlen($url) + 2));
|
Notice::maxContent() - (mb_strlen($url) + 2));
|
||||||
$shortSummary .= '… ' . $url;
|
$content = $shortSummary . ' ' . $url;
|
||||||
$content = $shortSummary;
|
|
||||||
$rendered = common_render_text($content);
|
// We mark up the attachment link specially for the HTML output
|
||||||
|
// so we can fold-out the full version inline.
|
||||||
|
$attachUrl = common_local_url('attachment',
|
||||||
|
array('attachment' => $attachment->id));
|
||||||
|
$rendered = common_render_text($shortSummary) .
|
||||||
|
'<a href="' . htmlspecialchars($attachUrl) .'"'.
|
||||||
|
' class="attachment more"' .
|
||||||
|
' title="'. htmlspecialchars(_m('Show more')) . '">' .
|
||||||
|
'…' .
|
||||||
|
'</a>';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1667,10 +1675,18 @@ class Ostatus_profile extends Memcached_DataObject
|
|||||||
throw new Exception("Couldn't find a valid profile for '$addr'");
|
throw new Exception("Couldn't find a valid profile for '$addr'");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Store the full-length scrubbed HTML of a remote notice to an attachment
|
||||||
|
* file on our server. We'll link to this at the end of the cropped version.
|
||||||
|
*
|
||||||
|
* @param string $title plaintext for HTML page's title
|
||||||
|
* @param string $rendered HTML fragment for HTML page's body
|
||||||
|
* @return File
|
||||||
|
*/
|
||||||
function saveHTMLFile($title, $rendered)
|
function saveHTMLFile($title, $rendered)
|
||||||
{
|
{
|
||||||
$final = sprintf("<!DOCTYPE html>\n<html><head><title>%s</title></head>".
|
$final = sprintf("<!DOCTYPE html>\n<html><head><title>%s</title></head>".
|
||||||
'<body><div>%s</div></body></html>',
|
'<body>%s</body></html>',
|
||||||
htmlspecialchars($title),
|
htmlspecialchars($title),
|
||||||
$rendered);
|
$rendered);
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ class OpenExternalLinkTargetPlugin extends Plugin
|
|||||||
{
|
{
|
||||||
function onEndShowScripts($action)
|
function onEndShowScripts($action)
|
||||||
{
|
{
|
||||||
$action->inlineScript('$("a[rel~=external]").click(function(){ window.open(this.href); return false; });');
|
$action->inlineScript('$("a[rel~=external]:not([class~=attachment])").live("click", function(){ window.open(this.href); return false; });');
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -130,7 +130,7 @@ RealtimeUpdate = {
|
|||||||
user = data['user'];
|
user = data['user'];
|
||||||
html = data['html'].replace(/</g,'<').replace(/>/g,'>').replace(/"/g,'"').replace(/&/g,'&');
|
html = data['html'].replace(/</g,'<').replace(/>/g,'>').replace(/"/g,'"').replace(/&/g,'&');
|
||||||
source = data['source'].replace(/</g,'<').replace(/>/g,'>').replace(/"/g,'"').replace(/&/g,'&');
|
source = data['source'].replace(/</g,'<').replace(/>/g,'>').replace(/"/g,'"').replace(/&/g,'&');
|
||||||
console.log(data);
|
|
||||||
ni = "<li class=\"hentry notice\" id=\"notice-"+unique+"\">"+
|
ni = "<li class=\"hentry notice\" id=\"notice-"+unique+"\">"+
|
||||||
"<div class=\"entry-title\">"+
|
"<div class=\"entry-title\">"+
|
||||||
"<span class=\"vcard author\">"+
|
"<span class=\"vcard author\">"+
|
||||||
|
@ -20,8 +20,8 @@
|
|||||||
|
|
||||||
define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
|
define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
|
||||||
|
|
||||||
$shortoptions = 'i:n:';
|
$shortoptions = 'i:n:o';
|
||||||
$longoptions = array('id=', 'nickname=');
|
$longoptions = array('id=', 'nickname=', 'owner');
|
||||||
|
|
||||||
$helptext = <<<END_OF_USERROLE_HELP
|
$helptext = <<<END_OF_USERROLE_HELP
|
||||||
command.php [options] [command line]
|
command.php [options] [command line]
|
||||||
@ -29,13 +29,12 @@ Perform commands on behalf of a user, such as sub, unsub, join, drop
|
|||||||
|
|
||||||
-i --id ID of the user
|
-i --id ID of the user
|
||||||
-n --nickname nickname of the user
|
-n --nickname nickname of the user
|
||||||
|
-o --owner use the site owner
|
||||||
|
|
||||||
END_OF_USERROLE_HELP;
|
END_OF_USERROLE_HELP;
|
||||||
|
|
||||||
require_once INSTALLDIR.'/scripts/commandline.inc';
|
require_once INSTALLDIR.'/scripts/commandline.inc';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function interpretCommand($user, $body)
|
function interpretCommand($user, $body)
|
||||||
{
|
{
|
||||||
$inter = new CommandInterpreter();
|
$inter = new CommandInterpreter();
|
||||||
@ -50,8 +49,6 @@ function interpretCommand($user, $body)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (have_option('i', 'id')) {
|
if (have_option('i', 'id')) {
|
||||||
$id = get_option_value('i', 'id');
|
$id = get_option_value('i', 'id');
|
||||||
$user = User::staticGet('id', $id);
|
$user = User::staticGet('id', $id);
|
||||||
@ -66,6 +63,12 @@ if (have_option('i', 'id')) {
|
|||||||
print "Can't find user with nickname '$nickname'\n";
|
print "Can't find user with nickname '$nickname'\n";
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
} else if (have_option('o', 'owner')) {
|
||||||
|
$user = User::siteOwner();
|
||||||
|
if (empty($user)) {
|
||||||
|
print "Site has no owner.\n";
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
print "You must provide either an ID or a nickname.\n\n";
|
print "You must provide either an ID or a nickname.\n\n";
|
||||||
print $helptext;
|
print $helptext;
|
||||||
|
@ -22,14 +22,14 @@ class ActivityParseTests extends PHPUnit_Framework_TestCase
|
|||||||
|
|
||||||
$this->assertFalse(empty($act));
|
$this->assertFalse(empty($act));
|
||||||
|
|
||||||
$this->assertEquals($act->time, 1243860840);
|
$this->assertEquals(1243860840, $act->time);
|
||||||
$this->assertEquals($act->verb, ActivityVerb::POST);
|
$this->assertEquals(ActivityVerb::POST, $act->verb);
|
||||||
|
|
||||||
$this->assertFalse(empty($act->objects[0]));
|
$this->assertFalse(empty($act->objects[0]));
|
||||||
$this->assertEquals($act->objects[0]->title, 'Punctuation Changeset');
|
$this->assertEquals('Punctuation Changeset', $act->objects[0]->title);
|
||||||
$this->assertEquals($act->objects[0]->type, 'http://versioncentral.example.org/activity/changeset');
|
$this->assertEquals('http://versioncentral.example.org/activity/changeset', $act->objects[0]->type);
|
||||||
$this->assertEquals($act->objects[0]->summary, 'Fixing punctuation because it makes it more readable.');
|
$this->assertEquals('Fixing punctuation because it makes it more readable.', $act->objects[0]->summary);
|
||||||
$this->assertEquals($act->objects[0]->id, 'tag:versioncentral.example.org,2009:/change/1643245');
|
$this->assertEquals('tag:versioncentral.example.org,2009:/change/1643245', $act->objects[0]->id);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testExample3()
|
public function testExample3()
|
||||||
@ -46,22 +46,22 @@ class ActivityParseTests extends PHPUnit_Framework_TestCase
|
|||||||
$act = new Activity($entry, $feed);
|
$act = new Activity($entry, $feed);
|
||||||
|
|
||||||
$this->assertFalse(empty($act));
|
$this->assertFalse(empty($act));
|
||||||
$this->assertEquals($act->time, 1071340202);
|
$this->assertEquals(1071340202, $act->time);
|
||||||
$this->assertEquals($act->link, 'http://example.org/2003/12/13/atom03.html');
|
$this->assertEquals('http://example.org/2003/12/13/atom03.html', $act->link);
|
||||||
|
|
||||||
$this->assertEquals($act->verb, ActivityVerb::POST);
|
$this->assertEquals($act->verb, ActivityVerb::POST);
|
||||||
|
|
||||||
$this->assertFalse(empty($act->actor));
|
$this->assertFalse(empty($act->actor));
|
||||||
$this->assertEquals($act->actor->type, ActivityObject::PERSON);
|
$this->assertEquals(ActivityObject::PERSON, $act->actor->type);
|
||||||
$this->assertEquals($act->actor->title, 'John Doe');
|
$this->assertEquals('John Doe', $act->actor->title);
|
||||||
$this->assertEquals($act->actor->id, 'mailto:johndoe@example.com');
|
$this->assertEquals('mailto:johndoe@example.com', $act->actor->id);
|
||||||
|
|
||||||
$this->assertFalse(empty($act->objects[0]));
|
$this->assertFalse(empty($act->objects[0]));
|
||||||
$this->assertEquals($act->objects[0]->type, ActivityObject::NOTE);
|
$this->assertEquals(ActivityObject::NOTE, $act->objects[0]->type);
|
||||||
$this->assertEquals($act->objects[0]->id, 'urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a');
|
$this->assertEquals('urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a', $act->objects[0]->id);
|
||||||
$this->assertEquals($act->objects[0]->title, 'Atom-Powered Robots Run Amok');
|
$this->assertEquals('Atom-Powered Robots Run Amok', $act->objects[0]->title);
|
||||||
$this->assertEquals($act->objects[0]->summary, 'Some text.');
|
$this->assertEquals('Some text.', $act->objects[0]->summary);
|
||||||
$this->assertEquals($act->objects[0]->link, 'http://example.org/2003/12/13/atom03.html');
|
$this->assertEquals('http://example.org/2003/12/13/atom03.html', $act->objects[0]->link);
|
||||||
|
|
||||||
$this->assertFalse(empty($act->context));
|
$this->assertFalse(empty($act->context));
|
||||||
|
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
* @link http://status.net/
|
* @link http://status.net/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@media screen, projection, tv {
|
||||||
* { margin:0; padding:0; }
|
* { margin:0; padding:0; }
|
||||||
img { display:block; border:0; }
|
img { display:block; border:0; }
|
||||||
a abbr { cursor: pointer; border-bottom:0; }
|
a abbr { cursor: pointer; border-bottom:0; }
|
||||||
@ -857,6 +858,9 @@ display:inline;
|
|||||||
display:inline;
|
display:inline;
|
||||||
margin-right:7px;
|
margin-right:7px;
|
||||||
}
|
}
|
||||||
|
.entity_tags li:before {
|
||||||
|
content:'\0009';
|
||||||
|
}
|
||||||
|
|
||||||
.aside .section {
|
.aside .section {
|
||||||
margin-bottom:29px;
|
margin-bottom:29px;
|
||||||
@ -925,7 +929,7 @@ display:inline;
|
|||||||
}
|
}
|
||||||
|
|
||||||
.profile .entity_profile .fn,
|
.profile .entity_profile .fn,
|
||||||
.profile .entity_profile .location {
|
.profile .entity_profile .label {
|
||||||
margin-left:11px;
|
margin-left:11px;
|
||||||
margin-bottom:4px;
|
margin-bottom:4px;
|
||||||
width:auto;
|
width:auto;
|
||||||
@ -1284,7 +1288,18 @@ height:16px;
|
|||||||
position:relative;
|
position:relative;
|
||||||
padding-left:16px;
|
padding-left:16px;
|
||||||
}
|
}
|
||||||
#attachments .attachment {
|
.notice .attachment.more {
|
||||||
|
text-indent:-9999px;
|
||||||
|
width:16px;
|
||||||
|
height:16px;
|
||||||
|
display:inline-block;
|
||||||
|
overflow:hidden;
|
||||||
|
vertical-align:middle;
|
||||||
|
margin-left:4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#attachments .attachment,
|
||||||
|
.notice .attachment.more {
|
||||||
padding-left:0;
|
padding-left:0;
|
||||||
}
|
}
|
||||||
.notice .attachment img {
|
.notice .attachment img {
|
||||||
@ -1326,7 +1341,7 @@ margin-bottom:0;
|
|||||||
padding:11px;
|
padding:11px;
|
||||||
min-height:auto;
|
min-height:auto;
|
||||||
}
|
}
|
||||||
#jOverlayContent .external span {
|
#jOverlayContent .entry-title {
|
||||||
display:block;
|
display:block;
|
||||||
margin-bottom:11px;
|
margin-bottom:11px;
|
||||||
}
|
}
|
||||||
@ -1677,3 +1692,34 @@ width:auto;
|
|||||||
#bookmarklet #wrap {
|
#bookmarklet #wrap {
|
||||||
min-width:0;
|
min-width:0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}/*end of @media screen, projection, tv*/
|
||||||
|
|
||||||
|
|
||||||
|
@media print {
|
||||||
|
a:after { background-color:#FFFFFF; }
|
||||||
|
a:not([href^="#"]):after { content:" <"attr(href)"> "; }
|
||||||
|
img { border:none; }
|
||||||
|
p { orphans: 2; widows: 1; }
|
||||||
|
|
||||||
|
#site_nav_global_primary,
|
||||||
|
#site_nav_local_views,
|
||||||
|
#form_notice,
|
||||||
|
.pagination,
|
||||||
|
#site_nav_global_secondary,
|
||||||
|
.entity_actions,
|
||||||
|
.notice-options,
|
||||||
|
#aside_primary,
|
||||||
|
.form_subscription_edit .submit {
|
||||||
|
display:none;
|
||||||
|
}
|
||||||
|
.timestamp dt, .timestamp dd,
|
||||||
|
.device dt, .device dd {
|
||||||
|
display:inline;
|
||||||
|
}
|
||||||
|
.profiles li,
|
||||||
|
.notices li {
|
||||||
|
margin-bottom:18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
}/*end of @media print*/
|
||||||
|
@ -1,36 +0,0 @@
|
|||||||
/** theme: base
|
|
||||||
*
|
|
||||||
* @package StatusNet
|
|
||||||
* @author Sarven Capadisli <csarven@status.net>
|
|
||||||
* @copyright 2009 StatusNet, Inc.
|
|
||||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
|
|
||||||
* @link http://status.net/
|
|
||||||
*/
|
|
||||||
|
|
||||||
a:after { background-color:#fff; }
|
|
||||||
a:not([href^="#"]):after { content:" ( "attr(href)" ) "; }
|
|
||||||
|
|
||||||
img { border:none; }
|
|
||||||
p { orphans: 2; widows: 1; }
|
|
||||||
|
|
||||||
#site_nav_global_primary,
|
|
||||||
#site_nav_local_views,
|
|
||||||
#form_notice,
|
|
||||||
.pagination,
|
|
||||||
#site_nav_global_secondary,
|
|
||||||
.entity_actions,
|
|
||||||
.notice-options,
|
|
||||||
#aside_primary,
|
|
||||||
.form_subscription_edit .submit {
|
|
||||||
display:none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.timestamp dt, .timestamp dd,
|
|
||||||
.device dt, .device dd {
|
|
||||||
display:inline;
|
|
||||||
}
|
|
||||||
|
|
||||||
.profiles li,
|
|
||||||
.notices li {
|
|
||||||
margin-bottom:18px;
|
|
||||||
}
|
|
@ -1,163 +0,0 @@
|
|||||||
/* ----------------------------------------------------------------------------------------------------------------*/
|
|
||||||
/* ---------->>> global settings needed for thickbox <<<-----------------------------------------------------------*/
|
|
||||||
/* ----------------------------------------------------------------------------------------------------------------*/
|
|
||||||
*{padding: 0; margin: 0;}
|
|
||||||
|
|
||||||
/* ----------------------------------------------------------------------------------------------------------------*/
|
|
||||||
/* ---------->>> thickbox specific link and font settings <<<------------------------------------------------------*/
|
|
||||||
/* ----------------------------------------------------------------------------------------------------------------*/
|
|
||||||
#TB_window {
|
|
||||||
font: 12px Arial, Helvetica, sans-serif;
|
|
||||||
color: #333333;
|
|
||||||
}
|
|
||||||
|
|
||||||
#TB_secondLine {
|
|
||||||
font: 10px Arial, Helvetica, sans-serif;
|
|
||||||
color:#666666;
|
|
||||||
}
|
|
||||||
|
|
||||||
#TB_window a:link {color: #666666;}
|
|
||||||
#TB_window a:visited {color: #666666;}
|
|
||||||
#TB_window a:hover {color: #000;}
|
|
||||||
#TB_window a:active {color: #666666;}
|
|
||||||
#TB_window a:focus{color: #666666;}
|
|
||||||
|
|
||||||
/* ----------------------------------------------------------------------------------------------------------------*/
|
|
||||||
/* ---------->>> thickbox settings <<<-----------------------------------------------------------------------------*/
|
|
||||||
/* ----------------------------------------------------------------------------------------------------------------*/
|
|
||||||
#TB_overlay {
|
|
||||||
position: fixed;
|
|
||||||
z-index:100;
|
|
||||||
top: 0px;
|
|
||||||
left: 0px;
|
|
||||||
height:100%;
|
|
||||||
width:100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.TB_overlayMacFFBGHack {background: url(macFFBgHack.png) repeat;}
|
|
||||||
.TB_overlayBG {
|
|
||||||
background-color:#000;
|
|
||||||
filter:alpha(opacity=75);
|
|
||||||
-moz-opacity: 0.75;
|
|
||||||
opacity: 0.75;
|
|
||||||
}
|
|
||||||
|
|
||||||
* html #TB_overlay { /* ie6 hack */
|
|
||||||
position: absolute;
|
|
||||||
height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
|
|
||||||
}
|
|
||||||
|
|
||||||
#TB_window {
|
|
||||||
position: fixed;
|
|
||||||
background: #ffffff;
|
|
||||||
z-index: 102;
|
|
||||||
color:#000000;
|
|
||||||
display:none;
|
|
||||||
border: 4px solid #525252;
|
|
||||||
text-align:left;
|
|
||||||
top:50%;
|
|
||||||
left:50%;
|
|
||||||
}
|
|
||||||
|
|
||||||
* html #TB_window { /* ie6 hack */
|
|
||||||
position: absolute;
|
|
||||||
margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px');
|
|
||||||
}
|
|
||||||
|
|
||||||
#TB_window img#TB_Image {
|
|
||||||
display:block;
|
|
||||||
margin: 15px 0 0 15px;
|
|
||||||
border-right: 1px solid #ccc;
|
|
||||||
border-bottom: 1px solid #ccc;
|
|
||||||
border-top: 1px solid #666;
|
|
||||||
border-left: 1px solid #666;
|
|
||||||
}
|
|
||||||
|
|
||||||
#TB_caption{
|
|
||||||
height:25px;
|
|
||||||
padding:7px 30px 10px 25px;
|
|
||||||
float:left;
|
|
||||||
}
|
|
||||||
|
|
||||||
#TB_closeWindow{
|
|
||||||
height:25px;
|
|
||||||
padding:11px 25px 10px 0;
|
|
||||||
float:right;
|
|
||||||
}
|
|
||||||
|
|
||||||
#TB_closeAjaxWindow{
|
|
||||||
padding:7px 10px 5px 0;
|
|
||||||
margin-bottom:1px;
|
|
||||||
text-align:right;
|
|
||||||
float:right;
|
|
||||||
}
|
|
||||||
|
|
||||||
#TB_ajaxWindowTitle{
|
|
||||||
float:left;
|
|
||||||
padding:7px 0 5px 10px;
|
|
||||||
margin-bottom:1px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#TB_title{
|
|
||||||
background-color:#e8e8e8;
|
|
||||||
height:27px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#TB_ajaxContent{
|
|
||||||
clear:both;
|
|
||||||
padding:2px 15px 15px 15px;
|
|
||||||
overflow:auto;
|
|
||||||
text-align:left;
|
|
||||||
line-height:1.4em;
|
|
||||||
}
|
|
||||||
|
|
||||||
#TB_ajaxContent.TB_modal{
|
|
||||||
padding:15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#TB_ajaxContent p{
|
|
||||||
padding:5px 0px 5px 0px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#TB_load{
|
|
||||||
position: fixed;
|
|
||||||
display:none;
|
|
||||||
height:13px;
|
|
||||||
width:208px;
|
|
||||||
z-index:103;
|
|
||||||
top: 50%;
|
|
||||||
left: 50%;
|
|
||||||
margin: -6px 0 0 -104px; /* -height/2 0 0 -width/2 */
|
|
||||||
}
|
|
||||||
|
|
||||||
* html #TB_load { /* ie6 hack */
|
|
||||||
position: absolute;
|
|
||||||
margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px');
|
|
||||||
}
|
|
||||||
|
|
||||||
#TB_HideSelect{
|
|
||||||
z-index:99;
|
|
||||||
position:fixed;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
background-color:#fff;
|
|
||||||
border:none;
|
|
||||||
filter:alpha(opacity=0);
|
|
||||||
-moz-opacity: 0;
|
|
||||||
opacity: 0;
|
|
||||||
height:100%;
|
|
||||||
width:100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
* html #TB_HideSelect { /* ie6 hack */
|
|
||||||
position: absolute;
|
|
||||||
height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
|
|
||||||
}
|
|
||||||
|
|
||||||
#TB_iframeContent{
|
|
||||||
clear:both;
|
|
||||||
border:none;
|
|
||||||
margin-bottom:-1px;
|
|
||||||
margin-top:1px;
|
|
||||||
_margin-bottom:1px;
|
|
||||||
}
|
|
Before Width: | Height: | Size: 4.0 KiB After Width: | Height: | Size: 4.0 KiB |
@ -1,12 +1,13 @@
|
|||||||
/** theme: biz base
|
/** theme: biz base
|
||||||
*
|
*
|
||||||
* @package StatusNet
|
* @package StatusNet
|
||||||
* @author Sarven Capadisli <csarven@status.net>
|
* @author Sarven Capadisli <csarven@status.net>
|
||||||
* @copyright 2009 StatusNet, Inc.
|
* @copyright 2009 StatusNet, Inc.
|
||||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
|
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
|
||||||
* @link http://status.net/
|
* @link http://status.net/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@media screen, projection, tv {
|
||||||
* { margin:0; padding:0; }
|
* { margin:0; padding:0; }
|
||||||
img { display:block; border:0; }
|
img { display:block; border:0; }
|
||||||
a abbr { cursor: pointer; border-bottom:0; }
|
a abbr { cursor: pointer; border-bottom:0; }
|
||||||
@ -848,7 +849,8 @@ margin-right:11px;
|
|||||||
|
|
||||||
/* NOTICE */
|
/* NOTICE */
|
||||||
.notice,
|
.notice,
|
||||||
.profile {
|
.profile,
|
||||||
|
.application {
|
||||||
position:relative;
|
position:relative;
|
||||||
padding-top:11px;
|
padding-top:11px;
|
||||||
padding-bottom:11px;
|
padding-bottom:11px;
|
||||||
@ -861,10 +863,15 @@ border-top-style:dotted;
|
|||||||
.notices li {
|
.notices li {
|
||||||
list-style-type:none;
|
list-style-type:none;
|
||||||
}
|
}
|
||||||
.notices li.hover {
|
.notices .notices {
|
||||||
border-radius:4px;
|
margin-top:7px;
|
||||||
-moz-border-radius:4px;
|
margin-left:2%;
|
||||||
-webkit-border-radius:4px;
|
width:98%;
|
||||||
|
float:left;
|
||||||
|
}
|
||||||
|
.mark-top {
|
||||||
|
border-top-width:1px;
|
||||||
|
border-top-style:solid;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* NOTICES */
|
/* NOTICES */
|
||||||
@ -995,25 +1002,22 @@ text-transform:lowercase;
|
|||||||
|
|
||||||
.dialogbox {
|
.dialogbox {
|
||||||
position:absolute;
|
position:absolute;
|
||||||
top:-4px;
|
top:-1px;
|
||||||
right:29px;
|
right:-1px;
|
||||||
z-index:9;
|
z-index:9;
|
||||||
min-width:199px;
|
|
||||||
float:none;
|
float:none;
|
||||||
background-color:#FFF;
|
|
||||||
padding:11px;
|
padding:11px;
|
||||||
border-radius:7px;
|
border-radius:7px;
|
||||||
-moz-border-radius:7px;
|
-moz-border-radius:7px;
|
||||||
-webkit-border-radius:7px;
|
-webkit-border-radius:7px;
|
||||||
border-style:solid;
|
border-style:solid;
|
||||||
border-width:1px;
|
border-width:1px;
|
||||||
border-color:#DDDDDD;
|
|
||||||
-moz-box-shadow:3px 7px 5px rgba(194, 194, 194, 0.7);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.dialogbox legend {
|
.dialogbox legend {
|
||||||
display:block !important;
|
display:block !important;
|
||||||
margin-right:18px;
|
margin-right:18px;
|
||||||
|
margin-bottom:18px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dialogbox button.close {
|
.dialogbox button.close {
|
||||||
@ -1022,11 +1026,22 @@ right:3px;
|
|||||||
top:3px;
|
top:3px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.dialogbox .form_guide {
|
||||||
|
font-weight:normal;
|
||||||
|
padding:0;
|
||||||
|
}
|
||||||
|
|
||||||
.dialogbox .submit_dialogbox {
|
.dialogbox .submit_dialogbox {
|
||||||
font-weight:bold;
|
font-weight:bold;
|
||||||
text-indent:0;
|
text-indent:0;
|
||||||
min-width:46px;
|
min-width:46px;
|
||||||
}
|
}
|
||||||
|
.dialogbox input {
|
||||||
|
padding-left:4px;
|
||||||
|
}
|
||||||
|
.dialogbox fieldset {
|
||||||
|
margin-bottom:0;
|
||||||
|
}
|
||||||
|
|
||||||
#wrap form.processing input.submit,
|
#wrap form.processing input.submit,
|
||||||
.entity_actions a.processing,
|
.entity_actions a.processing,
|
||||||
@ -1102,6 +1117,104 @@ width:16px;
|
|||||||
height:16px;
|
height:16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.notice .attachment {
|
||||||
|
position:relative;
|
||||||
|
padding-left:16px;
|
||||||
|
}
|
||||||
|
.notice .attachment.more {
|
||||||
|
text-indent:-9999px;
|
||||||
|
width:16px;
|
||||||
|
height:16px;
|
||||||
|
display:inline-block;
|
||||||
|
overflow:hidden;
|
||||||
|
vertical-align:middle;
|
||||||
|
margin-left:4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#attachments .attachment,
|
||||||
|
.notice .attachment.more {
|
||||||
|
padding-left:0;
|
||||||
|
}
|
||||||
|
.notice .attachment img {
|
||||||
|
position:absolute;
|
||||||
|
top:18px;
|
||||||
|
left:0;
|
||||||
|
z-index:99;
|
||||||
|
}
|
||||||
|
#shownotice .notice .attachment img {
|
||||||
|
position:static;
|
||||||
|
}
|
||||||
|
|
||||||
|
#attachments {
|
||||||
|
clear:both;
|
||||||
|
float:left;
|
||||||
|
width:100%;
|
||||||
|
margin-top:18px;
|
||||||
|
}
|
||||||
|
#attachments dt {
|
||||||
|
font-weight:bold;
|
||||||
|
font-size:1.3em;
|
||||||
|
margin-bottom:4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#attachments ol li {
|
||||||
|
margin-bottom:18px;
|
||||||
|
list-style-type:decimal;
|
||||||
|
float:left;
|
||||||
|
clear:both;
|
||||||
|
}
|
||||||
|
|
||||||
|
#jOverlayContent,
|
||||||
|
#jOverlayContent #content,
|
||||||
|
#jOverlayContent #content_inner {
|
||||||
|
width: auto !important;
|
||||||
|
margin-bottom:0;
|
||||||
|
}
|
||||||
|
#jOverlayContent #content {
|
||||||
|
padding:11px;
|
||||||
|
min-height:auto;
|
||||||
|
}
|
||||||
|
#jOverlayContent .entry-title {
|
||||||
|
display:block;
|
||||||
|
margin-bottom:11px;
|
||||||
|
}
|
||||||
|
#jOverlayContent button {
|
||||||
|
position:absolute;
|
||||||
|
top:0;
|
||||||
|
right:0;
|
||||||
|
}
|
||||||
|
#jOverlayContent h1 {
|
||||||
|
max-width:425px;
|
||||||
|
}
|
||||||
|
#jOverlayContent #content {
|
||||||
|
border-radius:7px;
|
||||||
|
-moz-border-radius:7px;
|
||||||
|
-webkit-border-radius:7px;
|
||||||
|
}
|
||||||
|
#jOverlayLoading {
|
||||||
|
top:5%;
|
||||||
|
left:40%;
|
||||||
|
}
|
||||||
|
#attachment_view img {
|
||||||
|
max-width:480px;
|
||||||
|
max-height:480px;
|
||||||
|
}
|
||||||
|
#attachment_view #oembed_info {
|
||||||
|
margin-top:11px;
|
||||||
|
}
|
||||||
|
#attachment_view #oembed_info dt,
|
||||||
|
#attachment_view #oembed_info dd {
|
||||||
|
float:left;
|
||||||
|
}
|
||||||
|
#attachment_view #oembed_info dt {
|
||||||
|
clear:left;
|
||||||
|
margin-right:11px;
|
||||||
|
font-weight:bold;
|
||||||
|
}
|
||||||
|
#attachment_view #oembed_info dt:after {
|
||||||
|
content: ":";
|
||||||
|
}
|
||||||
|
|
||||||
#usergroups #new_group {
|
#usergroups #new_group {
|
||||||
float: left;
|
float: left;
|
||||||
margin-right: 2em;
|
margin-right: 2em;
|
||||||
@ -1358,3 +1471,34 @@ display:none;
|
|||||||
.guide {
|
.guide {
|
||||||
clear:both;
|
clear:both;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}/*end of @media screen, projection, tv*/
|
||||||
|
|
||||||
|
|
||||||
|
@media print {
|
||||||
|
a:after { background-color:#FFFFFF; }
|
||||||
|
a:not([href^="#"]):after { content:" <"attr(href)"> "; }
|
||||||
|
img { border:none; }
|
||||||
|
p { orphans: 2; widows: 1; }
|
||||||
|
|
||||||
|
#site_nav_global_primary,
|
||||||
|
#site_nav_local_views,
|
||||||
|
#form_notice,
|
||||||
|
.pagination,
|
||||||
|
#site_nav_global_secondary,
|
||||||
|
.entity_actions,
|
||||||
|
.notice-options,
|
||||||
|
#aside_primary,
|
||||||
|
.form_subscription_edit .submit {
|
||||||
|
display:none;
|
||||||
|
}
|
||||||
|
.timestamp dt, .timestamp dd,
|
||||||
|
.device dt, .device dd {
|
||||||
|
display:inline;
|
||||||
|
}
|
||||||
|
.profiles li,
|
||||||
|
.notices li {
|
||||||
|
margin-bottom:18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
}/*end of @media print*/
|
||||||
|
@ -7,8 +7,9 @@
|
|||||||
* @link http://status.net/
|
* @link http://status.net/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@import url(base.css);
|
@import url(base.css) screen, projection, tv, print;
|
||||||
|
|
||||||
|
@media screen, projection, tv {
|
||||||
html {
|
html {
|
||||||
background-color:#144A6E;
|
background-color:#144A6E;
|
||||||
}
|
}
|
||||||
@ -22,7 +23,7 @@ background:#144A6E url(../images/illustrations/illu_pattern-01.png) repeat-x;
|
|||||||
}
|
}
|
||||||
|
|
||||||
address {
|
address {
|
||||||
margin-right:7.18%;
|
margin-right:5.7%;
|
||||||
}
|
}
|
||||||
|
|
||||||
input, textarea, select {
|
input, textarea, select {
|
||||||
@ -205,15 +206,26 @@ button.close,
|
|||||||
.form_user_unsubscribe input.submit,
|
.form_user_unsubscribe input.submit,
|
||||||
.form_group_join input.submit,
|
.form_group_join input.submit,
|
||||||
.form_user_subscribe input.submit,
|
.form_user_subscribe input.submit,
|
||||||
|
.form_remote_authorize input.submit,
|
||||||
.entity_subscribe a,
|
.entity_subscribe a,
|
||||||
.entity_moderation p,
|
.entity_moderation p,
|
||||||
.entity_sandbox input.submit,
|
.entity_sandbox input.submit,
|
||||||
.entity_silence input.submit,
|
.entity_silence input.submit,
|
||||||
.entity_delete input.submit,
|
.entity_delete input.submit,
|
||||||
|
.entity_role p,
|
||||||
|
.entity_role_administrator input.submit,
|
||||||
|
.entity_role_moderator input.submit,
|
||||||
.notice-options .repeated,
|
.notice-options .repeated,
|
||||||
.form_notice label[for=notice_data-geo],
|
.form_notice label[for=notice_data-geo],
|
||||||
button.minimize,
|
button.minimize,
|
||||||
.form_reset_key input.submit {
|
.form_reset_key input.submit,
|
||||||
|
.entity_clear input.submit,
|
||||||
|
.entity_flag input.submit,
|
||||||
|
.entity_flag p,
|
||||||
|
.entity_subscribe input.submit,
|
||||||
|
#realtime_play,
|
||||||
|
#realtime_pause,
|
||||||
|
#realtime_popup {
|
||||||
background-image:url(../../base/images/icons/icons-01.gif);
|
background-image:url(../../base/images/icons/icons-01.gif);
|
||||||
background-repeat:no-repeat;
|
background-repeat:no-repeat;
|
||||||
background-color:transparent;
|
background-color:transparent;
|
||||||
@ -241,7 +253,9 @@ border-color:#FFFFFF;
|
|||||||
#content,
|
#content,
|
||||||
#site_nav_local_views .current a,
|
#site_nav_local_views .current a,
|
||||||
.entity_send-a-message .form_notice,
|
.entity_send-a-message .form_notice,
|
||||||
.entity_moderation:hover ul {
|
.entity_moderation:hover ul,
|
||||||
|
.entity_role:hover ul,
|
||||||
|
.dialogbox {
|
||||||
background-color:#FFFFFF;
|
background-color:#FFFFFF;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -352,12 +366,37 @@ background-position: 5px -1511px;
|
|||||||
.form_reset_key input.submit {
|
.form_reset_key input.submit {
|
||||||
background-position: 5px -1973px;
|
background-position: 5px -1973px;
|
||||||
}
|
}
|
||||||
|
.entity_clear input.submit {
|
||||||
|
background-position: 5px -2039px;
|
||||||
|
}
|
||||||
|
.entity_flag input.submit,
|
||||||
|
.entity_flag p {
|
||||||
|
background-position: 5px -2105px;
|
||||||
|
}
|
||||||
|
.entity_subscribe input.accept {
|
||||||
|
background-position: 5px -2171px;
|
||||||
|
}
|
||||||
|
.entity_subscribe input.reject {
|
||||||
|
background-position: 5px -2237px;
|
||||||
|
}
|
||||||
|
#realtime_play {
|
||||||
|
background-position: 0 -2308px;
|
||||||
|
}
|
||||||
|
#realtime_pause {
|
||||||
|
background-position: 0 -2374px;
|
||||||
|
}
|
||||||
|
#realtime_popup {
|
||||||
|
background-position: 0 -1714px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* NOTICES */
|
/* NOTICES */
|
||||||
.notice .attachment {
|
.notice .attachment {
|
||||||
background-position:0 -394px;
|
background-position:0 -394px;
|
||||||
}
|
}
|
||||||
|
.notice .attachment.more {
|
||||||
|
background-position:0 -2770px;
|
||||||
|
}
|
||||||
#attachments .attachment {
|
#attachments .attachment {
|
||||||
background:none;
|
background:none;
|
||||||
}
|
}
|
||||||
@ -380,14 +419,19 @@ background-position:0 -1582px;
|
|||||||
background-position:0 -1648px;
|
background-position:0 -1648px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.notices .attachment.more,
|
||||||
.notices div.entry-content,
|
.notices div.entry-content,
|
||||||
.notices div.notice-options {
|
.notices div.notice-options {
|
||||||
opacity:0.4;
|
opacity:0.4;
|
||||||
}
|
}
|
||||||
|
.notices li:hover .attachment.more,
|
||||||
.notices li:hover div.entry-content,
|
.notices li:hover div.entry-content,
|
||||||
.notices li:hover div.notice-options {
|
.notices li:hover div.notice-options {
|
||||||
opacity:1;
|
opacity:1;
|
||||||
}
|
}
|
||||||
|
.opaque {
|
||||||
|
opacity:1 !important;
|
||||||
|
}
|
||||||
div.notice-options a,
|
div.notice-options a,
|
||||||
div.notice-options input {
|
div.notice-options input {
|
||||||
font-family:sans-serif;
|
font-family:sans-serif;
|
||||||
|
Before Width: | Height: | Size: 6.2 KiB After Width: | Height: | Size: 9.9 KiB |
@ -7,6 +7,7 @@
|
|||||||
* @link http://status.net/
|
* @link http://status.net/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@media screen, projection, tv {
|
||||||
* { margin:0; padding:0; }
|
* { margin:0; padding:0; }
|
||||||
img { display:block; border:0; }
|
img { display:block; border:0; }
|
||||||
a abbr { cursor: pointer; border-bottom:0; }
|
a abbr { cursor: pointer; border-bottom:0; }
|
||||||
@ -872,7 +873,7 @@ display:inline;
|
|||||||
}
|
}
|
||||||
|
|
||||||
.profile .entity_profile .fn,
|
.profile .entity_profile .fn,
|
||||||
.profile .entity_profile .location {
|
.profile .entity_profile .label {
|
||||||
margin-left:11px;
|
margin-left:11px;
|
||||||
margin-bottom:4px;
|
margin-bottom:4px;
|
||||||
width:auto;
|
width:auto;
|
||||||
@ -900,7 +901,8 @@ margin-right:11px;
|
|||||||
|
|
||||||
/* NOTICE */
|
/* NOTICE */
|
||||||
.notice,
|
.notice,
|
||||||
.profile {
|
.profile,
|
||||||
|
.application {
|
||||||
position:relative;
|
position:relative;
|
||||||
padding-top:11px;
|
padding-top:11px;
|
||||||
padding-bottom:11px;
|
padding-bottom:11px;
|
||||||
@ -1031,25 +1033,22 @@ left:0;
|
|||||||
|
|
||||||
.dialogbox {
|
.dialogbox {
|
||||||
position:absolute;
|
position:absolute;
|
||||||
top:-4px;
|
top:-1px;
|
||||||
right:29px;
|
right:-1px;
|
||||||
z-index:9;
|
z-index:9;
|
||||||
min-width:199px;
|
|
||||||
float:none;
|
float:none;
|
||||||
background-color:#FFF;
|
|
||||||
padding:11px;
|
padding:11px;
|
||||||
border-radius:7px;
|
border-radius:7px;
|
||||||
-moz-border-radius:7px;
|
-moz-border-radius:7px;
|
||||||
-webkit-border-radius:7px;
|
-webkit-border-radius:7px;
|
||||||
border-style:solid;
|
border-style:solid;
|
||||||
border-width:1px;
|
border-width:1px;
|
||||||
border-color:#DDDDDD;
|
|
||||||
-moz-box-shadow:3px 7px 5px rgba(194, 194, 194, 0.7);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.dialogbox legend {
|
.dialogbox legend {
|
||||||
display:block !important;
|
display:block !important;
|
||||||
margin-right:18px;
|
margin-right:18px;
|
||||||
|
margin-bottom:18px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dialogbox button.close {
|
.dialogbox button.close {
|
||||||
@ -1058,9 +1057,21 @@ right:3px;
|
|||||||
top:3px;
|
top:3px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.dialogbox .form_guide {
|
||||||
|
font-weight:normal;
|
||||||
|
padding:0;
|
||||||
|
}
|
||||||
|
|
||||||
.dialogbox .submit_dialogbox {
|
.dialogbox .submit_dialogbox {
|
||||||
text-indent:0;
|
|
||||||
font-weight:bold;
|
font-weight:bold;
|
||||||
|
text-indent:0;
|
||||||
|
min-width:46px;
|
||||||
|
}
|
||||||
|
.dialogbox input {
|
||||||
|
padding-left:4px;
|
||||||
|
}
|
||||||
|
.dialogbox fieldset {
|
||||||
|
margin-bottom:0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.notice-options {
|
.notice-options {
|
||||||
@ -1554,7 +1565,8 @@ display:none;
|
|||||||
}
|
}
|
||||||
|
|
||||||
#public #core,
|
#public #core,
|
||||||
#showstream #core {
|
#showstream #core,
|
||||||
|
#showgroup #core {
|
||||||
margin-top:10em;
|
margin-top:10em;
|
||||||
}
|
}
|
||||||
#public.user_in #core,
|
#public.user_in #core,
|
||||||
@ -1651,7 +1663,8 @@ background-color:transparent;
|
|||||||
}
|
}
|
||||||
|
|
||||||
#wrap form.processing input.submit,
|
#wrap form.processing input.submit,
|
||||||
.entity_actions a.processing {
|
#core a.processing,
|
||||||
|
.dialogbox.processing .submit_dialogbox {
|
||||||
background:#FFFFFF url(../../base/images/icons/icon_processing.gif) no-repeat 47% 47%;
|
background:#FFFFFF url(../../base/images/icons/icon_processing.gif) no-repeat 47% 47%;
|
||||||
cursor:wait;
|
cursor:wait;
|
||||||
text-indent:-9999px;
|
text-indent:-9999px;
|
||||||
@ -1806,7 +1819,9 @@ border-color:#FFFFFF;
|
|||||||
#content,
|
#content,
|
||||||
#site_nav_local_views .current a,
|
#site_nav_local_views .current a,
|
||||||
.entity_send-a-message .form_notice,
|
.entity_send-a-message .form_notice,
|
||||||
.entity_moderation:hover ul {
|
.entity_moderation:hover ul,
|
||||||
|
.entity_role:hover ul,
|
||||||
|
.dialogbox {
|
||||||
background-color:#FFFFFF;
|
background-color:#FFFFFF;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1938,6 +1953,9 @@ background-position: 0 -1714px;
|
|||||||
.notice .attachment {
|
.notice .attachment {
|
||||||
background-position:0 -394px;
|
background-position:0 -394px;
|
||||||
}
|
}
|
||||||
|
.notice .attachment.more {
|
||||||
|
background-position:0 -2770px;
|
||||||
|
}
|
||||||
#attachments .attachment {
|
#attachments .attachment {
|
||||||
background:none;
|
background:none;
|
||||||
}
|
}
|
||||||
@ -1960,10 +1978,12 @@ background-position:0 -1582px;
|
|||||||
background-position:0 -1648px;
|
background-position:0 -1648px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.notices .attachment.more,
|
||||||
.notices div.entry-content,
|
.notices div.entry-content,
|
||||||
.notices div.notice-options {
|
.notices div.notice-options {
|
||||||
opacity:0.4;
|
opacity:0.4;
|
||||||
}
|
}
|
||||||
|
.notices li:hover .attachment.more,
|
||||||
.notices li:hover div.entry-content,
|
.notices li:hover div.entry-content,
|
||||||
.notices li:hover div.notice-options {
|
.notices li:hover div.notice-options {
|
||||||
opacity:1;
|
opacity:1;
|
||||||
@ -2098,4 +2118,33 @@ border-left-color:#FFFFFF;
|
|||||||
#footer {
|
#footer {
|
||||||
background-color:#FFFFFF;
|
background-color:#FFFFFF;
|
||||||
}
|
}
|
||||||
|
}/*end of @media screen, projection, tv*/
|
||||||
|
|
||||||
|
|
||||||
|
@media print {
|
||||||
|
a:after { background-color:#FFFFFF; }
|
||||||
|
a:not([href^="#"]):after { content:" <"attr(href)"> "; }
|
||||||
|
img { border:none; }
|
||||||
|
p { orphans: 2; widows: 1; }
|
||||||
|
|
||||||
|
#site_nav_global_primary,
|
||||||
|
#site_nav_local_views,
|
||||||
|
#form_notice,
|
||||||
|
.pagination,
|
||||||
|
#site_nav_global_secondary,
|
||||||
|
.entity_actions,
|
||||||
|
.notice-options,
|
||||||
|
#aside_primary,
|
||||||
|
.form_subscription_edit .submit {
|
||||||
|
display:none;
|
||||||
|
}
|
||||||
|
.timestamp dt, .timestamp dd,
|
||||||
|
.device dt, .device dd {
|
||||||
|
display:inline;
|
||||||
|
}
|
||||||
|
.profiles li,
|
||||||
|
.notices li {
|
||||||
|
margin-bottom:18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
}/*end of @media print*/
|
||||||
|
Before Width: | Height: | Size: 6.2 KiB After Width: | Height: | Size: 9.9 KiB |
@ -7,8 +7,9 @@
|
|||||||
* @link http://status.net/
|
* @link http://status.net/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@import url(../../base/css/display.css);
|
@import url(../../base/css/display.css) screen, projection, tv, print;
|
||||||
|
|
||||||
|
@media screen, projection, tv {
|
||||||
body,
|
body,
|
||||||
a:active {
|
a:active {
|
||||||
background-color:#CEE1E9;
|
background-color:#CEE1E9;
|
||||||
@ -213,7 +214,7 @@ background-color:transparent;
|
|||||||
}
|
}
|
||||||
|
|
||||||
#wrap form.processing input.submit,
|
#wrap form.processing input.submit,
|
||||||
.entity_actions a.processing,
|
#core a.processing,
|
||||||
.dialogbox.processing .submit_dialogbox {
|
.dialogbox.processing .submit_dialogbox {
|
||||||
background:#FFFFFF url(../../base/images/icons/icon_processing.gif) no-repeat 47% 47%;
|
background:#FFFFFF url(../../base/images/icons/icon_processing.gif) no-repeat 47% 47%;
|
||||||
}
|
}
|
||||||
@ -410,6 +411,9 @@ background-position: 0 -1714px;
|
|||||||
.notice .attachment {
|
.notice .attachment {
|
||||||
background-position:0 -394px;
|
background-position:0 -394px;
|
||||||
}
|
}
|
||||||
|
.notice .attachment.more {
|
||||||
|
background-position:0 -2770px;
|
||||||
|
}
|
||||||
#attachments .attachment {
|
#attachments .attachment {
|
||||||
background:none;
|
background:none;
|
||||||
}
|
}
|
||||||
@ -432,10 +436,12 @@ background-position:0 -1582px;
|
|||||||
background-position:0 -1648px;
|
background-position:0 -1648px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.notices .attachment.more,
|
||||||
.notices div.entry-content,
|
.notices div.entry-content,
|
||||||
.notices div.notice-options {
|
.notices div.notice-options {
|
||||||
opacity:0.4;
|
opacity:0.4;
|
||||||
}
|
}
|
||||||
|
.notices li:hover .attachment.more,
|
||||||
.notices li:hover div.entry-content,
|
.notices li:hover div.entry-content,
|
||||||
.notices li:hover div.notice-options {
|
.notices li:hover div.notice-options {
|
||||||
opacity:1;
|
opacity:1;
|
||||||
@ -443,6 +449,7 @@ opacity:1;
|
|||||||
.opaque {
|
.opaque {
|
||||||
opacity:1 !important;
|
opacity:1 !important;
|
||||||
}
|
}
|
||||||
|
.attachment.more,
|
||||||
.notice-options a,
|
.notice-options a,
|
||||||
.notice-options input {
|
.notice-options input {
|
||||||
font-family:sans-serif;
|
font-family:sans-serif;
|
||||||
@ -450,6 +457,12 @@ box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3);
|
|||||||
-moz-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3);
|
-moz-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3);
|
||||||
-webkit-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3);
|
-webkit-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3);
|
||||||
}
|
}
|
||||||
|
.attachment.more:focus {
|
||||||
|
box-shadow:none;
|
||||||
|
-moz-box-shadow:none;
|
||||||
|
-webkit-box-shadow:none;
|
||||||
|
outline:none;
|
||||||
|
}
|
||||||
#content .notices li:hover,
|
#content .notices li:hover,
|
||||||
#content .applications li:hover,
|
#content .applications li:hover,
|
||||||
#content tbody tr:hover {
|
#content tbody tr:hover {
|
||||||
@ -504,3 +517,4 @@ background-position:90% 47%;
|
|||||||
background-position:10% 47%;
|
background-position:10% 47%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}/*end of @media screen, projection, tv*/
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
* @link http://status.net/
|
* @link http://status.net/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@media screen, projection, tv {
|
||||||
* { margin:0; padding:0; }
|
* { margin:0; padding:0; }
|
||||||
img { display:block; border:0; }
|
img { display:block; border:0; }
|
||||||
a abbr { cursor: pointer; border-bottom:0; }
|
a abbr { cursor: pointer; border-bottom:0; }
|
||||||
@ -700,7 +701,8 @@ margin-right:11px;
|
|||||||
|
|
||||||
/* NOTICE */
|
/* NOTICE */
|
||||||
.notice,
|
.notice,
|
||||||
.profile {
|
.profile,
|
||||||
|
.application {
|
||||||
position:relative;
|
position:relative;
|
||||||
padding-top:11px;
|
padding-top:11px;
|
||||||
padding-bottom:11px;
|
padding-bottom:11px;
|
||||||
@ -708,11 +710,21 @@ clear:both;
|
|||||||
float:left;
|
float:left;
|
||||||
width:100%;
|
width:100%;
|
||||||
border-top-width:1px;
|
border-top-width:1px;
|
||||||
border-top-style:dashed;
|
border-top-style:dotted;
|
||||||
}
|
}
|
||||||
.notices li {
|
.notices li {
|
||||||
list-style-type:none;
|
list-style-type:none;
|
||||||
}
|
}
|
||||||
|
.notices .notices {
|
||||||
|
margin-top:7px;
|
||||||
|
margin-left:2%;
|
||||||
|
width:98%;
|
||||||
|
float:left;
|
||||||
|
}
|
||||||
|
.mark-top {
|
||||||
|
border-top-width:1px;
|
||||||
|
border-top-style:solid;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* NOTICES */
|
/* NOTICES */
|
||||||
@ -812,75 +824,249 @@ text-transform:lowercase;
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.notice-options {
|
.notice .notice-options a,
|
||||||
padding-left:2%;
|
.notice .notice-options input {
|
||||||
float:left;
|
float:left;
|
||||||
width:50%;
|
font-size:1.025em;
|
||||||
position:relative;
|
|
||||||
font-size:0.95em;
|
|
||||||
width:12.5%;
|
|
||||||
float:right;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.notice-options a {
|
.notice div.entry-content .timestamp {
|
||||||
float:left;
|
display:inline-block;
|
||||||
}
|
}
|
||||||
.notice-options .notice_delete,
|
|
||||||
.notice-options .notice_reply,
|
.entry-content .repeat {
|
||||||
.notice-options .form_favor,
|
display:block;
|
||||||
.notice-options .form_disfavor {
|
|
||||||
position:absolute;
|
|
||||||
top:0;
|
|
||||||
}
|
}
|
||||||
.notice-options .form_favor,
|
.entry-content .repeat .photo {
|
||||||
.notice-options .form_disfavor {
|
float:none;
|
||||||
|
margin-right:1px;
|
||||||
|
position:relative;
|
||||||
|
top:4px;
|
||||||
left:0;
|
left:0;
|
||||||
}
|
}
|
||||||
.notice-options .notice_reply {
|
|
||||||
left:29px;
|
.dialogbox {
|
||||||
}
|
position:absolute;
|
||||||
.notice-options .notice_delete {
|
top:-1px;
|
||||||
right:0;
|
right:-1px;
|
||||||
}
|
z-index:9;
|
||||||
.notice-options .notice_reply dt {
|
float:none;
|
||||||
display:none;
|
padding:11px;
|
||||||
|
border-radius:7px;
|
||||||
|
-moz-border-radius:7px;
|
||||||
|
-webkit-border-radius:7px;
|
||||||
|
border-style:solid;
|
||||||
|
border-width:1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dialogbox legend {
|
||||||
|
display:block !important;
|
||||||
|
margin-right:18px;
|
||||||
|
margin-bottom:18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dialogbox button.close {
|
||||||
|
position:absolute;
|
||||||
|
right:3px;
|
||||||
|
top:3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dialogbox .form_guide {
|
||||||
|
font-weight:normal;
|
||||||
|
padding:0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dialogbox .submit_dialogbox {
|
||||||
|
font-weight:bold;
|
||||||
|
text-indent:0;
|
||||||
|
min-width:46px;
|
||||||
|
}
|
||||||
|
.dialogbox input {
|
||||||
|
padding-left:4px;
|
||||||
|
}
|
||||||
|
.dialogbox fieldset {
|
||||||
|
margin-bottom:0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#wrap form.processing input.submit,
|
||||||
|
.entity_actions a.processing,
|
||||||
|
.dialogbox.processing .submit_dialogbox {
|
||||||
|
cursor:wait;
|
||||||
|
outline:none;
|
||||||
|
text-indent:-9999px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form_repeat.dialogbox {
|
||||||
|
top:-4px;
|
||||||
|
right:29px;
|
||||||
|
min-width:199px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notice-options {
|
||||||
|
position:relative;
|
||||||
|
font-size:0.95em;
|
||||||
|
width:113px;
|
||||||
|
float:right;
|
||||||
|
margin-top:3px;
|
||||||
|
margin-right:4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.notice-options input,
|
|
||||||
.notice-options a {
|
.notice-options a {
|
||||||
|
float:left;
|
||||||
|
}
|
||||||
|
.notice-options .notice_reply,
|
||||||
|
.notice-options .form_repeat,
|
||||||
|
.notice-options .form_favor,
|
||||||
|
.notice-options .form_disfavor,
|
||||||
|
.notice-options .repeated {
|
||||||
|
float:left;
|
||||||
|
margin-left:14.2%;
|
||||||
|
}
|
||||||
|
.notice-options .form_favor,
|
||||||
|
.notice-options .form_disfavor {
|
||||||
|
margin-left:0;
|
||||||
|
}
|
||||||
|
.notice-options input,
|
||||||
|
.notice-options a,
|
||||||
|
.notice-options .repeated {
|
||||||
text-indent:-9999px;
|
text-indent:-9999px;
|
||||||
outline:none;
|
outline:none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.notice-options .notice_reply a,
|
|
||||||
.notice-options input.submit {
|
.notice-options input.submit {
|
||||||
display:block;
|
display:block;
|
||||||
border:0;
|
border:0;
|
||||||
}
|
}
|
||||||
.notice-options .notice_reply a,
|
.notice-options .notice_reply,
|
||||||
.notice-options .notice_delete a {
|
.notice-options .notice_delete {
|
||||||
text-decoration:none;
|
text-decoration:none;
|
||||||
padding-left:16px;
|
|
||||||
}
|
}
|
||||||
|
.notice .notice-options .notice_delete {
|
||||||
|
float:right;
|
||||||
|
}
|
||||||
.notice-options form input.submit {
|
.notice-options form input.submit {
|
||||||
width:16px;
|
width:16px;
|
||||||
padding:2px 0;
|
height:16px;
|
||||||
|
padding:0;
|
||||||
|
border-radius:0;
|
||||||
|
-moz-border-radius:0;
|
||||||
|
-webkit-border-radius:0;
|
||||||
}
|
}
|
||||||
|
.notice-options .form_repeat legend,
|
||||||
.notice-options .notice_delete dt,
|
|
||||||
.notice-options .form_favor legend,
|
.notice-options .form_favor legend,
|
||||||
.notice-options .form_disfavor legend {
|
.notice-options .form_disfavor legend {
|
||||||
display:none;
|
display:none;
|
||||||
}
|
}
|
||||||
.notice-options .notice_delete fieldset,
|
.notice-options .form_repeat fieldset,
|
||||||
.notice-options .form_favor fieldset,
|
.notice-options .form_favor fieldset,
|
||||||
.notice-options .form_disfavor fieldset {
|
.notice-options .form_disfavor fieldset {
|
||||||
border:0;
|
border:0;
|
||||||
padding:0;
|
padding:0;
|
||||||
}
|
}
|
||||||
|
.notice-options a,
|
||||||
|
.notice-options .repeated {
|
||||||
|
width:16px;
|
||||||
|
height:16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.notice .attachment {
|
||||||
|
position:relative;
|
||||||
|
padding-left:16px;
|
||||||
|
}
|
||||||
|
.notice .attachment.more {
|
||||||
|
text-indent:-9999px;
|
||||||
|
width:16px;
|
||||||
|
height:16px;
|
||||||
|
display:inline-block;
|
||||||
|
overflow:hidden;
|
||||||
|
vertical-align:middle;
|
||||||
|
margin-left:4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#attachments .attachment,
|
||||||
|
.notice .attachment.more {
|
||||||
|
padding-left:0;
|
||||||
|
}
|
||||||
|
.notice .attachment img {
|
||||||
|
position:absolute;
|
||||||
|
top:18px;
|
||||||
|
left:0;
|
||||||
|
z-index:99;
|
||||||
|
}
|
||||||
|
#shownotice .notice .attachment img {
|
||||||
|
position:static;
|
||||||
|
}
|
||||||
|
|
||||||
|
#attachments {
|
||||||
|
clear:both;
|
||||||
|
float:left;
|
||||||
|
width:100%;
|
||||||
|
margin-top:18px;
|
||||||
|
}
|
||||||
|
#attachments dt {
|
||||||
|
font-weight:bold;
|
||||||
|
font-size:1.3em;
|
||||||
|
margin-bottom:4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#attachments ol li {
|
||||||
|
margin-bottom:18px;
|
||||||
|
list-style-type:decimal;
|
||||||
|
float:left;
|
||||||
|
clear:both;
|
||||||
|
}
|
||||||
|
|
||||||
|
#jOverlayContent,
|
||||||
|
#jOverlayContent #content,
|
||||||
|
#jOverlayContent #content_inner {
|
||||||
|
width: auto !important;
|
||||||
|
margin-bottom:0;
|
||||||
|
}
|
||||||
|
#jOverlayContent #content {
|
||||||
|
padding:11px;
|
||||||
|
min-height:auto;
|
||||||
|
}
|
||||||
|
#jOverlayContent .entry-title {
|
||||||
|
display:block;
|
||||||
|
margin-bottom:11px;
|
||||||
|
}
|
||||||
|
#jOverlayContent button {
|
||||||
|
position:absolute;
|
||||||
|
top:0;
|
||||||
|
right:0;
|
||||||
|
}
|
||||||
|
#jOverlayContent h1 {
|
||||||
|
max-width:425px;
|
||||||
|
}
|
||||||
|
#jOverlayContent #content {
|
||||||
|
border-radius:7px;
|
||||||
|
-moz-border-radius:7px;
|
||||||
|
-webkit-border-radius:7px;
|
||||||
|
}
|
||||||
|
#jOverlayLoading {
|
||||||
|
top:5%;
|
||||||
|
left:40%;
|
||||||
|
}
|
||||||
|
#attachment_view img {
|
||||||
|
max-width:480px;
|
||||||
|
max-height:480px;
|
||||||
|
}
|
||||||
|
#attachment_view #oembed_info {
|
||||||
|
margin-top:11px;
|
||||||
|
}
|
||||||
|
#attachment_view #oembed_info dt,
|
||||||
|
#attachment_view #oembed_info dd {
|
||||||
|
float:left;
|
||||||
|
}
|
||||||
|
#attachment_view #oembed_info dt {
|
||||||
|
clear:left;
|
||||||
|
margin-right:11px;
|
||||||
|
font-weight:bold;
|
||||||
|
}
|
||||||
|
#attachment_view #oembed_info dt:after {
|
||||||
|
content: ":";
|
||||||
|
}
|
||||||
|
|
||||||
#usergroups #new_group {
|
#usergroups #new_group {
|
||||||
float: left;
|
float: left;
|
||||||
margin-right: 2em;
|
margin-right: 2em;
|
||||||
@ -1137,3 +1323,34 @@ display:none;
|
|||||||
.guide {
|
.guide {
|
||||||
clear:both;
|
clear:both;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}/*end of @media screen, projection, tv*/
|
||||||
|
|
||||||
|
|
||||||
|
@media print {
|
||||||
|
a:after { background-color:#FFFFFF; }
|
||||||
|
a:not([href^="#"]):after { content:" <"attr(href)"> "; }
|
||||||
|
img { border:none; }
|
||||||
|
p { orphans: 2; widows: 1; }
|
||||||
|
|
||||||
|
#site_nav_global_primary,
|
||||||
|
#site_nav_local_views,
|
||||||
|
#form_notice,
|
||||||
|
.pagination,
|
||||||
|
#site_nav_global_secondary,
|
||||||
|
.entity_actions,
|
||||||
|
.notice-options,
|
||||||
|
#aside_primary,
|
||||||
|
.form_subscription_edit .submit {
|
||||||
|
display:none;
|
||||||
|
}
|
||||||
|
.timestamp dt, .timestamp dd,
|
||||||
|
.device dt, .device dd {
|
||||||
|
display:inline;
|
||||||
|
}
|
||||||
|
.profiles li,
|
||||||
|
.notices li {
|
||||||
|
margin-bottom:18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
}/*end of @media print*/
|
||||||
|
@ -7,8 +7,9 @@
|
|||||||
* @link http://status.net/
|
* @link http://status.net/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@import url(base.css);
|
@import url(base.css) screen, projection, tv, print;
|
||||||
|
|
||||||
|
@media screen, projection, tv {
|
||||||
html,
|
html,
|
||||||
body,
|
body,
|
||||||
a:active {
|
a:active {
|
||||||
@ -199,14 +200,19 @@ background:transparent url(../../base/images/icons/twotone/green/disfavourite.gi
|
|||||||
background:transparent url(../../base/images/icons/twotone/green/trash.gif) no-repeat 0 45%;
|
background:transparent url(../../base/images/icons/twotone/green/trash.gif) no-repeat 0 45%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.notices .attachment.more,
|
||||||
.notices div.entry-content,
|
.notices div.entry-content,
|
||||||
.notices div.notice-options {
|
.notices div.notice-options {
|
||||||
opacity:0.4;
|
opacity:0.4;
|
||||||
}
|
}
|
||||||
.notices li.hover div.entry-content,
|
.notices li:hover .attachment.more,
|
||||||
.notices li.hover div.notice-options {
|
.notices li:hover div.entry-content,
|
||||||
|
.notices li:hover div.notice-options {
|
||||||
opacity:1;
|
opacity:1;
|
||||||
}
|
}
|
||||||
|
.opaque {
|
||||||
|
opacity:1 !important;
|
||||||
|
}
|
||||||
div.entry-content {
|
div.entry-content {
|
||||||
color:#ccc;
|
color:#ccc;
|
||||||
}
|
}
|
||||||
@ -234,3 +240,5 @@ background-position:10% 45%;
|
|||||||
background-image:url(../../base/images/icons/twotone/green/arrow-right.gif);
|
background-image:url(../../base/images/icons/twotone/green/arrow-right.gif);
|
||||||
background-position:90% 45%;
|
background-position:90% 45%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}/*end of @media screen, projection, tv*/
|
||||||
|
Before Width: | Height: | Size: 6.2 KiB After Width: | Height: | Size: 9.9 KiB |
@ -7,8 +7,9 @@
|
|||||||
* @link http://status.net/
|
* @link http://status.net/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@import url(../../base/css/display.css);
|
@import url(../../base/css/display.css) screen, projection, tv, print;
|
||||||
|
|
||||||
|
@media screen, projection, tv {
|
||||||
body,
|
body,
|
||||||
a:active {
|
a:active {
|
||||||
background-color:#F0F2F5;
|
background-color:#F0F2F5;
|
||||||
@ -214,7 +215,7 @@ background-color:transparent;
|
|||||||
}
|
}
|
||||||
|
|
||||||
#wrap form.processing input.submit,
|
#wrap form.processing input.submit,
|
||||||
.entity_actions a.processing,
|
#core a.processing,
|
||||||
.dialogbox.processing .submit_dialogbox {
|
.dialogbox.processing .submit_dialogbox {
|
||||||
background:#FFFFFF url(../../base/images/icons/icon_processing.gif) no-repeat 47% 47%;
|
background:#FFFFFF url(../../base/images/icons/icon_processing.gif) no-repeat 47% 47%;
|
||||||
}
|
}
|
||||||
@ -409,6 +410,9 @@ background-position: 0 -1714px;
|
|||||||
.notice .attachment {
|
.notice .attachment {
|
||||||
background-position:0 -394px;
|
background-position:0 -394px;
|
||||||
}
|
}
|
||||||
|
.notice .attachment.more {
|
||||||
|
background-position:0 -2770px;
|
||||||
|
}
|
||||||
#attachments .attachment {
|
#attachments .attachment {
|
||||||
background:none;
|
background:none;
|
||||||
}
|
}
|
||||||
@ -431,10 +435,12 @@ background-position:0 -1582px;
|
|||||||
background-position:0 -1648px;
|
background-position:0 -1648px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.notices .attachment.more,
|
||||||
.notices div.entry-content,
|
.notices div.entry-content,
|
||||||
.notices div.notice-options {
|
.notices div.notice-options {
|
||||||
opacity:0.4;
|
opacity:0.4;
|
||||||
}
|
}
|
||||||
|
.notices li:hover .attachment.more,
|
||||||
.notices li:hover div.entry-content,
|
.notices li:hover div.entry-content,
|
||||||
.notices li:hover div.notice-options {
|
.notices li:hover div.notice-options {
|
||||||
opacity:1;
|
opacity:1;
|
||||||
@ -442,6 +448,7 @@ opacity:1;
|
|||||||
.opaque {
|
.opaque {
|
||||||
opacity:1 !important;
|
opacity:1 !important;
|
||||||
}
|
}
|
||||||
|
.attachment.more,
|
||||||
.notice-options a,
|
.notice-options a,
|
||||||
.notice-options input {
|
.notice-options input {
|
||||||
font-family:sans-serif;
|
font-family:sans-serif;
|
||||||
@ -449,6 +456,12 @@ box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3);
|
|||||||
-moz-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3);
|
-moz-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3);
|
||||||
-webkit-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3);
|
-webkit-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3);
|
||||||
}
|
}
|
||||||
|
.attachment.more:focus {
|
||||||
|
box-shadow:none;
|
||||||
|
-moz-box-shadow:none;
|
||||||
|
-webkit-box-shadow:none;
|
||||||
|
outline:none;
|
||||||
|
}
|
||||||
#content .notices li:hover,
|
#content .notices li:hover,
|
||||||
#content .applications li:hover,
|
#content .applications li:hover,
|
||||||
#content tbody tr:hover {
|
#content tbody tr:hover {
|
||||||
@ -503,3 +516,4 @@ background-position:90% 47%;
|
|||||||
background-position:10% 47%;
|
background-position:10% 47%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}/*end of @media screen, projection, tv*/
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
* @link http://status.net/
|
* @link http://status.net/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@media screen, projection, tv {
|
||||||
* { margin:0; padding:0; }
|
* { margin:0; padding:0; }
|
||||||
img { display:block; border:0; }
|
img { display:block; border:0; }
|
||||||
a abbr { cursor: pointer; border-bottom:0; }
|
a abbr { cursor: pointer; border-bottom:0; }
|
||||||
@ -791,25 +792,30 @@ margin-right:11px;
|
|||||||
|
|
||||||
/* NOTICE */
|
/* NOTICE */
|
||||||
.notice,
|
.notice,
|
||||||
.profile {
|
.profile,
|
||||||
|
.application {
|
||||||
position:relative;
|
position:relative;
|
||||||
padding:11px 2%;
|
padding-top:11px;
|
||||||
|
padding-bottom:11px;
|
||||||
clear:both;
|
clear:both;
|
||||||
float:left;
|
float:left;
|
||||||
width:95.7%;
|
width:100%;
|
||||||
border-width:1px;
|
border-top-width:1px;
|
||||||
border-style:solid;
|
border-top-style:dotted;
|
||||||
margin-bottom:11px;
|
|
||||||
}
|
}
|
||||||
.notices li {
|
.notices li {
|
||||||
list-style-type:none;
|
list-style-type:none;
|
||||||
}
|
}
|
||||||
.notices .notices {
|
.notices .notices {
|
||||||
margin-top:7px;
|
margin-top:7px;
|
||||||
margin-left:5%;
|
margin-left:2%;
|
||||||
width:95%;
|
width:98%;
|
||||||
float:left;
|
float:left;
|
||||||
}
|
}
|
||||||
|
.mark-top {
|
||||||
|
border-top-width:1px;
|
||||||
|
border-top-style:solid;
|
||||||
|
}
|
||||||
|
|
||||||
#aside_primary .notice,
|
#aside_primary .notice,
|
||||||
#aside_primary .profile {
|
#aside_primary .profile {
|
||||||
@ -969,36 +975,38 @@ outline:none;
|
|||||||
text-indent:-9999px;
|
text-indent:-9999px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.form_repeat.dialogbox {
|
||||||
|
top:-4px;
|
||||||
|
right:29px;
|
||||||
|
min-width:199px;
|
||||||
|
}
|
||||||
|
|
||||||
.notice-options {
|
.notice-options {
|
||||||
position:relative;
|
position:relative;
|
||||||
font-size:0.95em;
|
font-size:0.95em;
|
||||||
width:90px;
|
width:113px;
|
||||||
float:right;
|
float:right;
|
||||||
margin-right:11px;
|
margin-top:3px;
|
||||||
|
margin-right:4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.notice-options a {
|
.notice-options a {
|
||||||
float:left;
|
float:left;
|
||||||
}
|
}
|
||||||
.notice-options .notice_delete,
|
|
||||||
.notice-options .notice_reply,
|
.notice-options .notice_reply,
|
||||||
|
.notice-options .form_repeat,
|
||||||
.notice-options .form_favor,
|
.notice-options .form_favor,
|
||||||
.notice-options .form_disfavor {
|
.notice-options .form_disfavor,
|
||||||
position:absolute;
|
.notice-options .repeated {
|
||||||
top:0;
|
float:left;
|
||||||
|
margin-left:14.2%;
|
||||||
}
|
}
|
||||||
.notice-options .form_favor,
|
.notice-options .form_favor,
|
||||||
.notice-options .form_disfavor {
|
.notice-options .form_disfavor {
|
||||||
left:0;
|
margin-left:0;
|
||||||
}
|
|
||||||
.notice-options .notice_reply {
|
|
||||||
left:29px;
|
|
||||||
}
|
|
||||||
.notice-options .notice_delete {
|
|
||||||
right:0;
|
|
||||||
}
|
}
|
||||||
.notice-options input,
|
.notice-options input,
|
||||||
.notice-options a {
|
.notice-options a,
|
||||||
|
.notice-options .repeated {
|
||||||
text-indent:-9999px;
|
text-indent:-9999px;
|
||||||
outline:none;
|
outline:none;
|
||||||
}
|
}
|
||||||
@ -1009,27 +1017,51 @@ border:0;
|
|||||||
.notice-options .notice_reply,
|
.notice-options .notice_reply,
|
||||||
.notice-options .notice_delete {
|
.notice-options .notice_delete {
|
||||||
text-decoration:none;
|
text-decoration:none;
|
||||||
padding-left:16px;
|
}
|
||||||
|
.notice .notice-options .notice_delete {
|
||||||
|
float:right;
|
||||||
}
|
}
|
||||||
.notice-options form input.submit {
|
.notice-options form input.submit {
|
||||||
width:16px;
|
width:16px;
|
||||||
padding:2px 0;
|
height:16px;
|
||||||
|
padding:0;
|
||||||
|
border-radius:0;
|
||||||
|
-moz-border-radius:0;
|
||||||
|
-webkit-border-radius:0;
|
||||||
}
|
}
|
||||||
|
.notice-options .form_repeat legend,
|
||||||
.notice-options .form_favor legend,
|
.notice-options .form_favor legend,
|
||||||
.notice-options .form_disfavor legend {
|
.notice-options .form_disfavor legend {
|
||||||
display:none;
|
display:none;
|
||||||
}
|
}
|
||||||
|
.notice-options .form_repeat fieldset,
|
||||||
.notice-options .form_favor fieldset,
|
.notice-options .form_favor fieldset,
|
||||||
.notice-options .form_disfavor fieldset {
|
.notice-options .form_disfavor fieldset {
|
||||||
border:0;
|
border:0;
|
||||||
padding:0;
|
padding:0;
|
||||||
}
|
}
|
||||||
|
.notice-options a,
|
||||||
|
.notice-options .repeated {
|
||||||
|
width:16px;
|
||||||
|
height:16px;
|
||||||
|
}
|
||||||
|
|
||||||
.notice .attachment {
|
.notice .attachment {
|
||||||
position:relative;
|
position:relative;
|
||||||
padding-left:16px;
|
padding-left:16px;
|
||||||
}
|
}
|
||||||
#attachments .attachment {
|
.notice .attachment.more {
|
||||||
|
text-indent:-9999px;
|
||||||
|
width:16px;
|
||||||
|
height:16px;
|
||||||
|
display:inline-block;
|
||||||
|
overflow:hidden;
|
||||||
|
vertical-align:middle;
|
||||||
|
margin-left:4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#attachments .attachment,
|
||||||
|
.notice .attachment.more {
|
||||||
padding-left:0;
|
padding-left:0;
|
||||||
}
|
}
|
||||||
.notice .attachment img {
|
.notice .attachment img {
|
||||||
@ -1383,3 +1415,34 @@ display:none;
|
|||||||
.guide {
|
.guide {
|
||||||
clear:both;
|
clear:both;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}/*end of @media screen, projection, tv*/
|
||||||
|
|
||||||
|
|
||||||
|
@media print {
|
||||||
|
a:after { background-color:#FFFFFF; }
|
||||||
|
a:not([href^="#"]):after { content:" <"attr(href)"> "; }
|
||||||
|
img { border:none; }
|
||||||
|
p { orphans: 2; widows: 1; }
|
||||||
|
|
||||||
|
#site_nav_global_primary,
|
||||||
|
#site_nav_local_views,
|
||||||
|
#form_notice,
|
||||||
|
.pagination,
|
||||||
|
#site_nav_global_secondary,
|
||||||
|
.entity_actions,
|
||||||
|
.notice-options,
|
||||||
|
#aside_primary,
|
||||||
|
.form_subscription_edit .submit {
|
||||||
|
display:none;
|
||||||
|
}
|
||||||
|
.timestamp dt, .timestamp dd,
|
||||||
|
.device dt, .device dd {
|
||||||
|
display:inline;
|
||||||
|
}
|
||||||
|
.profiles li,
|
||||||
|
.notices li {
|
||||||
|
margin-bottom:18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
}/*end of @media print*/
|
||||||
|
@ -7,8 +7,9 @@
|
|||||||
* @link http://status.net/
|
* @link http://status.net/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@import url(base.css);
|
@import url(base.css) screen, projection, tv, print;
|
||||||
|
|
||||||
|
@media screen, projection, tv {
|
||||||
html {
|
html {
|
||||||
background:url(../images/illustrations/illu_pigeons-01.png) no-repeat 0 100%;
|
background:url(../images/illustrations/illu_pigeons-01.png) no-repeat 0 100%;
|
||||||
}
|
}
|
||||||
@ -140,7 +141,6 @@ background-color:transparent;
|
|||||||
color:#000000;
|
color:#000000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.aside .section {
|
.aside .section {
|
||||||
border-color:#FFFFFF;
|
border-color:#FFFFFF;
|
||||||
background-color:#FFFFFF;
|
background-color:#FFFFFF;
|
||||||
@ -172,6 +172,11 @@ color:#7F1114;
|
|||||||
color:#FFFFFF;
|
color:#FFFFFF;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.aside .section .dialogbox {
|
||||||
|
color:#000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.section .profile {
|
.section .profile {
|
||||||
border-top-color:#87B4C8;
|
border-top-color:#87B4C8;
|
||||||
@ -245,7 +250,7 @@ background-color:transparent;
|
|||||||
|
|
||||||
|
|
||||||
#wrap form.processing input.submit,
|
#wrap form.processing input.submit,
|
||||||
.entity_actions a.processing,
|
#core a.processing,
|
||||||
.dialogbox.processing .submit_dialogbox {
|
.dialogbox.processing .submit_dialogbox {
|
||||||
background:#FFFFFF url(../../base/images/icons/icon_processing.gif) no-repeat 47% 47%;
|
background:#FFFFFF url(../../base/images/icons/icon_processing.gif) no-repeat 47% 47%;
|
||||||
}
|
}
|
||||||
@ -253,6 +258,13 @@ background:#FFFFFF url(../../base/images/icons/icon_processing.gif) no-repeat 47
|
|||||||
background-image:none;
|
background-image:none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.entity_send-a-message .form_notice,
|
||||||
|
.entity_moderation:hover ul,
|
||||||
|
.entity_role:hover ul,
|
||||||
|
.dialogbox {
|
||||||
|
background-color:#FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
#content,
|
#content,
|
||||||
#site_nav_local_views a {
|
#site_nav_local_views a {
|
||||||
border-color:#FFFFFF;
|
border-color:#FFFFFF;
|
||||||
@ -413,6 +425,9 @@ background-position: 0 -1714px;
|
|||||||
.notice .attachment {
|
.notice .attachment {
|
||||||
background-position:0 -394px;
|
background-position:0 -394px;
|
||||||
}
|
}
|
||||||
|
.notice .attachment.more {
|
||||||
|
background-position:0 -2770px;
|
||||||
|
}
|
||||||
#attachments .attachment {
|
#attachments .attachment {
|
||||||
background:none;
|
background:none;
|
||||||
}
|
}
|
||||||
@ -435,15 +450,19 @@ background-position:0 -1582px;
|
|||||||
background-position:0 -1648px;
|
background-position:0 -1648px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.notices .attachment.more,
|
||||||
.notices div.entry-content,
|
.notices div.entry-content,
|
||||||
.notices div.notice-options {
|
.notices div.notice-options {
|
||||||
opacity:0.4;
|
opacity:0.4;
|
||||||
}
|
}
|
||||||
|
.notices li:hover .attachment.more,
|
||||||
.notices li:hover div.entry-content,
|
.notices li:hover div.entry-content,
|
||||||
.notices li:hover div.notice-options {
|
.notices li:hover div.notice-options {
|
||||||
opacity:1;
|
opacity:1;
|
||||||
}
|
}
|
||||||
|
.opaque {
|
||||||
|
opacity:1 !important;
|
||||||
|
}
|
||||||
div.entry-content {
|
div.entry-content {
|
||||||
color:#333333;
|
color:#333333;
|
||||||
}
|
}
|
||||||
@ -496,3 +515,4 @@ background-position:90% 47%;
|
|||||||
background-position:10% 47%;
|
background-position:10% 47%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}/*end of @media screen, projection, tv*/
|
||||||
|