forked from GNUsocial/gnu-social
Initial move towards microformats2
No validation has been attempted yet. Lots of changes left. This is visibly not (very) different from the previous CSS layout. But some simplifications have been made. Might cause issues with local changes to themes and CSS. Also maybe javascript which depends on certain legacy microformats elements. The move to microformats2 is motivated by the announcement that all microformats should be migrated to version 2, as of 2014-06-20 at: http://microformats.org/2014/06/20/microformats-org-turns-9-upgrade-to-microformats2
This commit is contained in:
parent
d16af504f6
commit
414a95a784
@ -96,11 +96,11 @@ class DocAction extends Action
|
||||
*/
|
||||
function showContentBlock()
|
||||
{
|
||||
$this->elementStart('div', array('id' => 'content', 'class' => 'hentry'));
|
||||
$this->elementStart('div', array('id' => 'content', 'class' => 'h-entry'));
|
||||
$this->showPageTitle();
|
||||
$this->showPageNoticeBlock();
|
||||
$this->elementStart('div', array('id' => 'content_inner',
|
||||
'class' => 'entry-content'));
|
||||
'class' => 'e-content'));
|
||||
// show the actual content (forms, lists, whatever)
|
||||
$this->showContent();
|
||||
$this->elementEnd('div');
|
||||
|
@ -202,7 +202,7 @@ class SearchNoticeListItem extends NoticeListItem {
|
||||
function showContent()
|
||||
{
|
||||
// FIXME: URL, image, video, audio
|
||||
$this->out->elementStart('p', array('class' => 'entry-content'));
|
||||
$this->out->elementStart('p', array('class' => 'e-content'));
|
||||
if ($this->notice->rendered) {
|
||||
$this->out->raw($this->highlight($this->notice->rendered, $this->terms));
|
||||
} else {
|
||||
|
@ -293,14 +293,14 @@ class RegisterAction extends Action
|
||||
}
|
||||
}
|
||||
|
||||
// overrided to add hentry, and content-inner class
|
||||
// overrided to add h-entry, and content-inner class
|
||||
function showContentBlock()
|
||||
{
|
||||
$this->elementStart('div', array('id' => 'content', 'class' => 'hentry'));
|
||||
$this->elementStart('div', array('id' => 'content', 'class' => 'h-entry'));
|
||||
$this->showPageTitle();
|
||||
$this->showPageNoticeBlock();
|
||||
$this->elementStart('div', array('id' => 'content_inner',
|
||||
'class' => 'entry-content'));
|
||||
'class' => 'e-content'));
|
||||
// show the actual content (forms, lists, whatever)
|
||||
$this->showContent();
|
||||
$this->elementEnd('div');
|
||||
|
@ -147,20 +147,20 @@ class ShowApplicationAction extends Action
|
||||
|
||||
$consumer = $this->application->getConsumer();
|
||||
|
||||
$this->elementStart('div', 'entity_profile vcard');
|
||||
$this->elementStart('div', 'entity_profile h-card');
|
||||
// TRANS: Header on the OAuth application page.
|
||||
$this->element('h2', null, _('Application profile'));
|
||||
if (!empty($this->application->icon)) {
|
||||
$this->element('img', array('src' => $this->application->icon,
|
||||
'class' => 'photo logo entity_depiction'));
|
||||
'class' => 'u-photo logo entity_depiction'));
|
||||
}
|
||||
|
||||
$this->element('a', array('href' => $this->application->source_url,
|
||||
'class' => 'url fn entity_fn'),
|
||||
'class' => 'u-url p-name entity_fn'),
|
||||
$this->application->name);
|
||||
|
||||
$this->element('a', array('href' => $this->application->homepage,
|
||||
'class' => 'url entity_org'),
|
||||
'class' => 'u-url entity_org'),
|
||||
$this->application->organization);
|
||||
|
||||
$this->element('div',
|
||||
|
@ -40,7 +40,7 @@ require_once INSTALLDIR.'/lib/noticelist.php';
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
class ShownoticeAction extends Action
|
||||
class ShownoticeAction extends ManagedAction
|
||||
{
|
||||
/**
|
||||
* Notice object to show
|
||||
@ -184,33 +184,7 @@ class ShownoticeAction extends Action
|
||||
*/
|
||||
function title()
|
||||
{
|
||||
$base = $this->profile->getFancyName();
|
||||
|
||||
// TRANS: Title of the page that shows a notice.
|
||||
// TRANS: %1$s is a user name, %2$s is the notice creation date/time.
|
||||
return sprintf(_('%1$s\'s status on %2$s'),
|
||||
$base,
|
||||
common_exact_date($this->notice->created));
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle input
|
||||
*
|
||||
* Only handles get, so just show the page.
|
||||
*
|
||||
* @param array $args $_REQUEST data (unused)
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
protected function handle()
|
||||
{
|
||||
parent::handle();
|
||||
|
||||
if (StatusNet::isAjax()) {
|
||||
$this->showAjax();
|
||||
} else {
|
||||
$this->showPage();
|
||||
}
|
||||
return $this->notice->getTitle();
|
||||
}
|
||||
|
||||
/**
|
||||
@ -223,23 +197,9 @@ class ShownoticeAction extends Action
|
||||
function showContent()
|
||||
{
|
||||
$this->elementStart('ol', array('class' => 'notices xoxo'));
|
||||
$nli = new SingleNoticeItem($this->notice, $this);
|
||||
$nli->show();
|
||||
$this->elementEnd('ol');
|
||||
}
|
||||
|
||||
function showAjax()
|
||||
{
|
||||
$this->startHTML('text/xml;charset=utf-8');
|
||||
$this->elementStart('head');
|
||||
// TRANS: Title for page that shows a notice.
|
||||
$this->element('title', null, _m('TITLE','Notice'));
|
||||
$this->elementEnd('head');
|
||||
$this->elementStart('body');
|
||||
$nli = new NoticeListItem($this->notice, $this);
|
||||
$nli->show();
|
||||
$this->elementEnd('body');
|
||||
$this->endHTML();
|
||||
$this->elementEnd('ol');
|
||||
}
|
||||
|
||||
/**
|
||||
@ -270,7 +230,7 @@ class ShownoticeAction extends Action
|
||||
{
|
||||
$user = User::getKV($this->profile->id);
|
||||
|
||||
if (!$user) {
|
||||
if (!$user instanceof User) {
|
||||
return;
|
||||
}
|
||||
|
||||
@ -289,12 +249,3 @@ class ShownoticeAction extends Action
|
||||
'content' => $this->notice->content));
|
||||
}
|
||||
}
|
||||
|
||||
// @todo FIXME: Class documentation missing.
|
||||
class SingleNoticeItem extends DoFollowListItem
|
||||
{
|
||||
function avatarSize()
|
||||
{
|
||||
return AVATAR_STREAM_SIZE;
|
||||
}
|
||||
}
|
||||
|
@ -364,7 +364,7 @@ class Peopletag extends PeopletagListItem
|
||||
function showStart()
|
||||
{
|
||||
$mode = $this->peopletag->private ? 'private' : 'public';
|
||||
$this->out->elementStart('div', array('class' => 'hentry peopletag peopletag-profile mode-'.$mode,
|
||||
$this->out->elementStart('div', array('class' => 'h-entry peopletag peopletag-profile mode-'.$mode,
|
||||
'id' => 'peopletag-' . $this->peopletag->id));
|
||||
}
|
||||
|
||||
|
@ -101,7 +101,7 @@ class TagprofileAction extends Action
|
||||
function showContent()
|
||||
{
|
||||
if (Event::handle('StartShowTagProfileForm', array($this, $this->profile)) && $this->profile) {
|
||||
$this->elementStart('div', 'entity_profile vcard author');
|
||||
$this->elementStart('div', 'entity_profile h-card p-author');
|
||||
// TRANS: Header in list form.
|
||||
$this->element('h2', null, _('User profile'));
|
||||
|
||||
@ -118,7 +118,7 @@ class TagprofileAction extends Action
|
||||
'class' => 'entity_nickname nickname'),
|
||||
$this->profile->nickname);
|
||||
if ($this->profile->fullname) {
|
||||
$this->element('div', 'fn entity_fn', $this->profile->fullname);
|
||||
$this->element('div', 'p-name entity_fn', $this->profile->fullname);
|
||||
}
|
||||
|
||||
if ($this->profile->location) {
|
||||
@ -128,7 +128,7 @@ class TagprofileAction extends Action
|
||||
if ($this->profile->homepage) {
|
||||
$this->element('a', array('href' => $this->profile->homepage,
|
||||
'rel' => 'me',
|
||||
'class' => 'url entity_url'),
|
||||
'class' => 'u-url entity_url'),
|
||||
$this->profile->homepage);
|
||||
}
|
||||
|
||||
|
@ -108,17 +108,17 @@ class VersionAction extends Action
|
||||
|
||||
|
||||
/*
|
||||
* Override to add hentry, and content-inner classes
|
||||
* Override to add h-entry, and content-inner classes
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function showContentBlock()
|
||||
{
|
||||
$this->elementStart('div', array('id' => 'content', 'class' => 'hentry'));
|
||||
$this->elementStart('div', array('id' => 'content', 'class' => 'h-entry'));
|
||||
$this->showPageTitle();
|
||||
$this->showPageNoticeBlock();
|
||||
$this->elementStart('div', array('id' => 'content_inner',
|
||||
'class' => 'entry-content'));
|
||||
'class' => 'e-content'));
|
||||
// show the actual content (forms, lists, whatever)
|
||||
$this->showContent();
|
||||
$this->elementEnd('div');
|
||||
|
@ -232,6 +232,19 @@ class Notice extends Managed_DataObject
|
||||
return common_local_url('shownotice', array('notice' => $this->id), null, null, false);
|
||||
}
|
||||
|
||||
public function getTitle()
|
||||
{
|
||||
$title = null;
|
||||
if (Event::handle('GetNoticeTitle', array($this, &$title))) {
|
||||
// TRANS: Title of a notice posted without a title value.
|
||||
// TRANS: %1$s is a user name, %2$s is the notice creation date/time.
|
||||
$title = sprintf(_('%1$s\'s status on %2$s'),
|
||||
$this->getProfile()->getFancyName(),
|
||||
common_exact_date($this->created));
|
||||
}
|
||||
return $title;
|
||||
}
|
||||
|
||||
/*
|
||||
* Get the original representation URL of this notice.
|
||||
*/
|
||||
|
11
install.php
11
install.php
@ -376,19 +376,16 @@ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
||||
<link rel="stylesheet" type="text/css" href="theme/base/css/display.css" media="screen, projection, tv"/>
|
||||
<link rel="stylesheet" type="text/css" href="theme/neo/css/display.css" media="screen, projection, tv"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||
<!--[if IE]><link rel="stylesheet" type="text/css" href="theme/base/css/ie.css" /><![endif]-->
|
||||
<!--[if lte IE 6]><link rel="stylesheet" type="text/css" theme/base/css/ie6.css" /><![endif]-->
|
||||
<!--[if lte IE 7]><link rel="stylesheet" type="text/css" theme/base/css/ie7.css" /><![endif]-->
|
||||
<script src="js/extlib/jquery.js"></script>
|
||||
<script src="js/install.js"></script>
|
||||
</head>
|
||||
<body id="install">
|
||||
<div id="wrap">
|
||||
<div id="header">
|
||||
<address id="site_contact" class="vcard">
|
||||
<a class="url home bookmark" href=".">
|
||||
<img class="logo photo" src="theme/neo/logo.png" alt="GNU social"/>
|
||||
<span class="fn org">GNU social</span>
|
||||
<address id="site_contact" class="h-card">
|
||||
<a class="u-url p-name home bookmark org" href=".">
|
||||
<img class="logo u-photo" src="theme/neo/logo.png" alt="GNU social"/>
|
||||
GNU social
|
||||
</a>
|
||||
</address>
|
||||
<div id="site_nav_global_primary"></div>
|
||||
|
@ -863,7 +863,7 @@ var SN = { // StatusNet
|
||||
var m = $(this);
|
||||
m.addClass(SN.C.S.Processing);
|
||||
$.get(m.attr('href'), {ajax: 1}, function (data) {
|
||||
m.parent('.entry-content').html($(data).find('#attachment_view .entry-content').html());
|
||||
m.parent('.e-content').html($(data).find('#attachment_view .e-content').html());
|
||||
});
|
||||
|
||||
return false;
|
||||
@ -1361,7 +1361,7 @@ var SN = { // StatusNet
|
||||
|
||||
var profileLink = $('#nav_profile a').attr('href');
|
||||
if (profileLink) {
|
||||
var authorUrl = $(notice).find('.vcard.author a.url').attr('href');
|
||||
var authorUrl = $(notice).find('.h-card.u-url').attr('href');
|
||||
if (authorUrl == profileLink) {
|
||||
if (action == 'all' || action == 'showstream') {
|
||||
// Posts always show on your own friends and profile streams.
|
||||
|
@ -582,8 +582,7 @@ class Action extends HTMLOutputter // lawsuit
|
||||
*/
|
||||
function showLogo()
|
||||
{
|
||||
$this->elementStart('address', array('id' => 'site_contact',
|
||||
'class' => 'vcard'));
|
||||
$this->elementStart('address', array('id' => 'site_contact', 'class' => 'h-card'));
|
||||
if (Event::handle('StartAddressData', array($this))) {
|
||||
if (common_config('singleuser', 'enabled')) {
|
||||
$user = User::singleUser();
|
||||
@ -596,7 +595,7 @@ class Action extends HTMLOutputter // lawsuit
|
||||
$url = common_local_url('public');
|
||||
}
|
||||
|
||||
$this->elementStart('a', array('class' => 'url home bookmark',
|
||||
$this->elementStart('a', array('class' => 'home bookmark',
|
||||
'href' => $url));
|
||||
|
||||
if (StatusNet::isHTTPS()) {
|
||||
@ -622,13 +621,11 @@ class Action extends HTMLOutputter // lawsuit
|
||||
}
|
||||
|
||||
if (!empty($logoUrl)) {
|
||||
$this->element('img', array('class' => 'logo photo',
|
||||
$this->element('img', array('class' => 'logo u-photo p-name',
|
||||
'src' => $logoUrl,
|
||||
'alt' => common_config('site', 'name')));
|
||||
}
|
||||
|
||||
$this->text(' ');
|
||||
$this->element('span', array('class' => 'fn org'), common_config('site', 'name'));
|
||||
$this->elementEnd('a');
|
||||
|
||||
Event::handle('EndAddressData', array($this));
|
||||
|
@ -87,50 +87,26 @@ class ApplicationList extends Widget
|
||||
{
|
||||
$user = common_current_user();
|
||||
|
||||
$this->out->elementStart(
|
||||
'li',
|
||||
array(
|
||||
'class' => 'application',
|
||||
'id' => 'oauthclient-' . $this->application->id
|
||||
)
|
||||
);
|
||||
$this->out->elementStart('li', array('class' => 'application h-entry',
|
||||
'id' => 'oauthclient-' . $this->application->id));
|
||||
|
||||
$this->out->elementStart('span', 'vcard author');
|
||||
|
||||
$this->out->elementStart(
|
||||
'a',
|
||||
array(
|
||||
'href' => common_local_url(
|
||||
'showapplication',
|
||||
array('id' => $this->application->id)),
|
||||
'class' => 'url'
|
||||
)
|
||||
);
|
||||
$this->out->elementStart('a', array('href' => common_local_url('showapplication',
|
||||
array('id' => $this->application->id)),
|
||||
'class' => 'h-card'));
|
||||
|
||||
if (!empty($this->application->icon)) {
|
||||
$this->out->element(
|
||||
'img',
|
||||
array(
|
||||
'src' => $this->application->icon,
|
||||
'class' => 'photo avatar'
|
||||
)
|
||||
);
|
||||
$this->out->element('img', array('src' => $this->application->icon,
|
||||
'class' => 'avatar u-photo'));
|
||||
}
|
||||
|
||||
$this->out->element('span', 'fn', $this->application->name);
|
||||
$this->out->text($this->application->name);
|
||||
$this->out->elementEnd('a');
|
||||
$this->out->elementEnd('span');
|
||||
|
||||
$this->out->raw(' by ');
|
||||
|
||||
$this->out->element(
|
||||
'a',
|
||||
array(
|
||||
'href' => $this->application->homepage,
|
||||
'class' => 'url'
|
||||
),
|
||||
$this->application->organization
|
||||
);
|
||||
$this->out->element('a', array('href' => $this->application->homepage,
|
||||
'class' => 'u-url'),
|
||||
$this->application->organization);
|
||||
|
||||
$this->out->element('p', 'note', $this->application->description);
|
||||
$this->out->elementEnd('li');
|
||||
@ -204,59 +180,33 @@ class ConnectedAppsList extends Widget
|
||||
{
|
||||
$app = Oauth_application::getKV('id', $this->connection->application_id);
|
||||
|
||||
$this->out->elementStart(
|
||||
'li',
|
||||
array(
|
||||
'class' => 'application',
|
||||
'id' => 'oauthclient-' . $app->id
|
||||
)
|
||||
);
|
||||
$this->out->elementStart('li', array('class' => 'application h-entry',
|
||||
'id' => 'oauthclient-' . $app->id));
|
||||
|
||||
$this->out->elementStart('span', 'vcard author');
|
||||
|
||||
$this->out->elementStart(
|
||||
'a',
|
||||
array(
|
||||
'href' => $app->source_url,
|
||||
'class' => 'url'
|
||||
)
|
||||
);
|
||||
$this->out->elementStart('a', array('href' => $app->source_url,
|
||||
'class' => 'h-card p-name'));
|
||||
|
||||
if (!empty($app->icon)) {
|
||||
$this->out->element(
|
||||
'img',
|
||||
array(
|
||||
'src' => $app->icon,
|
||||
'class' => 'photo avatar'
|
||||
)
|
||||
);
|
||||
$this->out->element('img', array('src' => $app->icon,
|
||||
'class' => 'avatar u-photo'));
|
||||
}
|
||||
if ($app->name != 'anonymous') {
|
||||
$this->out->element('span', 'fn', $app->name);
|
||||
$this->out->text($app->name);
|
||||
} else {
|
||||
// TRANS: Name for an anonymous application in application list.
|
||||
$this->out->element('span', 'p-name', _('Unknown application'));
|
||||
}
|
||||
$this->out->elementEnd('a');
|
||||
|
||||
if ($app->name == 'anonymous') {
|
||||
// TRANS: Name for an anonymous application in application list.
|
||||
$this->out->element('span', 'fn', _('Unknown application'));
|
||||
}
|
||||
|
||||
$this->out->elementEnd('span');
|
||||
|
||||
if ($app->name != 'anonymous') {
|
||||
// @todo FIXME: i18n trouble.
|
||||
// TRANS: Message has a leading space and a trailing space. Used in application list.
|
||||
// TRANS: Before this message the application name is put, behind it the organisation that manages it.
|
||||
$this->out->raw(_(' by '));
|
||||
|
||||
$this->out->element(
|
||||
'a',
|
||||
array(
|
||||
'href' => $app->homepage,
|
||||
'class' => 'url'
|
||||
),
|
||||
$app->organization
|
||||
);
|
||||
$this->out->element('a', array('href' => $app->homepage,
|
||||
'class' => 'h-card'),
|
||||
$app->organization);
|
||||
}
|
||||
|
||||
// TRANS: Application access type
|
||||
|
@ -38,12 +38,12 @@ class Attachment extends AttachmentListItem
|
||||
function showLink() {
|
||||
if (Event::handle('StartShowAttachmentLink', array($this->out, $this->attachment))) {
|
||||
$this->out->elementStart('div', array('id' => 'attachment_view',
|
||||
'class' => 'hentry'));
|
||||
'class' => 'h-entry'));
|
||||
$this->out->elementStart('div', 'entry-title');
|
||||
$this->out->element('a', $this->linkAttr(), _('Download link'));
|
||||
$this->out->elementEnd('div');
|
||||
|
||||
$this->out->elementStart('div', 'entry-content');
|
||||
$this->out->elementStart('div', 'e-content');
|
||||
$this->showRepresentation();
|
||||
$this->out->elementEnd('div');
|
||||
Event::handle('EndShowAttachmentLink', array($this->out, $this->attachment));
|
||||
|
@ -90,7 +90,7 @@ class AttachmentList extends Widget
|
||||
|
||||
function showListStart()
|
||||
{
|
||||
$this->out->elementStart('ol', array('class' => 'attachments entry-content'));
|
||||
$this->out->elementStart('ol', array('class' => 'attachments'));
|
||||
}
|
||||
|
||||
function showListEnd()
|
||||
|
@ -114,9 +114,9 @@ class AttachmentListItem extends Widget
|
||||
case 'image/jpeg':
|
||||
try {
|
||||
$thumb = $this->attachment->getThumbnail();
|
||||
$this->out->element('img', array('src' => $thumb->getUrl(), 'alt' => ''));
|
||||
$this->out->element('img', array('class'=>'u-photo', 'src' => $thumb->getUrl(), 'alt' => $e->file->title));
|
||||
} catch (UseFileAsThumbnailException $e) {
|
||||
$this->out->element('img', array('src' => $e->file->getUrl(), 'alt' => $e->file->title));
|
||||
$this->out->element('img', array('class'=>'u-photo', 'src' => $e->file->getUrl(), 'alt' => $e->file->title));
|
||||
} catch (UnsupportedMediaException $e) {
|
||||
// FIXME: Show a good representation of unsupported/unshowable images
|
||||
}
|
||||
@ -151,7 +151,7 @@ class AttachmentListItem extends Widget
|
||||
$poster = null;
|
||||
}
|
||||
$this->out->elementStart($mediatype,
|
||||
array('class'=>'attachment_player',
|
||||
array('class'=>"attachment_player u-{$mediatype}",
|
||||
'poster'=>$poster,
|
||||
'controls'=>'controls'));
|
||||
$this->out->element('source',
|
||||
|
@ -66,7 +66,7 @@ class DoFollowListItem extends NoticeListItem
|
||||
function showContent()
|
||||
{
|
||||
// FIXME: URL, image, video, audio
|
||||
$this->out->elementStart('p', array('class' => 'entry-content'));
|
||||
$this->out->elementStart('div', array('class' => 'e-content'));
|
||||
|
||||
if (!empty($this->notice->rendered)) {
|
||||
$html = $this->notice->rendered;
|
||||
@ -83,6 +83,6 @@ class DoFollowListItem extends NoticeListItem
|
||||
|
||||
$this->out->raw($html);
|
||||
|
||||
$this->out->elementEnd('p');
|
||||
$this->out->elementEnd('div');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -83,36 +83,29 @@ class GroupList extends Widget
|
||||
|
||||
function showGroup()
|
||||
{
|
||||
$this->out->elementStart('li', array('class' => 'profile hentry',
|
||||
$this->out->elementStart('li', array('class' => 'profile h-card',
|
||||
'id' => 'group-' . $this->group->id));
|
||||
|
||||
$user = common_current_user();
|
||||
|
||||
$this->out->elementStart('div', 'entity_profile vcard entry-content');
|
||||
$this->out->elementStart('div', 'entity_profile');
|
||||
|
||||
$logo = ($this->group->stream_logo) ?
|
||||
$this->group->stream_logo : User_group::defaultLogo(AVATAR_STREAM_SIZE);
|
||||
$logo = $this->group->stream_logo ?: User_group::defaultLogo(AVATAR_STREAM_SIZE);
|
||||
|
||||
$this->out->elementStart('a', array('href' => $this->group->homeUrl(),
|
||||
'class' => 'url entry-title',
|
||||
'class' => 'u-url p-nickname',
|
||||
'rel' => 'contact group'));
|
||||
$this->out->element('img', array('src' => $logo,
|
||||
'class' => 'photo avatar',
|
||||
'class' => 'avatar u-photo',
|
||||
'width' => AVATAR_STREAM_SIZE,
|
||||
'height' => AVATAR_STREAM_SIZE,
|
||||
'alt' =>
|
||||
($this->group->fullname) ? $this->group->fullname :
|
||||
$this->group->nickname));
|
||||
$this->out->text(' ');
|
||||
$hasFN = ($this->group->fullname) ? 'nickname' : 'fn org nickname';
|
||||
$this->out->elementStart('span', $hasFN);
|
||||
$this->out->raw($this->highlight($this->group->nickname));
|
||||
$this->out->elementEnd('span');
|
||||
'alt' => $this->group->getBestName()));
|
||||
$this->out->text($this->group->getNickname());
|
||||
$this->out->elementEnd('a');
|
||||
|
||||
if ($this->group->fullname) {
|
||||
$this->out->text(' ');
|
||||
$this->out->elementStart('span', 'fn org');
|
||||
$this->out->elementStart('span', 'p-name');
|
||||
$this->out->raw($this->highlight($this->group->fullname));
|
||||
$this->out->elementEnd('span');
|
||||
}
|
||||
@ -125,7 +118,7 @@ class GroupList extends Widget
|
||||
if ($this->group->homepage) {
|
||||
$this->out->text(' ');
|
||||
$this->out->elementStart('a', array('href' => $this->group->homepage,
|
||||
'class' => 'url'));
|
||||
'class' => 'u-url'));
|
||||
$this->out->raw($this->highlight($this->group->homepage));
|
||||
$this->out->elementEnd('a');
|
||||
}
|
||||
|
@ -67,13 +67,11 @@ class GroupMiniList extends GroupList
|
||||
|
||||
function showGroup()
|
||||
{
|
||||
$this->out->elementStart('li', 'vcard');
|
||||
$this->out->elementStart('a', array('title' => ($this->group->fullname) ?
|
||||
$this->group->fullname :
|
||||
$this->group->nickname,
|
||||
$this->out->elementStart('li', 'h-card');
|
||||
$this->out->elementStart('a', array('title' => $this->group->getBestName(),
|
||||
'href' => $this->group->homeUrl(),
|
||||
'rel' => 'contact group',
|
||||
'class' => 'url'));
|
||||
'class' => 'p-name u-url org'));
|
||||
|
||||
$logo = ($this->group->mini_logo) ?
|
||||
$this->group->mini_logo : User_group::defaultLogo(AVATAR_MINI_SIZE);
|
||||
@ -82,10 +80,7 @@ class GroupMiniList extends GroupList
|
||||
'width' => AVATAR_MINI_SIZE,
|
||||
'height' => AVATAR_MINI_SIZE,
|
||||
'class' => 'avatar photo',
|
||||
'alt' => ($this->group->fullname) ?
|
||||
$this->group->fullname :
|
||||
$this->group->nickname));
|
||||
$this->out->element('span', 'fn org nickname', $this->group->nickname);
|
||||
'alt' => $this->group->getBestName()));
|
||||
$this->out->elementEnd('a');
|
||||
$this->out->elementEnd('li');
|
||||
}
|
||||
|
@ -77,27 +77,18 @@ class GroupSection extends Section
|
||||
{
|
||||
$this->out->elementStart('tr');
|
||||
$this->out->elementStart('td');
|
||||
$this->out->elementStart('span', 'vcard');
|
||||
$this->out->elementStart('a', array('title' => ($group->fullname) ?
|
||||
$group->fullname :
|
||||
$group->nickname,
|
||||
$this->out->elementStart('a', array('title' => $group->getBestName(),
|
||||
'href' => $group->homeUrl(),
|
||||
'rel' => 'contact group',
|
||||
'class' => 'url'));
|
||||
$this->out->text(' ');
|
||||
$logo = ($group->stream_logo) ?
|
||||
$group->stream_logo : User_group::defaultLogo(AVATAR_STREAM_SIZE);
|
||||
'class' => 'h-card org nickname'));
|
||||
$logo = $group->stream_logo ?: User_group::defaultLogo(AVATAR_STREAM_SIZE);
|
||||
$this->out->element('img', array('src' => $logo,
|
||||
'width' => AVATAR_MINI_SIZE,
|
||||
'height' => AVATAR_MINI_SIZE,
|
||||
'class' => 'avatar photo',
|
||||
'alt' => ($group->fullname) ?
|
||||
$group->fullname :
|
||||
$group->nickname));
|
||||
$this->out->text(' ');
|
||||
$this->out->element('span', 'fn org nickname', $group->nickname);
|
||||
'class' => 'avatar u-photo',
|
||||
'alt' => $group->getBestName()));
|
||||
$this->out->text($group->nickname);
|
||||
$this->out->elementEnd('a');
|
||||
$this->out->elementEnd('span');
|
||||
$this->out->elementEnd('td');
|
||||
if ($group->value) {
|
||||
$this->out->element('td', 'value', $group->value);
|
||||
|
@ -35,7 +35,7 @@ class InlineAttachmentList extends AttachmentList
|
||||
{
|
||||
function showListStart()
|
||||
{
|
||||
$this->out->elementStart('div', array('class' => 'entry-content thumbnails'));
|
||||
$this->out->elementStart('div', array('class' => 'attachments'));
|
||||
}
|
||||
|
||||
function showListEnd()
|
||||
|
@ -67,32 +67,25 @@ abstract class MessageListItem extends Widget
|
||||
*/
|
||||
function show()
|
||||
{
|
||||
$this->out->elementStart('li', array('class' => 'hentry notice',
|
||||
$this->out->elementStart('li', array('class' => 'h-entry notice',
|
||||
'id' => 'message-' . $this->message->id));
|
||||
|
||||
$profile = $this->getMessageProfile();
|
||||
|
||||
$this->out->elementStart('div', 'entry-title');
|
||||
$this->out->elementStart('span', 'vcard author');
|
||||
$this->out->elementStart('a', array('href' => $profile->profileurl,
|
||||
'class' => 'url'));
|
||||
'class' => 'p-author'));
|
||||
$avatarUrl = $profile->avatarUrl(AVATAR_STREAM_SIZE);
|
||||
$this->out->element('img', array('src' => $avatarUrl,
|
||||
'class' => 'photo avatar',
|
||||
'class' => 'avatar u-photo',
|
||||
'width' => AVATAR_STREAM_SIZE,
|
||||
'height' => AVATAR_STREAM_SIZE,
|
||||
'alt' =>
|
||||
($profile->fullname) ? $profile->fullname :
|
||||
$profile->nickname));
|
||||
$this->out->element('span', array('class' => 'nickname fn'),
|
||||
$profile->nickname);
|
||||
'alt' => $profile->getBestName()));
|
||||
$this->out->element('span', array('class' => 'nickname fn'), $profile->getNickname());
|
||||
$this->out->elementEnd('a');
|
||||
$this->out->elementEnd('span');
|
||||
|
||||
// FIXME: URL, image, video, audio
|
||||
$this->out->elementStart('p', array('class' => 'entry-content'));
|
||||
$this->out->elementStart('div', array('class' => 'e-content'));
|
||||
$this->out->raw($this->message->rendered);
|
||||
$this->out->elementEnd('p');
|
||||
$this->out->elementEnd('div');
|
||||
|
||||
$messageurl = common_local_url('showmessage',
|
||||
@ -104,7 +97,7 @@ abstract class MessageListItem extends Widget
|
||||
$messageurl = $this->message->uri;
|
||||
}
|
||||
|
||||
$this->out->elementStart('div', 'entry-content');
|
||||
$this->out->elementStart('div', 'entry-metadata');
|
||||
$this->out->elementStart('a', array('rel' => 'bookmark',
|
||||
'class' => 'timestamp',
|
||||
'href' => $messageurl));
|
||||
|
@ -113,15 +113,25 @@ class NoticeListItem extends Widget
|
||||
|
||||
function showNotice()
|
||||
{
|
||||
$this->out->elementStart('div', 'entry-title');
|
||||
$this->showNoticeTitle();
|
||||
$this->showAuthor();
|
||||
$this->showAddressees();
|
||||
$this->showContent();
|
||||
$this->out->elementEnd('div');
|
||||
}
|
||||
|
||||
function showNoticeTitle()
|
||||
{
|
||||
if (Event::handle('StartShowNoticeTitle', array($this))) {
|
||||
$this->element('a', array('href' => $this->notice->getUrl(),
|
||||
'class' => 'p-name metadata'),
|
||||
$this->notice->getTitle());
|
||||
Event::handle('EndShowNoticeTitle', array($this));
|
||||
}
|
||||
}
|
||||
|
||||
function showNoticeInfo()
|
||||
{
|
||||
$this->out->elementStart('div', 'entry-content');
|
||||
$this->out->elementStart('div', 'entry-metadata');
|
||||
if (Event::handle('StartShowNoticeInfo', array($this))) {
|
||||
$this->showNoticeLink();
|
||||
$this->showNoticeSource();
|
||||
@ -164,7 +174,7 @@ class NoticeListItem extends Widget
|
||||
{
|
||||
if (Event::handle('StartOpenNoticeListItemElement', array($this))) {
|
||||
$id = (empty($this->repeat)) ? $this->notice->id : $this->repeat->id;
|
||||
$class = 'hentry notice';
|
||||
$class = 'h-entry notice';
|
||||
if ($this->notice->scope != 0 && $this->notice->scope != 1) {
|
||||
$class .= ' limited-scope';
|
||||
}
|
||||
@ -209,24 +219,14 @@ class NoticeListItem extends Widget
|
||||
|
||||
function showAuthor()
|
||||
{
|
||||
$this->out->elementStart('div', 'author');
|
||||
|
||||
$this->out->elementStart('span', 'vcard author');
|
||||
|
||||
$attrs = array('href' => $this->profile->profileurl,
|
||||
'class' => 'url',
|
||||
'title' => $this->profile->nickname);
|
||||
'class' => 'h-card p-author',
|
||||
'title' => $this->profile->getNickname());
|
||||
|
||||
$this->out->elementStart('a', $attrs);
|
||||
$this->showAvatar($this->profile);
|
||||
$this->out->text($this->profile->getStreamName());
|
||||
$this->out->elementEnd('a');
|
||||
|
||||
$this->out->elementEnd('span');
|
||||
|
||||
$this->showAddressees();
|
||||
|
||||
$this->out->elementEnd('div');
|
||||
}
|
||||
|
||||
function showAddressees()
|
||||
@ -234,21 +234,16 @@ class NoticeListItem extends Widget
|
||||
$pa = $this->getProfileAddressees();
|
||||
|
||||
if (!empty($pa)) {
|
||||
$this->out->elementStart('span', 'addressees');
|
||||
$this->out->elementStart('ul', 'addressees');
|
||||
$first = true;
|
||||
foreach ($pa as $addr) {
|
||||
if (!$first) {
|
||||
// TRANS: Separator in profile addressees list.
|
||||
$this->out->text(_m('SEPARATOR',', '));
|
||||
} else {
|
||||
// Start of profile addressees list.
|
||||
$first = false;
|
||||
}
|
||||
$this->out->elementStart('li', 'h-card');
|
||||
$text = $addr['text'];
|
||||
unset($addr['text']);
|
||||
$this->out->element('a', $addr, $text);
|
||||
$this->out->elementEnd('li');
|
||||
}
|
||||
$this->out->elementEnd('span', 'addressees');
|
||||
$this->out->elementEnd('ul', 'addressees');
|
||||
}
|
||||
}
|
||||
|
||||
@ -261,7 +256,7 @@ class NoticeListItem extends Widget
|
||||
foreach ($attentions as $attn) {
|
||||
$class = $attn->isGroup() ? 'group' : 'account';
|
||||
$pa[] = array('href' => $attn->profileurl,
|
||||
'title' => $attn->nickname,
|
||||
'title' => $attn->getNickname(),
|
||||
'class' => "addressee {$class}",
|
||||
'text' => $attn->getStreamName());
|
||||
}
|
||||
@ -283,8 +278,8 @@ class NoticeListItem extends Widget
|
||||
*/
|
||||
function showNickname()
|
||||
{
|
||||
$this->out->raw('<span class="nickname fn">' .
|
||||
htmlspecialchars($this->profile->nickname) .
|
||||
$this->out->raw('<span class="p-name">' .
|
||||
htmlspecialchars($this->profile->getNickname()) .
|
||||
'</span>');
|
||||
}
|
||||
|
||||
@ -300,7 +295,7 @@ class NoticeListItem extends Widget
|
||||
function showContent()
|
||||
{
|
||||
// FIXME: URL, image, video, audio
|
||||
$this->out->elementStart('p', array('class' => 'entry-content'));
|
||||
$this->out->elementStart('div', array('class' => 'e-content'));
|
||||
if ($this->notice->rendered) {
|
||||
$this->out->raw($this->notice->rendered);
|
||||
} else {
|
||||
@ -309,7 +304,7 @@ class NoticeListItem extends Widget
|
||||
// versions (>> 0.4.x)
|
||||
$this->out->raw(common_render_content($this->notice->content, $this->notice));
|
||||
}
|
||||
$this->out->elementEnd('p');
|
||||
$this->out->elementEnd('div');
|
||||
}
|
||||
|
||||
function showNoticeAttachments() {
|
||||
@ -329,7 +324,7 @@ class NoticeListItem extends Widget
|
||||
function showNoticeLink()
|
||||
{
|
||||
$this->out->elementStart('a', array('rel' => 'bookmark',
|
||||
'class' => 'timestamp',
|
||||
'class' => 'u-url timestamp',
|
||||
'href' => $this->notice->getLocalUrl()));
|
||||
$this->out->element('time', array('class' => 'dt-published',
|
||||
'datetime' => common_date_iso8601($this->notice->created),
|
||||
@ -511,21 +506,15 @@ class NoticeListItem extends Widget
|
||||
$repeater = Profile::getKV('id', $this->repeat->profile_id);
|
||||
|
||||
$attrs = array('href' => $repeater->profileurl,
|
||||
'class' => 'url');
|
||||
'class' => 'h-card p-author',
|
||||
'title' => $repeater->getFancyName());
|
||||
|
||||
if (!empty($repeater->fullname)) {
|
||||
$attrs['title'] = $repeater->fullname . ' (' . $repeater->nickname . ')';
|
||||
}
|
||||
|
||||
$this->out->elementStart('span', 'repeat vcard');
|
||||
$this->out->elementStart('span', 'repeat h-entry');
|
||||
|
||||
// TRANS: Addition in notice list item if notice was repeated. Followed by a span with a nickname.
|
||||
$this->out->raw(_('Repeated by'));
|
||||
$this->out->raw(' ');
|
||||
$this->out->raw(_('Repeated by').' ');
|
||||
|
||||
$this->out->elementStart('a', $attrs);
|
||||
$this->out->element('span', 'fn nickname', $repeater->nickname);
|
||||
$this->out->elementEnd('a');
|
||||
$this->out->element('a', $attrs, $repeater->getNickname());
|
||||
|
||||
$this->out->elementEnd('span');
|
||||
}
|
||||
@ -544,7 +533,7 @@ class NoticeListItem extends Widget
|
||||
if (common_logged_in()) {
|
||||
$this->out->text(' ');
|
||||
$reply_url = common_local_url('newnotice',
|
||||
array('replyto' => $this->profile->nickname, 'inreplyto' => $this->notice->id));
|
||||
array('replyto' => $this->profile->getNickname(), 'inreplyto' => $this->notice->id));
|
||||
$this->out->elementStart('a', array('href' => $reply_url,
|
||||
'class' => 'notice_reply',
|
||||
// TRANS: Link title in notice list item to reply to a notice.
|
||||
|
@ -78,28 +78,21 @@ class NoticeSection extends Section
|
||||
$notice->id));
|
||||
return;
|
||||
}
|
||||
$this->out->elementStart('li', 'hentry notice');
|
||||
$this->out->elementStart('div', 'entry-title');
|
||||
$this->out->elementStart('span', 'vcard author');
|
||||
$this->out->elementStart('a', array('title' => ($profile->fullname) ?
|
||||
$profile->fullname :
|
||||
$profile->nickname,
|
||||
$this->out->elementStart('li', 'h-entry notice');
|
||||
$this->out->elementStart('div', 'h-card');
|
||||
$this->out->elementStart('a', array('title' => $profile->getBestName(),
|
||||
'href' => $profile->profileurl,
|
||||
'class' => 'url'));
|
||||
'class' => 'p-author u-url p-name'));
|
||||
$avatarUrl = $profile->avatarUrl(AVATAR_MINI_SIZE);
|
||||
$this->out->element('img', array('src' => $avatarUrl,
|
||||
'width' => AVATAR_MINI_SIZE,
|
||||
'height' => AVATAR_MINI_SIZE,
|
||||
'class' => 'avatar photo',
|
||||
'alt' => ($profile->fullname) ?
|
||||
$profile->fullname :
|
||||
$profile->nickname));
|
||||
$this->out->text(' ');
|
||||
$this->out->element('span', 'fn nickname', $profile->nickname);
|
||||
'class' => 'avatar u-photo',
|
||||
'alt' => $profile->getBestName()));
|
||||
$this->out->text($profile->getBestName());
|
||||
$this->out->elementEnd('a');
|
||||
$this->out->elementEnd('span');
|
||||
|
||||
$this->out->elementStart('p', 'entry-content');
|
||||
$this->out->elementStart('p', 'e-content');
|
||||
$this->out->text(mb_strlen($notice->content) > $this->maxchars
|
||||
? mb_substr($notice->content, 0, $this->maxchars) . '[…]'
|
||||
: $notice->content);
|
||||
|
@ -142,7 +142,7 @@ class PeopletagListItem extends Widget
|
||||
function showStart()
|
||||
{
|
||||
$mode = ($this->peopletag->private) ? 'private' : 'public';
|
||||
$this->out->elementStart('li', array('class' => 'hentry peopletag mode-' . $mode,
|
||||
$this->out->elementStart('li', array('class' => 'h-entry peopletag mode-' . $mode,
|
||||
'id' => 'peopletag-' . $this->peopletag->id));
|
||||
}
|
||||
|
||||
@ -221,20 +221,16 @@ class PeopletagListItem extends Widget
|
||||
|
||||
function showCreator()
|
||||
{
|
||||
$this->out->elementStart('span', 'author vcard');
|
||||
$attrs = array();
|
||||
$attrs['href'] = $this->profile->profileurl;
|
||||
$attrs['class'] = 'url';
|
||||
$attrs['class'] = 'h-card p-author nickname p-name';
|
||||
$attrs['rel'] = 'contact';
|
||||
$attrs['title'] = $this->profile->getFancyName();
|
||||
|
||||
if (!empty($this->profile->fullname)) {
|
||||
$attrs['title'] = $this->profile->fullname . ' (' . $this->profile->nickname . ')';
|
||||
}
|
||||
$this->out->elementStart('a', $attrs);
|
||||
$this->showAvatar($this->profile);
|
||||
$this->out->text($this->profile->getNickname());
|
||||
$this->out->elementEnd('a');
|
||||
$this->out->elementEnd('span');
|
||||
}
|
||||
|
||||
function showUpdated()
|
||||
@ -287,7 +283,6 @@ class PeopletagListItem extends Widget
|
||||
|
||||
function showDescription()
|
||||
{
|
||||
$this->out->element('div', 'entry-content description',
|
||||
$this->peopletag->description);
|
||||
$this->out->element('div', 'e-content description', $this->peopletag->description);
|
||||
}
|
||||
}
|
||||
|
@ -142,7 +142,7 @@ class ProfileListItem extends Widget
|
||||
|
||||
function startItem()
|
||||
{
|
||||
$this->out->elementStart('li', array('class' => 'profile hentry',
|
||||
$this->out->elementStart('li', array('class' => 'profile h-entry',
|
||||
'id' => 'profile-' . $this->profile->id));
|
||||
}
|
||||
|
||||
@ -184,14 +184,14 @@ class ProfileListItem extends Widget
|
||||
|
||||
function startProfile()
|
||||
{
|
||||
$this->out->elementStart('div', 'entity_profile vcard entry-content');
|
||||
$this->out->elementStart('div', 'entity_profile h-card');
|
||||
}
|
||||
|
||||
function showFullName()
|
||||
{
|
||||
if (!empty($this->profile->fullname)) {
|
||||
$this->out->text(' ');
|
||||
$this->out->elementStart('span', 'fn');
|
||||
$this->out->elementStart('span', 'p-name');
|
||||
$this->out->raw($this->highlight($this->profile->fullname));
|
||||
$this->out->elementEnd('span');
|
||||
}
|
||||
@ -304,13 +304,13 @@ class ProfileListItem extends Widget
|
||||
function linkAttributes()
|
||||
{
|
||||
return array('href' => $this->profile->profileurl,
|
||||
'class' => 'url entry-title',
|
||||
'class' => 'u-url',
|
||||
'rel' => 'contact');
|
||||
}
|
||||
|
||||
function homepageAttributes()
|
||||
{
|
||||
return array('href' => $this->profile->homepage,
|
||||
'class' => 'url');
|
||||
'class' => 'u-url');
|
||||
}
|
||||
}
|
||||
|
@ -74,7 +74,7 @@ class ProfileMiniListItem extends ProfileListItem
|
||||
{
|
||||
function show()
|
||||
{
|
||||
$this->out->elementStart('li', 'vcard');
|
||||
$this->out->elementStart('li', 'h-card');
|
||||
if (Event::handle('StartProfileListItemProfileElements', array($this))) {
|
||||
if (Event::handle('StartProfileListItemAvatar', array($this))) {
|
||||
$aAttrs = $this->linkAttributes();
|
||||
@ -83,11 +83,8 @@ class ProfileMiniListItem extends ProfileListItem
|
||||
$this->out->element('img', array('src' => $avatarUrl,
|
||||
'width' => AVATAR_MINI_SIZE,
|
||||
'height' => AVATAR_MINI_SIZE,
|
||||
'class' => 'avatar photo',
|
||||
'alt' => ($this->profile->fullname) ?
|
||||
$this->profile->fullname :
|
||||
$this->profile->nickname));
|
||||
$this->out->element('span', 'fn nickname', $this->profile->nickname);
|
||||
'class' => 'avatar u-photo',
|
||||
'alt' => $this->profile->getBestName()));
|
||||
$this->out->elementEnd('a');
|
||||
Event::handle('EndProfileListItemAvatar', array($this));
|
||||
}
|
||||
@ -103,7 +100,7 @@ class ProfileMiniListItem extends ProfileListItem
|
||||
|
||||
$aAttrs['title'] = $this->profile->getBestName();
|
||||
$aAttrs['rel'] = 'contact member'; // @todo: member? always?
|
||||
$aAttrs['class'] = 'url';
|
||||
$aAttrs['class'] = 'u-url p-name';
|
||||
|
||||
return $aAttrs;
|
||||
}
|
||||
|
@ -78,26 +78,17 @@ class ProfileSection extends Section
|
||||
{
|
||||
$this->out->elementStart('tr');
|
||||
$this->out->elementStart('td');
|
||||
$this->out->elementStart('span', 'vcard');
|
||||
$this->out->elementStart('a', array('title' => ($profile->fullname) ?
|
||||
$profile->fullname :
|
||||
$profile->nickname,
|
||||
$this->out->elementStart('a', array('title' => $profile->getBestName(),
|
||||
'href' => $profile->profileurl,
|
||||
'rel' => 'contact member',
|
||||
'class' => 'url'));
|
||||
$this->out->text(' ');
|
||||
'class' => 'h-card u-url'));
|
||||
$avatarUrl = $profile->avatarUrl(AVATAR_MINI_SIZE);
|
||||
$this->out->element('img', array('src' => $avatarUrl,
|
||||
'width' => AVATAR_MINI_SIZE,
|
||||
'height' => AVATAR_MINI_SIZE,
|
||||
'class' => 'avatar photo',
|
||||
'alt' => ($profile->fullname) ?
|
||||
$profile->fullname :
|
||||
$profile->nickname));
|
||||
$this->out->text(' ');
|
||||
$this->out->element('span', 'fn nickname', $profile->nickname);
|
||||
'class' => 'avatar u-photo',
|
||||
'alt' => $profile->getBestName()));
|
||||
$this->out->elementEnd('a');
|
||||
$this->out->elementEnd('span');
|
||||
$this->out->elementEnd('td');
|
||||
if (isset($profile->value)) {
|
||||
$this->out->element('td', 'value', $profile->value);
|
||||
|
@ -548,7 +548,7 @@ class ThreadedNoticeListInlineFavesItem extends ThreadedNoticeListFavesItem
|
||||
{
|
||||
function showStart()
|
||||
{
|
||||
$this->out->elementStart('div', array('class' => 'entry-content notice-faves'));
|
||||
$this->out->elementStart('div', array('class' => 'e-content notice-faves'));
|
||||
}
|
||||
|
||||
function showEnd()
|
||||
@ -625,7 +625,7 @@ class ThreadedNoticeListInlineRepeatsItem extends ThreadedNoticeListRepeatsItem
|
||||
{
|
||||
function showStart()
|
||||
{
|
||||
$this->out->elementStart('div', array('class' => 'entry-content notice-repeats'));
|
||||
$this->out->elementStart('div', array('class' => 'e-content notice-repeats'));
|
||||
}
|
||||
|
||||
function showEnd()
|
||||
|
@ -635,17 +635,13 @@ function common_linkify_mention($mention)
|
||||
$xs = new XMLStringer(false);
|
||||
|
||||
$attrs = array('href' => $mention['url'],
|
||||
'class' => 'url');
|
||||
'class' => 'h-card '.$mention['type']);
|
||||
|
||||
if (!empty($mention['title'])) {
|
||||
$attrs['title'] = $mention['title'];
|
||||
}
|
||||
|
||||
$xs->elementStart('span', 'vcard');
|
||||
$xs->elementStart('a', $attrs);
|
||||
$xs->element('span', 'fn nickname '.$mention['type'], $mention['text']);
|
||||
$xs->elementEnd('a');
|
||||
$xs->elementEnd('span');
|
||||
$xs->element('a', $attrs, $mention['text']);
|
||||
|
||||
$output = $xs->getString();
|
||||
|
||||
|
@ -259,7 +259,7 @@ class BookmarkPlugin extends MicroAppPlugin
|
||||
}
|
||||
|
||||
$id = (empty($nli->repeat)) ? $nli->notice->id : $nli->repeat->id;
|
||||
$class = 'hentry notice bookmark';
|
||||
$class = 'h-entry notice bookmark';
|
||||
if ($nli->notice->scope != 0 && $nli->notice->scope != 1) {
|
||||
$class .= ' limited-scope';
|
||||
}
|
||||
|
@ -68,7 +68,7 @@ ul.bookmark-tags a:hover {
|
||||
top: 2px;
|
||||
}
|
||||
|
||||
.bookmark div.entry-content {
|
||||
.bookmark div.e-content {
|
||||
font-size: 0.88em;
|
||||
line-height: 1.2em;
|
||||
margin-top: 6px;
|
||||
@ -76,7 +76,7 @@ ul.bookmark-tags a:hover {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
.bookmark:hover div.entry-content {
|
||||
.bookmark:hover div.e-content {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
|
@ -74,7 +74,7 @@ class BookmarkListItem extends NoticeListItemAdapter
|
||||
|
||||
$profile = $notice->getProfile();
|
||||
|
||||
$out->elementStart('p', array('class' => 'entry-content'));
|
||||
$out->elementStart('p', array('class' => 'e-content'));
|
||||
|
||||
// Whether to nofollow
|
||||
|
||||
|
@ -110,7 +110,7 @@ class ConversationTree extends NoticeList
|
||||
{
|
||||
$notice = $this->table[$id];
|
||||
|
||||
$this->out->elementStart('li', array('class' => 'hentry notice',
|
||||
$this->out->elementStart('li', array('class' => 'h-entry notice',
|
||||
'id' => 'notice-' . $id));
|
||||
|
||||
$item = $this->newListItem($notice);
|
||||
|
@ -205,9 +205,8 @@ class SortableGroupListItem extends SortableSubscriptionListItem
|
||||
{
|
||||
$this->startProfile();
|
||||
|
||||
$hasFN = ($this->profile->fullname) ? 'nickname' : 'fn org nickname';
|
||||
$this->out->elementStart('a', array('href' => $this->profile->homeUrl(),
|
||||
'class' => 'h-card org nickname',
|
||||
'class' => 'h-card p-org p-nickname',
|
||||
'rel' => 'contact group'));
|
||||
// getProfile here is because $this->profile is a User_group, which it should stop
|
||||
// being by making sure the group listing runs a ->getGroup when it's necessary.
|
||||
|
@ -191,7 +191,7 @@ class SortableSubscriptionListItem extends SubscriptionListItem
|
||||
|
||||
function startProfile()
|
||||
{
|
||||
$this->out->elementStart('td', 'entity_profile vcard entry-content');
|
||||
$this->out->elementStart('td', 'entity_profile h-card e-content');
|
||||
}
|
||||
|
||||
function endProfile()
|
||||
|
@ -6,8 +6,8 @@
|
||||
.event-notice-count { float: right; }
|
||||
.event-info { float: left; }
|
||||
.event-title { margin-left: 0px; }
|
||||
#content .event .entry-title { margin-left: 0px; }
|
||||
#content .event .entry-content { margin-left: 0px; }
|
||||
#content .event .h-entry { margin-left: 0px; }
|
||||
#content .event .e-content { margin-left: 0px; }
|
||||
.ui-autocomplete {
|
||||
max-height: 100px;
|
||||
overflow-y: auto;
|
||||
@ -32,13 +32,10 @@ li.rsvp-list .entities li {
|
||||
margin-bottom: 8px;
|
||||
display: inline;
|
||||
}
|
||||
li.rsvp-list .entities li .photo {
|
||||
li.rsvp-list .entities li .u-photo {
|
||||
margin: 0 !important;
|
||||
float: none !important;
|
||||
}
|
||||
li.rsvp-list .entities li .fn {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.notice .vevent div {
|
||||
margin-bottom: 8px;
|
||||
|
@ -48,10 +48,8 @@ class EventListItem extends NoticeListItemAdapter
|
||||
{
|
||||
function showNotice()
|
||||
{
|
||||
$this->nli->out->elementStart('div', 'entry-title');
|
||||
$this->nli->showAuthor();
|
||||
$this->showContent();
|
||||
$this->nli->out->elementEnd('div');
|
||||
}
|
||||
|
||||
function showContent()
|
||||
@ -68,9 +66,9 @@ class EventListItem extends NoticeListItemAdapter
|
||||
return;
|
||||
}
|
||||
|
||||
$out->elementStart('div', 'vevent event'); // VEVENT IN
|
||||
$out->elementStart('div', 'vevent event e-content'); // VEVENT IN
|
||||
|
||||
$out->elementStart('h3'); // VEVENT/H3 IN
|
||||
$out->elementStart('h3', 'summary'); // VEVENT/H3 IN
|
||||
|
||||
if (!empty($event->url)) {
|
||||
$out->element('a',
|
||||
|
@ -73,7 +73,7 @@ class NoticeTree extends NoticeList
|
||||
|
||||
// We take responsibility for doing the li
|
||||
|
||||
$this->out->elementStart('li', array('class' => 'hentry notice',
|
||||
$this->out->elementStart('li', array('class' => 'h-entry notice',
|
||||
'id' => 'notice-' . $item->notice->id));
|
||||
|
||||
$item->show();
|
||||
|
@ -70,7 +70,7 @@ class GroupMessageListItem extends Widget
|
||||
$group = $this->gm->getGroup();
|
||||
$sender = $this->gm->getSender();
|
||||
|
||||
$this->out->elementStart('li', array('class' => 'hentry notice message group-message',
|
||||
$this->out->elementStart('li', array('class' => 'h-entry notice message group-message',
|
||||
'id' => 'message-' . $this->gm->id));
|
||||
|
||||
$this->out->elementStart('div', 'entry-title');
|
||||
@ -90,12 +90,12 @@ class GroupMessageListItem extends Widget
|
||||
$this->out->elementEnd('a');
|
||||
$this->out->elementEnd('span');
|
||||
|
||||
$this->out->elementStart('p', array('class' => 'entry-content message-content'));
|
||||
$this->out->elementStart('p', array('class' => 'e-content message-content'));
|
||||
$this->out->raw($this->gm->rendered);
|
||||
$this->out->elementEnd('p');
|
||||
$this->out->elementEnd('div');
|
||||
|
||||
$this->out->elementStart('div', 'entry-content');
|
||||
$this->out->elementStart('div', 'e-content');
|
||||
$this->out->elementStart('a', array('rel' => 'bookmark',
|
||||
'class' => 'timestamp',
|
||||
'href' => $this->gm->url));
|
||||
|
@ -39,7 +39,7 @@ function getNoticeFromElement(noticeElement)
|
||||
parseFloat(latlon[1])] };
|
||||
}
|
||||
|
||||
notice['html'] = noticeElement.find(".entry-content").html();
|
||||
notice['html'] = noticeElement.find(".e-content").html();
|
||||
notice['url'] = noticeElement.find("a.timestamp").attr('href');
|
||||
notice['created_at'] = noticeElement.find("abbr.published").text();
|
||||
|
||||
|
@ -292,27 +292,26 @@ class MobileProfilePlugin extends WAP20Plugin
|
||||
|
||||
function _showLogo($action)
|
||||
{
|
||||
$action->elementStart('address', 'vcard');
|
||||
$action->elementStart('address');
|
||||
if (common_config('singleuser', 'enabled')) {
|
||||
$user = User::singleUser();
|
||||
$url = common_local_url('showstream', array('nickname' => $user->nickname));
|
||||
$url = common_local_url('showstream', array('nickname' => $user->getNickname()));
|
||||
} else {
|
||||
$url = common_local_url('public');
|
||||
}
|
||||
|
||||
$action->elementStart('a', array('class' => 'url home bookmark',
|
||||
$action->elementStart('a', array('class' => 'h-card home bookmark',
|
||||
'href' => $url));
|
||||
|
||||
if (common_config('site', 'mobilelogo') ||
|
||||
file_exists(Theme::file('logo.png')) ||
|
||||
file_exists(Theme::file('mobilelogo.png'))) {
|
||||
|
||||
$action->element('img', array('class' => 'photo',
|
||||
$action->element('img', array('class' => 'u-photo',
|
||||
'src' => (common_config('site', 'mobilelogo')) ? common_config('site', 'mobilelogo') :
|
||||
((file_exists(Theme::file('mobilelogo.png'))) ? (Theme::path('mobilelogo.png')) : Theme::path('logo.png')),
|
||||
'alt' => common_config('site', 'name')));
|
||||
}
|
||||
$action->element('span', array('class' => 'fn org'), common_config('site', 'name'));
|
||||
$action->elementEnd('a');
|
||||
$action->elementEnd('address');
|
||||
}
|
||||
|
@ -352,6 +352,6 @@ label[for=blog-entry-content] {
|
||||
content: '\003E';
|
||||
}
|
||||
|
||||
.user_in .notice div.entry-content {
|
||||
.user_in .notice div.e-content {
|
||||
max-width: 150px;
|
||||
}
|
||||
|
@ -86,7 +86,7 @@ class ModPlusPlugin extends Plugin
|
||||
* @param NoticeListItem $item
|
||||
* @return boolean hook value
|
||||
*/
|
||||
function onStartShowNoticeItem($item)
|
||||
function onStartShowNoticeItem(NoticeListItem $item)
|
||||
{
|
||||
$this->showProfileOptions($item->out, $item->profile);
|
||||
return true;
|
||||
@ -108,12 +108,11 @@ class ModPlusPlugin extends Plugin
|
||||
* Currently only adds output for remote profiles, nothing for local users.
|
||||
*
|
||||
* @param HTMLOutputter $out
|
||||
* @param Profile $profile (may also be an ArrayWrapper... sigh)
|
||||
* @param Profile $profile
|
||||
*/
|
||||
protected function showProfileOptions(HTMLOutputter $out, $profile)
|
||||
protected function showProfileOptions(HTMLOutputter $out, Profile $profile)
|
||||
{
|
||||
$isRemote = !(User::getKV('id', $profile->id));
|
||||
if ($isRemote) {
|
||||
if (!$profile->isLocal()) {
|
||||
$target = common_local_url('remoteprofile', array('id' => $profile->id));
|
||||
// TRANS: Label for access to remote profile options.
|
||||
$label = _m('Remote profile options...');
|
||||
|
@ -10,14 +10,9 @@
|
||||
padding: 6px 16px;
|
||||
padding-left: 32px;
|
||||
|
||||
-moz-border-radius: 8px;
|
||||
-webkit-border-radius: 8px;
|
||||
-msie-border-radius: 8px;
|
||||
border-radius: 8px;
|
||||
|
||||
box-shadow:3px 3px 7px rgba(194, 194, 194, 0.3);
|
||||
-moz-box-shadow:3px 3px 7px rgba(194, 194, 194, 0.3);
|
||||
-webkit-box-shadow:3px 3px 7px rgba(194, 194, 194, 0.3);
|
||||
|
||||
display: none;
|
||||
}
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
$(function() {
|
||||
// Notice lists...
|
||||
$(document).on('mouseenter', '.notice .author', function(e) {
|
||||
$(document).on('mouseenter', '.notice .p-author', function(e) {
|
||||
var notice = $(this).closest('.notice');
|
||||
var popup = notice.find('.remote-profile-options');
|
||||
if (popup.length) {
|
||||
@ -21,7 +21,7 @@ $(function() {
|
||||
});
|
||||
|
||||
// Profile lists...
|
||||
$(document).on('mouseenter', '.profile .avatar', function(e) {
|
||||
$(document).on('mouseenter', '.profile .u-photo', function(e) {
|
||||
var profile = $(this).closest('.profile');
|
||||
var popup = profile.find('.remote-profile-options');
|
||||
if (popup.length) {
|
||||
|
@ -181,14 +181,15 @@ class NoticeTitlePlugin extends Plugin
|
||||
*
|
||||
* @return boolean hook value
|
||||
*/
|
||||
function onStartShowNoticeItem($nli)
|
||||
function onStartShowNoticeTitle(NoticeListItem $nli)
|
||||
{
|
||||
$title = Notice_title::fromNotice($nli->notice);
|
||||
|
||||
if (!empty($title)) {
|
||||
$nli->out->elementStart('h4', array('class' => 'notice_title'));
|
||||
$nli->out->element('a', array('href' => $nli->notice->getUrl()), $title);
|
||||
$nli->out->elementEnd('h4');
|
||||
$nli->elementStart('h4', array('class' => 'p-name'));
|
||||
$nli->element('a', array('href' => $nli->notice->getUrl()), $title);
|
||||
$nli->elementEnd('h4');
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
@ -284,20 +285,16 @@ class NoticeTitlePlugin extends Plugin
|
||||
/**
|
||||
* If a notice has a title, show it in the <h1> element
|
||||
*
|
||||
* @param Action $action Action being executed
|
||||
* @param Notice $notice Notice we're getting the title for
|
||||
* @param string $title Reference to the variable which we set to the notice's title
|
||||
*
|
||||
* @return boolean hook value
|
||||
*/
|
||||
function onStartShowPageTitle($action)
|
||||
function onGetNoticeTitle(Notice $notice, &$title)
|
||||
{
|
||||
$actionName = $action->trimmed('action');
|
||||
|
||||
if ($actionName == 'shownotice') {
|
||||
$title = Notice_title::fromNotice($action->notice);
|
||||
if (!empty($title)) {
|
||||
$action->element('h1', null, $title);
|
||||
return false;
|
||||
}
|
||||
$title = Notice_title::fromNotice($notice);
|
||||
if (!is_null($title)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
|
@ -109,7 +109,7 @@ class OembedPlugin extends Plugin
|
||||
if (empty($oembed->author_name) && empty($oembed->provider)) {
|
||||
return true;
|
||||
}
|
||||
$out->elementStart('div', array('id'=>'oembed_info', 'class'=>'entry-content'));
|
||||
$out->elementStart('div', array('id'=>'oembed_info', 'class'=>'e-content'));
|
||||
if (!empty($oembed->author_name)) {
|
||||
$out->elementStart('div', 'fn vcard author');
|
||||
if (empty($oembed->author_url)) {
|
||||
|
@ -401,7 +401,7 @@ class PollPlugin extends MicroAppPlugin
|
||||
$nli = new NoticeListItem($notice, $out);
|
||||
$nli->showNotice();
|
||||
|
||||
$out->elementStart('div', array('class' => 'entry-content poll-content'));
|
||||
$out->elementStart('div', array('class' => 'e-content poll-content'));
|
||||
$poll = Poll::getByNotice($notice);
|
||||
if ($poll) {
|
||||
if ($user) {
|
||||
@ -422,7 +422,7 @@ class PollPlugin extends MicroAppPlugin
|
||||
$out->elementEnd('div');
|
||||
|
||||
// @fixme
|
||||
$out->elementStart('div', array('class' => 'entry-content'));
|
||||
$out->elementStart('div', array('class' => 'e-content'));
|
||||
}
|
||||
|
||||
function showNoticePollResponse(Notice $notice, $out)
|
||||
@ -434,7 +434,7 @@ class PollPlugin extends MicroAppPlugin
|
||||
$nli->showNotice();
|
||||
|
||||
// @fixme
|
||||
$out->elementStart('div', array('class' => 'entry-content'));
|
||||
$out->elementStart('div', array('class' => 'e-content'));
|
||||
}
|
||||
|
||||
function entryForm($out)
|
||||
|
@ -265,7 +265,7 @@ class QnAPlugin extends MicroAppPlugin
|
||||
{
|
||||
case QnA_Question::OBJECT_TYPE:
|
||||
$id = (empty($nli->repeat)) ? $nli->notice->id : $nli->repeat->id;
|
||||
$class = 'hentry notice question';
|
||||
$class = 'h-entry notice question';
|
||||
if ($nli->notice->scope != 0 && $nli->notice->scope != 1) {
|
||||
$class .= ' limited-scope';
|
||||
}
|
||||
@ -288,7 +288,7 @@ class QnAPlugin extends MicroAppPlugin
|
||||
case QnA_Answer::OBJECT_TYPE:
|
||||
$id = (empty($nli->repeat)) ? $nli->notice->id : $nli->repeat->id;
|
||||
|
||||
$cls = array('hentry', 'notice', 'answer');
|
||||
$cls = array('h-entry', 'notice', 'answer');
|
||||
|
||||
$answer = QnA_Answer::getKV('uri', $nli->notice->uri);
|
||||
|
||||
@ -345,7 +345,7 @@ class QnAPlugin extends MicroAppPlugin
|
||||
$nli = new NoticeListItem($notice, $out);
|
||||
$nli->showNotice();
|
||||
|
||||
$out->elementStart('div', array('class' => 'entry-content question-description'));
|
||||
$out->elementStart('div', array('class' => 'e-content question-description'));
|
||||
|
||||
$question = QnA_Question::getByNotice($notice);
|
||||
|
||||
@ -361,7 +361,7 @@ class QnAPlugin extends MicroAppPlugin
|
||||
$out->elementEnd('div');
|
||||
|
||||
// @fixme
|
||||
$out->elementStart('div', array('class' => 'entry-content'));
|
||||
$out->elementStart('div', array('class' => 'e-content'));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -437,7 +437,7 @@ class QnAPlugin extends MicroAppPlugin
|
||||
$nli = new NoticeListItem($notice, $out);
|
||||
$nli->showNotice();
|
||||
|
||||
$out->elementStart('div', array('class' => 'entry-content answer-content'));
|
||||
$out->elementStart('div', array('class' => 'e-content answer-content'));
|
||||
|
||||
if (!empty($answer)) {
|
||||
$form = new QnashowanswerForm($out, $answer);
|
||||
@ -450,7 +450,7 @@ class QnAPlugin extends MicroAppPlugin
|
||||
$out->elementEnd('div');
|
||||
|
||||
// @todo FIXME
|
||||
$out->elementStart('div', array('class' => 'entry-content'));
|
||||
$out->elementStart('div', array('class' => 'e-content'));
|
||||
}
|
||||
|
||||
static function shorten($content, $notice)
|
||||
|
@ -326,7 +326,7 @@ class NoticeAnswerListItem extends NoticeListItem
|
||||
*/
|
||||
function showContent()
|
||||
{
|
||||
$this->out->elementStart('p', array('class' => 'entry-content answer-content'));
|
||||
$this->out->elementStart('p', array('class' => 'e-content answer-content'));
|
||||
if ($this->notice->rendered) {
|
||||
$this->out->raw($this->notice->rendered);
|
||||
} else {
|
||||
|
@ -2,7 +2,7 @@ var QnA = {
|
||||
|
||||
// @fixme: Should use ID
|
||||
close: function (form, best) {
|
||||
var notice = $(form).closest('li.hentry.notice.question');
|
||||
var notice = $(form).closest('li.h-entry.notice.question');
|
||||
|
||||
notice.find('input#qna-best-answer,#qna-question-close').hide();
|
||||
notice.find('textarea').hide();
|
||||
@ -87,7 +87,7 @@ var QnA = {
|
||||
$('body').click(function (e) {
|
||||
var dummyAnswer = $('ul.qna-dummy', notice);
|
||||
var style = dummyAnswer.attr('style');
|
||||
var ans = $(notice).find('li.hentry.notice.anwer', notice)
|
||||
var ans = $(notice).find('li.h-entry.notice.anwer', notice)
|
||||
if (ans > 0) {
|
||||
hideReplyPlaceholders(notice);
|
||||
}
|
||||
@ -300,7 +300,7 @@ var QnA = {
|
||||
var list = form.closest('.threaded-replies');
|
||||
|
||||
// if the inserted notice's parent question needs it give it a placeholder
|
||||
var ans = questionItem.find('ul > li.hentry.notice.answer');
|
||||
var ans = questionItem.find('ul > li.h-entry.notice.answer');
|
||||
if (ans.length == 0) {
|
||||
SN.U.NoticeInlineReplyPlaceholder(questionItem);
|
||||
}
|
||||
|
@ -632,7 +632,7 @@ RealtimeUpdate = {
|
||||
*/
|
||||
initPopupWindow: function()
|
||||
{
|
||||
$('.notices .entry-title a, .notices .entry-content a').bind('click', function() {
|
||||
$('.notices .entry-title a, .notices .e-content a').bind('click', function() {
|
||||
window.open(this.href, '');
|
||||
|
||||
return false;
|
||||
|
@ -189,7 +189,7 @@ address img {
|
||||
max-width: 158px;
|
||||
}
|
||||
|
||||
address img + .fn {
|
||||
address img + .p-name {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@ -626,52 +626,52 @@ address .poweredby {
|
||||
width:100%;
|
||||
}
|
||||
|
||||
.notice .author {
|
||||
.notice .p-author {
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
.notice .addressees:before {
|
||||
.notice .addressees::before {
|
||||
content: '\25B8';
|
||||
}
|
||||
.notice .addressees, .notice .addressees li {
|
||||
display: inline;
|
||||
}
|
||||
.notice .addressees > li::before {
|
||||
content: ',';
|
||||
}
|
||||
.notice .addressees > li:first-child::before {
|
||||
content: '';
|
||||
}
|
||||
|
||||
.notice .addressees .group {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.fn {
|
||||
.p-name {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.notice .author .fn {
|
||||
.notice .p-author {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
#core .vcard .photo {
|
||||
display: inline;
|
||||
margin-right: 11px;
|
||||
#core .h-card .u-photo {
|
||||
float: left;
|
||||
}
|
||||
|
||||
#content .notice .author .photo {
|
||||
position: absolute;
|
||||
top: 7px;
|
||||
left: 0px;
|
||||
float: none;
|
||||
#content .notice .h-entry {
|
||||
margin: 2px 0 0 0;
|
||||
min-height: 32px;
|
||||
}
|
||||
|
||||
#content .notice .entry-title {
|
||||
margin: 2px 7px 0px 59px;
|
||||
min-height: 35px;
|
||||
}
|
||||
|
||||
.vcard .url {
|
||||
.h-card .u-url, .h-card.u-url {
|
||||
text-decoration:none;
|
||||
}
|
||||
.vcard .url:hover {
|
||||
.h-card .u-url:hover, .h-card.u-url:hover {
|
||||
text-decoration:underline;
|
||||
}
|
||||
|
||||
.notice .entry-title {
|
||||
.notice .h-entry {
|
||||
overflow:hidden;
|
||||
word-wrap:break-word;
|
||||
}
|
||||
@ -688,11 +688,8 @@ font-style:italic;
|
||||
display:none;
|
||||
}
|
||||
|
||||
#remoteprofile .notice .entry-title, #remoteprofile .notice div.entry-content,
|
||||
#showstream .notice .entry-title, #showstream .notice div.entry-content {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
#remoteprofile .notice .h-entry,
|
||||
#showstream .notice .h-entry,
|
||||
#remoteprofile .notice .entry-title,
|
||||
#showstream .notice .entry-title {
|
||||
min-height: 1px;
|
||||
@ -708,33 +705,22 @@ font-style:italic;
|
||||
min-height: 1em;
|
||||
}
|
||||
|
||||
#shownotice .notice .entry-title {
|
||||
#shownotice .notice .h-entry {,
|
||||
font-size:2.2em;
|
||||
min-height:123px;
|
||||
font-size: 1.6em;
|
||||
line-height: 1.2em;
|
||||
}
|
||||
|
||||
#shownotice .notice div.entry-content {
|
||||
margin-left:0;
|
||||
.notice div.e-content {
|
||||
margin-left: 55px;
|
||||
}
|
||||
|
||||
.notice p.entry-content {
|
||||
display:inline;
|
||||
}
|
||||
|
||||
.notice div.entry-content {
|
||||
clear:left;
|
||||
float:left;
|
||||
margin-left:59px;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.entry-content .repeat {
|
||||
.entry-metadata .repeat {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.entry-content .repeat .photo {
|
||||
.entry-metadata .repeat .u-photo {
|
||||
float:none;
|
||||
margin-right:1px;
|
||||
position:relative;
|
||||
@ -742,11 +728,19 @@ top:4px;
|
||||
left:0;
|
||||
}
|
||||
|
||||
.entry-metadata {
|
||||
clear: left;
|
||||
float: left;
|
||||
font-size: 0.88em;
|
||||
}
|
||||
|
||||
.entry-metadata, .notice-options {
|
||||
margin-bottom: 7px;
|
||||
margin-top: 12px;
|
||||
}
|
||||
|
||||
.notice-options {
|
||||
float: right;
|
||||
margin-top: 12px;
|
||||
margin-right: -6px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.notice-options fieldset {
|
||||
@ -858,10 +852,10 @@ content: ":";
|
||||
clear: both;
|
||||
float: left;
|
||||
width: 458px;
|
||||
margin-left: 59px;
|
||||
margin-top: 10px;
|
||||
margin-left: 55px;
|
||||
margin-bottom: 10px;
|
||||
padding-right: 2px;
|
||||
padding-top: 5px;
|
||||
border-left: 3px solid #ECECF2;
|
||||
background: #fafafa;
|
||||
color: #222;
|
||||
@ -872,10 +866,6 @@ content: ":";
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
.user_in .threaded-replies {
|
||||
margin-top: 0px;
|
||||
}
|
||||
|
||||
#content .notice .threaded-replies .notice,
|
||||
#content .notice .threaded-replies .notice-data {
|
||||
width: 440px;
|
||||
@ -889,34 +879,27 @@ content: ":";
|
||||
background: none;
|
||||
}
|
||||
|
||||
#content .notice .threaded-replies .h-entry,
|
||||
#content .notice .threaded-replies .entry-title {
|
||||
min-height: 1px;
|
||||
}
|
||||
|
||||
#content .threaded-replies .notice .author .photo {
|
||||
#content .threaded-replies .notice .p-author .u-photo {
|
||||
height: 24px;
|
||||
width: 24px;
|
||||
top: 12px;
|
||||
}
|
||||
|
||||
#content .notice .threaded-replies .notice .entry-title {
|
||||
margin: 2px 7px 0px 35px;
|
||||
#content .notice .threaded-replies .notice .h-entry p.e-content {
|
||||
margin-left: 32px;
|
||||
}
|
||||
|
||||
#content .notice .threaded-replies .notice div.entry-content {
|
||||
clear:left;
|
||||
float:left;
|
||||
margin-left: 35px;
|
||||
margin-top: 6px !important;
|
||||
#content .notice .threaded-replies .notice div.e-content {
|
||||
margin-left: 32px;
|
||||
}
|
||||
|
||||
#content .notice .threaded-replies .notice div.entry-content.notice-faves {
|
||||
margin-top: 2px !important;
|
||||
}
|
||||
|
||||
#content .notice .threaded-replies .notice .notice-options {
|
||||
margin-top: 5px;
|
||||
margin-bottom: 0px;
|
||||
#content .notice .threaded-replies .notice div.e-content.notice-faves {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.threaded-replies li {
|
||||
@ -986,11 +969,6 @@ content: ":";
|
||||
width: auto;
|
||||
}
|
||||
|
||||
#conversation .notices .threaded-replies {
|
||||
margin-left: 59px;
|
||||
background: #fafafa;
|
||||
}
|
||||
|
||||
#conversation .notices .notices .notices .notices .notices .notices .notices .notices .notices .notices .notices .notices .notices {
|
||||
background: none;
|
||||
margin-left: 0px;
|
||||
@ -1003,7 +981,12 @@ content: ":";
|
||||
clear:both;
|
||||
}
|
||||
|
||||
.section .vcard .photo {
|
||||
.notice p.e-content {
|
||||
clear: none;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.section .h-card .u-photo {
|
||||
margin-right:7px;
|
||||
margin-bottom:0;
|
||||
}
|
||||
@ -1021,8 +1004,9 @@ padding-top:0;
|
||||
.section .notice .author {
|
||||
margin-right:0;
|
||||
}
|
||||
.section .notice .author .fn {
|
||||
display:none;
|
||||
|
||||
.p-name.metadata {
|
||||
display:none;
|
||||
}
|
||||
|
||||
#aside_primary ol.notices {
|
||||
@ -1084,12 +1068,9 @@ content: ":";
|
||||
margin-bottom: 8px;
|
||||
display: inline;
|
||||
}
|
||||
.section .entities li .photo {
|
||||
.section .entities li .u-photo {
|
||||
margin: 0;
|
||||
}
|
||||
.section .entities li .fn {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.tag-cloud {
|
||||
list-style-type:none;
|
||||
@ -1160,7 +1141,7 @@ clear:both;
|
||||
margin-bottom:18px;
|
||||
}
|
||||
|
||||
.entry-content .success {
|
||||
.e-content .success {
|
||||
padding: 6px;
|
||||
}
|
||||
|
||||
@ -1477,16 +1458,20 @@ margin-left:11px;
|
||||
width:auto;
|
||||
}
|
||||
|
||||
.hentry .entry-content .form_settings ul {
|
||||
.h-entry .e-content .form_settings ul {
|
||||
margin-left:0;
|
||||
}
|
||||
|
||||
.limited-scope .entry-content .timestamp:before {
|
||||
.entry-metadata .timestamp span.p-name {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.limited-scope .e-content .timestamp:before {
|
||||
content:'☠';
|
||||
font-size:150%;
|
||||
}
|
||||
|
||||
#content .notice-source-activity div.entry-title, .notice-source-activity div.entry-content {
|
||||
#content .notice-source-activity div.entry-title, .notice-source-activity div.e-content {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
@ -1609,25 +1594,25 @@ height:16px;
|
||||
margin-left:0;
|
||||
}
|
||||
|
||||
.entity_profile .nickname {
|
||||
.entity_profile .p-nickname {
|
||||
font-size:1.4em;
|
||||
}
|
||||
|
||||
.entity_profile .fn {
|
||||
.entity_profile .p-name {
|
||||
font-size: 1.2em;
|
||||
clear: left;
|
||||
}
|
||||
|
||||
.entity_profile .fn:before {
|
||||
.entity_profile .p-name:before {
|
||||
content: "(";
|
||||
font-weight:normal;
|
||||
}
|
||||
.entity_profile .fn:after {
|
||||
.entity_profile .p-name:after {
|
||||
content: ")";
|
||||
font-weight:normal;
|
||||
}
|
||||
.entity_profile .nickname:after,
|
||||
.entity_profile .nickname:before {
|
||||
.entity_profile .p-nickname:after,
|
||||
.entity_profile .p-nickname:before {
|
||||
content:"";
|
||||
}
|
||||
.entity_profile dt,
|
||||
@ -1884,13 +1869,13 @@ display:none;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.profile .entity_profile .fn.nickname,
|
||||
.profile .entity_profile .url[rel~=contact] {
|
||||
.profile .entity_profile .p-name,
|
||||
.profile .entity_profile .u-url[rel~=contact] {
|
||||
margin-left:0;
|
||||
display:inline;
|
||||
}
|
||||
|
||||
.profile .entity_profile .fn,
|
||||
.profile .entity_profile .p-name,
|
||||
.profile .entity_profile .label {
|
||||
margin-left:11px;
|
||||
margin-bottom:4px;
|
||||
@ -1899,10 +1884,10 @@ clear:none;
|
||||
}
|
||||
|
||||
.profile .entity_profile .note,
|
||||
.profile .entity_profile .url,
|
||||
.profile .entity_profile .u-url,
|
||||
.profile .entity_profile .entity_tags,
|
||||
.profile .entity_profile .form_subscription_edit {
|
||||
margin-left:59px;
|
||||
margin-left:55px;
|
||||
clear:none;
|
||||
display:block;
|
||||
width:auto;
|
||||
@ -1933,7 +1918,7 @@ min-height: 90px;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
.peopletag .entry-content {
|
||||
.peopletag .e-content {
|
||||
width:auto;
|
||||
}
|
||||
|
||||
@ -1976,13 +1961,13 @@ font-weight:normal;
|
||||
margin-right:10px;
|
||||
}
|
||||
|
||||
.profile-lister li .photo {
|
||||
.profile-lister li .u-photo {
|
||||
display:inline;
|
||||
margin-right:7px;
|
||||
margin-bottom:-5px;
|
||||
}
|
||||
|
||||
.profile-lister li .fn {
|
||||
.profile-lister li .p-name {
|
||||
font-weight:bold;
|
||||
}
|
||||
|
||||
@ -2082,8 +2067,8 @@ width:68%;
|
||||
#showapplication .entity_profile .entity_fn {
|
||||
margin-left:0;
|
||||
}
|
||||
#showapplication .entity_profile .fn:before,
|
||||
#showapplication .entity_profile .fn:after {
|
||||
#showapplication .entity_profile .p-name:before,
|
||||
#showapplication .entity_profile .p-name:after {
|
||||
content:'';
|
||||
}
|
||||
#showapplication .entity_data {
|
||||
|
@ -421,28 +421,22 @@ h6 {font-size: 1em;}
|
||||
border-bottom: 2px dotted #eee;
|
||||
}
|
||||
|
||||
.notice div.entry-content {
|
||||
font-size: 0.88em;
|
||||
.notice div.e-content {
|
||||
line-height: 1.2em;
|
||||
margin-top: 6px;
|
||||
}
|
||||
|
||||
.user_in .notice div.entry-content {
|
||||
.user_in .notice div.e-content {
|
||||
max-width: 440px;
|
||||
}
|
||||
|
||||
.entry-content a.conversation:before {
|
||||
.e-content a.conversation:before {
|
||||
content: " (";
|
||||
}
|
||||
|
||||
.entry-content a.conversation:after {
|
||||
.e-content a.conversation:after {
|
||||
content: ")";
|
||||
}
|
||||
|
||||
.notice-options {
|
||||
margin-top: 4px;
|
||||
}
|
||||
|
||||
.notice-options .form_repeat.dialogbox {
|
||||
margin-right: 0px;
|
||||
border: 1px solid #aaa;
|
||||
@ -459,11 +453,7 @@ h6 {font-size: 1em;}
|
||||
min-width: 80px;
|
||||
}
|
||||
|
||||
#content .threaded-replies .notice .author .photo {
|
||||
box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
|
||||
}
|
||||
|
||||
.user_in.realtime-popup .notice div.entry-content {
|
||||
.user_in.realtime-popup .notice div.e-content {
|
||||
max-width: 320px;
|
||||
}
|
||||
|
||||
@ -747,31 +737,31 @@ padding-right:0;
|
||||
|
||||
/* Limited-scope */
|
||||
|
||||
.limited-scope .entry-content .timestamp {
|
||||
.limited-scope .e-content .timestamp {
|
||||
padding-left: 20px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.limited-scope .entry-content .timestamp:before {
|
||||
.limited-scope .e-content .timestamp:before {
|
||||
content: url(../images/lock.png);
|
||||
position: absolute;
|
||||
top: -2px;
|
||||
left: 0px;
|
||||
}
|
||||
|
||||
.limited-scope li .entry-content .timestamp {
|
||||
.limited-scope li .e-content .timestamp {
|
||||
padding-left: 0px;
|
||||
}
|
||||
|
||||
.limited-scope li .entry-content .timestamp:before {
|
||||
.limited-scope li .e-content .timestamp:before {
|
||||
content: none;
|
||||
}
|
||||
|
||||
.limited-scope li.limited-scope .entry-content .timestamp {
|
||||
.limited-scope li.limited-scope .e-content .timestamp {
|
||||
padding-left: 20px;
|
||||
}
|
||||
|
||||
.limited-scope li.limited-scope .entry-content .timestamp:before {
|
||||
.limited-scope li.limited-scope .e-content .timestamp:before {
|
||||
content: url(../images/lock.png);
|
||||
position: absolute;
|
||||
top: -2px;
|
||||
@ -970,13 +960,13 @@ td.entity_profile {
|
||||
min-width: 250px;
|
||||
}
|
||||
|
||||
.profile_list .fn {
|
||||
.profile_list .p-name {
|
||||
display: block;
|
||||
font-size: 1.1em;
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.profile_list .nickname, .profile_list .fn.nickname {
|
||||
.profile_list .nickname, .profile_list .p-name.nickname {
|
||||
position: relative;
|
||||
top: -8px;
|
||||
display: block;
|
||||
|
@ -15,7 +15,7 @@ span.rtl{
|
||||
direction: rtl !important;
|
||||
}
|
||||
|
||||
#content .notice .entry-title{
|
||||
#content .notice .h-entry {
|
||||
direction: ltr;
|
||||
}
|
||||
|
||||
@ -27,12 +27,12 @@ span.rtl{
|
||||
float: left;
|
||||
}
|
||||
|
||||
.notice div.entry-content {
|
||||
.notice div.e-content {
|
||||
float: right;
|
||||
clear: right;
|
||||
}
|
||||
|
||||
#content .notice .threaded-replies .notice div.entry-content{
|
||||
#content .notice .threaded-replies .notice div.e-content{
|
||||
clear: right;
|
||||
float: right;
|
||||
}
|
||||
@ -86,7 +86,7 @@ address{
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
.notice p.entry-content {
|
||||
.notice p.e-content {
|
||||
float: left;
|
||||
}
|
||||
|
||||
@ -104,15 +104,7 @@ address{
|
||||
/* background-position: right center; */
|
||||
}
|
||||
|
||||
#content .notice .threaded-replies .notice .entry-title{
|
||||
margin: 2px 35px 0 7px;
|
||||
}
|
||||
|
||||
#content .notice .entry-title {
|
||||
margin: 2px 59px 0 7px;
|
||||
}
|
||||
|
||||
#content .notice .author .photo{
|
||||
#content .notice .author .u-photo{
|
||||
right: 0;
|
||||
left: auto;
|
||||
}
|
||||
@ -121,12 +113,12 @@ address{
|
||||
float: left;
|
||||
}
|
||||
|
||||
.notice div.entry-content {
|
||||
.notice div.e-content {
|
||||
margin-right: 59px;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
#core .vcard .photo {
|
||||
#core .h-card .u-photo {
|
||||
margin-left: 11px;
|
||||
margin-right: 0;
|
||||
}
|
||||
@ -135,14 +127,10 @@ address{
|
||||
margin: 2px 10px 4px 0;
|
||||
}
|
||||
|
||||
#shownotice .notice div.entry-content {
|
||||
#shownotice .notice div.e-content {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
.notice .addressees:before {
|
||||
content: '\25C2';
|
||||
}
|
||||
|
||||
#content thead th {
|
||||
text-align: right;
|
||||
}
|
||||
@ -270,12 +258,12 @@ select {
|
||||
float: left;
|
||||
}
|
||||
|
||||
.profile .entity_profile .fn, .profile .entity_profile .label {
|
||||
.profile .entity_profile .p-name, .profile .entity_profile .label {
|
||||
margin-right: 11px;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
#core .vcard .photo {
|
||||
#core .h-card .u-photo {
|
||||
float: right;
|
||||
}
|
||||
|
||||
@ -302,16 +290,16 @@ select {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
#showstream .notice .entry-title, #showstream .notice div.entry-content {
|
||||
#showstream .notice .h-entry, #showstream .notice div.e-content {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
.limited-scope .entry-content .timestamp:before {
|
||||
.limited-scope .e-content .timestamp:before {
|
||||
right: 0;
|
||||
left: auto;
|
||||
}
|
||||
|
||||
.limited-scope .entry-content .timestamp {
|
||||
.limited-scope .e-content .timestamp {
|
||||
padding-left: 0;
|
||||
padding-right: 20px;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user