Merge remote branch 'upstream/master'

This commit is contained in:
Michael Vogel 2012-05-29 16:09:26 +02:00
commit 68757f2504
27 changed files with 659 additions and 654 deletions

View File

@ -9,7 +9,7 @@ require_once('include/nav.php');
require_once('include/cache.php');
define ( 'FRIENDICA_PLATFORM', 'Friendica');
define ( 'FRIENDICA_VERSION', '3.0.1354' );
define ( 'FRIENDICA_VERSION', '3.0.1357' );
define ( 'DFRN_PROTOCOL_VERSION', '2.23' );
define ( 'DB_UPDATE_VERSION', 1144 );
@ -441,22 +441,19 @@ if(! class_exists('App')) {
if(intval($this->config['system']['ssl_policy']) === intval(SSL_POLICY_FULL))
$scheme = 'https';
// We need to populate the $ssl flag across the entire program before turning this on.
// Basically, we'll have $ssl = true on any links which can only be seen by a logged in user
// (and also the login link). Anything seen by an outsider will have it turned off.
// At present, setting SSL_POLICY_SELFSIGN will only force remote contacts to update their
// contact links to this site with "http:" if they are currently using "https:"
// Basically, we have $ssl = true on any links which can only be seen by a logged in user
// (and also the login link). Anything seen by an outsider will have it turned off.
// if($this->config['system']['ssl_policy'] == SSL_POLICY_SELFSIGN) {
// if($ssl)
// $scheme = 'https';
// else
// $scheme = 'http';
// }
}
if($this->config['system']['ssl_policy'] == SSL_POLICY_SELFSIGN) {
if($ssl)
$scheme = 'https';
else
$scheme = 'http';
}
}
$this->baseurl = $scheme . "://" . $this->hostname . ((isset($this->path) && strlen($this->path)) ? '/' . $this->path : '' );
return $this->baseurl;
$this->baseurl = $scheme . "://" . $this->hostname . ((isset($this->path) && strlen($this->path)) ? '/' . $this->path : '' );
return $this->baseurl;
}
function set_baseurl($url) {

View File

@ -53,6 +53,8 @@ if((isset($_SESSION)) && (x($_SESSION,'authenticated')) && ((! (x($_POST,'auth-p
$check = get_config('system','paranoia');
// extra paranoia - if the IP changed, log them out
if($check && ($_SESSION['addr'] != $_SERVER['REMOTE_ADDR'])) {
logger('Session address changed. Paranoid setting in effect, blocking session. '
. $_SESSION['addr'] . ' != ' . $_SERVER['REMOTE_ADDR']);
nuke_session();
goaway(z_root());
}

View File

@ -221,13 +221,18 @@ function bb2diaspora($Text,$preserve_nl = false) {
$Text = preg_replace("/\<(.*?)(src|href)=(.*?)\&amp\;(.*?)\>/ism",'<$1$2=$3&$4>',$Text);
$Text = preg_replace('/\[(.*?)\]\((.*?)\\\\_(.*?)\)/ism','[$1]($2_$3)',$Text);
$Text = preg_replace_callback('/\[(.*?)\]\((.*?)\)/ism','unescape_underscores_in_links',$Text);
call_hooks('bb2diaspora',$Text);
return $Text;
}
function unescape_underscores_in_links($m) {
$y = str_replace('\\_','_', $m[2]);
return('[' . $m[1] . '](' . $y . ')');
}
function format_event_diaspora($ev) {
$a = get_app();

View File

@ -288,7 +288,7 @@ function delivery_run($argv, $argc){
if($normal_mode) {
if($item_id == $item['id'] || $item['id'] == $item['parent'])
$atom .= atom_entry($item,'text',null,$owner,true);
$atom .= atom_entry($item,'text',null,$owner,true,(($top_level) ? $contact['id'] : 0));
}
else
$atom .= atom_entry($item,'text',null,$owner,true);

View File

@ -13,7 +13,7 @@ function notification($params) {
$banner = t('Friendica Notification');
$product = FRIENDICA_PLATFORM;
$siteurl = z_path();
$siteurl = $a->get_baseurl(true);
$thanks = t('Thank You,');
$sitename = get_config('config','sitename');
$site_admin = sprintf( t('%s Administrator'), $sitename);

View File

@ -2832,7 +2832,7 @@ function atom_author($tag,$name,$uri,$h,$w,$photo) {
return $o;
}
function atom_entry($item,$type,$author,$owner,$comment = false) {
function atom_entry($item,$type,$author,$owner,$comment = false,$cid = 0) {
$a = get_app();
@ -2844,7 +2844,7 @@ function atom_entry($item,$type,$author,$owner,$comment = false) {
if($item['allow_cid'] || $item['allow_gid'] || $item['deny_cid'] || $item['deny_gid'])
$body = fix_private_photos($item['body'],$owner['uid']);
$body = fix_private_photos($item['body'],$owner['uid'],$item,$cid);
else
$body = $item['body'];
@ -2927,14 +2927,17 @@ function atom_entry($item,$type,$author,$owner,$comment = false) {
return $o;
}
function fix_private_photos($s,$uid) {
function fix_private_photos($s,$uid, $item = null, $cid = 0) {
$a = get_app();
logger('fix_private_photos');
logger('fix_private_photos', LOGGER_DEBUG);
$site = substr($a->get_baseurl(),strpos($a->get_baseurl,'://'));
if(preg_match("/\[img\](.*?)\[\/img\]/is",$s,$matches)) {
$image = $matches[1];
logger('fix_private_photos: found photo ' . $image);
if(stristr($image ,$a->get_baseurl() . '/photo/')) {
logger('fix_private_photos: found photo ' . $image, LOGGER_DEBUG);
if(stristr($image , $site . '/photo/')) {
$replace = false;
$i = basename($image);
$i = str_replace('.jpg','',$i);
$x = strpos($i,'-');
@ -2947,17 +2950,86 @@ function fix_private_photos($s,$uid) {
intval($uid)
);
if(count($r)) {
logger('replacing photo');
$s = str_replace($image, 'data:image/jpg;base64,' . base64_encode($r[0]['data']), $s);
// Check to see if we should replace this photo link with an embedded image
// 1. No need to do so if the photo is public
// 2. If there's a contact-id provided, see if they're in the access list
// for the photo. If so, embed it.
// 3. Otherwise, if we have an item, see if the item permissions match the photo
// permissions, regardless of order but first check to see if they're an exact
// match to save some processing overhead.
// Currently we only embed one private photo per message so as not to hit import
// size limits at the receiving end.
// To embed multiples, we would need to parse out the embedded photos on message
// receipt and limit size based only on the text component. Would also need to
// ignore all photos during bbcode translation and item localisation, as these
// will hit internal regex backtrace limits.
if(has_permissions($r[0])) {
if($cid) {
$recips = enumerate_permissions($r[0]);
if(in_array($cid, $recips)) {
$replace = true;
}
}
elseif($item) {
if(compare_permissions($item,$r[0]))
$replace = true;
}
}
if($replace) {
logger('fix_private_photos: replacing photo', LOGGER_DEBUG);
$s = str_replace($image, 'data:image/jpg;base64,' . base64_encode($r[0]['data']), $s);
logger('fix_private_photos: replaced: ' . $s, LOGGER_DATA);
}
}
}
logger('fix_private_photos: replaced: ' . $s, LOGGER_DATA);
}
}
return($s);
}
function has_permissions($obj) {
if(($obj['allow_cid'] != '') || ($obj['allow_gid'] != '') || ($obj['deny_cid'] != '') || ($obj['deny_gid'] != ''))
return true;
return false;
}
function compare_permissions($obj1,$obj2) {
// first part is easy. Check that these are exactly the same.
if(($obj1['allow_cid'] == $obj2['allow_cid'])
&& ($obj1['allow_gid'] == $obj2['allow_gid'])
&& ($obj1['deny_cid'] == $obj2['deny_cid'])
&& ($obj1['deny_gid'] == $obj2['deny_gid']))
return true;
// This is harder. Parse all the permissions and compare the resulting set.
$recipients1 = enumerate_permissions($obj1);
$recipients2 = enumerate_permissions($obj2);
sort($recipients1);
sort($recipients2);
if($recipients1 == $recipients2)
return true;
return false;
}
// returns an array of contact-ids that are allowed to see this object
function enumerate_permissions($obj) {
require_once('include/group.php');
$allow_people = expand_acl($obj['allow_cid']);
$allow_groups = expand_groups(expand_acl($obj['allow_gid']));
$deny_people = expand_acl($obj['deny_cid']);
$deny_groups = expand_groups(expand_acl($obj['deny_gid']));
$recipients = array_unique(array_merge($allow_people,$allow_groups));
$deny = array_unique(array_merge($deny_people,$deny_groups));
$recipients = array_diff($recipients,$deny);
return $recipients;
}
function item_getfeedtags($item) {
$ret = array();
@ -3004,13 +3076,20 @@ function item_getfeedattach($item) {
function item_expire($uid,$days) {
if((! $uid) || (! $days))
if((! $uid) || ($days < 1))
return;
// $expire_network_only = save your own wall posts
// and just expire conversations started by others
$expire_network_only = get_pconfig($uid,'expire','network_only');
$sql_extra = ((intval($expire_network_only)) ? " AND wall = 0 " : "");
$r = q("SELECT * FROM `item`
WHERE `uid` = %d
AND `created` < UTC_TIMESTAMP() - INTERVAL %d DAY
AND `id` = `parent`
$sql_extra
AND `deleted` = 0",
intval($uid),
intval($days)

View File

@ -345,7 +345,7 @@ function notifier_run($argv, $argc){
if($mail) {
$public_message = false; // mail is not public
$body = fix_private_photos($item['body'],$owner['uid']);
$body = fix_private_photos($item['body'],$owner['uid'],null,$message[0]['contact-id']);
$atom .= replace_macros($mail_template, array(
'$name' => xmlify($owner['name']),

View File

@ -25,8 +25,8 @@ function advanced_profile(&$a) {
$val = ((intval($a->profile['dob']))
? day_translate(datetime_convert('UTC','UTC',$a->profile['dob'] . ' 00:00 +00:00',$year_bd_format))
: day_translate(datetime_convert('UTC','UTC','2001-' . substr($a->profile['dob'],6) . ' 00:00 +00:00',$short_bd_format)));
: day_translate(datetime_convert('UTC','UTC','2001-' . substr($a->profile['dob'],5) . ' 00:00 +00:00',$short_bd_format)));
$profile['birthday'] = array( t('Birthday:'), $val);
}

View File

@ -5,6 +5,8 @@ function gender_selector($current="",$suffix="") {
$o = '';
$select = array('', t('Male'), t('Female'), t('Currently Male'), t('Currently Female'), t('Mostly Male'), t('Mostly Female'), t('Transgender'), t('Intersex'), t('Transsexual'), t('Hermaphrodite'), t('Neuter'), t('Non-specific'), t('Other'), t('Undecided'));
call_hooks('gender_selector', $select);
$o .= "<select name=\"gender$suffix\" id=\"gender-select$suffix\" size=\"1\" >";
foreach($select as $selection) {
if($selection !== 'NOTRANSLATION') {
@ -20,6 +22,9 @@ function sexpref_selector($current="",$suffix="") {
$o = '';
$select = array('', t('Males'), t('Females'), t('Gay'), t('Lesbian'), t('No Preference'), t('Bisexual'), t('Autosexual'), t('Abstinent'), t('Virgin'), t('Deviant'), t('Fetish'), t('Oodles'), t('Nonsexual'));
call_hooks('sexpref_selector', $select);
$o .= "<select name=\"sexual$suffix\" id=\"sexual-select$suffix\" size=\"1\" >";
foreach($select as $selection) {
if($selection !== 'NOTRANSLATION') {
@ -36,6 +41,8 @@ function marital_selector($current="",$suffix="") {
$o = '';
$select = array('', t('Single'), t('Lonely'), t('Available'), t('Unavailable'), t('Has crush'), t('Infatuated'), t('Dating'), t('Unfaithful'), t('Sex Addict'), t('Friends'), t('Friends/Benefits'), t('Casual'), t('Engaged'), t('Married'), t('Imaginarily married'), t('Partners'), t('Cohabiting'), t('Common law'), t('Happy'), t('Not looking'), t('Swinger'), t('Betrayed'), t('Separated'), t('Unstable'), t('Divorced'), t('Imaginarily divorced'), t('Widowed'), t('Uncertain'), t('It\'s complicated'), t('Don\'t care'), t('Ask me') );
call_hooks('marital_selector', $select);
$o .= "<select name=\"marital\" id=\"marital-select\" size=\"1\" >";
foreach($select as $selection) {
if($selection !== 'NOTRANSLATION') {

View File

@ -81,7 +81,7 @@ function notes_content(&$a,$update = false) {
$r = q("SELECT COUNT(*) AS `total`
FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
WHERE `item`.`uid` = %d AND `item`.`visible` = 1 and `item`.`moderated` = 0
AND `item`.`deleted` = 0 AND `item`.`origin` = 1
AND `item`.`deleted` = 0 AND `item`.`type` = 'note'
AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0 AND `contact`.`self` = 1
AND `item`.`id` = `item`.`parent` AND `item`.`wall` = 0
$sql_extra ",
@ -97,7 +97,7 @@ function notes_content(&$a,$update = false) {
$r = q("SELECT `item`.`id` AS `item_id`, `contact`.`uid` AS `contact-uid`
FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
WHERE `item`.`uid` = %d AND `item`.`visible` = 1 AND `item`.`deleted` = 0
and `item`.`moderated` = 0 AND `item`.`origin` = 1
and `item`.`moderated` = 0 AND `item`.`type` = 'note'
AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0 AND `contact`.`self` = 1
AND `item`.`id` = `item`.`parent` AND `item`.`wall` = 0
$sql_extra

View File

@ -15,6 +15,7 @@ function get_theme_config_file($theme){
}
function settings_init(&$a) {
// These lines provide the javascript needed by the acl selector
$a->page['htmlhead'] .= "<script> var ispublic = '" . t('everybody') . "';" ;
@ -86,6 +87,7 @@ EOT;
$tabtpl = get_markup_template("generic_links_widget.tpl");
$a->page['aside'] = replace_macros($tabtpl, array(
'$title' => t('Settings'),
'$class' => 'settings-widget',
'$items' => $tabs,
));
@ -337,8 +339,7 @@ function settings_post(&$a) {
$expire_notes = ((x($_POST,'expire_notes')) ? intval($_POST['expire_notes']) : 0);
$expire_starred = ((x($_POST,'expire_starred')) ? intval($_POST['expire_starred']) : 0);
$expire_photos = ((x($_POST,'expire_photos'))? intval($_POST['expire_photos']) : 0);
$expire_network_only = ((x($_POST,'expire_network_only'))? intval($_POST['expire_network_only']) : 0);
$allow_location = (((x($_POST,'allow_location')) && (intval($_POST['allow_location']) == 1)) ? 1: 0);
$publish = (((x($_POST,'profile_in_directory')) && (intval($_POST['profile_in_directory']) == 1)) ? 1: 0);
@ -434,6 +435,7 @@ function settings_post(&$a) {
set_pconfig(local_user(),'expire','notes', $expire_notes);
set_pconfig(local_user(),'expire','starred', $expire_starred);
set_pconfig(local_user(),'expire','photos', $expire_photos);
set_pconfig(local_user(),'expire','network_only', $expire_network_only);
set_pconfig(local_user(),'system','suggestme', $suggestme);
set_pconfig(local_user(),'system','post_newfriend', $post_newfriend);
@ -811,6 +813,9 @@ function settings_content(&$a) {
$expire_photos = get_pconfig(local_user(), 'expire','photos');
$expire_photos = (($expire_photos===false)? '0' : $expire_photos); // default if not set: 0
$expire_network_only = get_pconfig(local_user(), 'expire','network_only');
$expire_network_only = (($expire_network_only===false)? '0' : $expire_network_only); // default if not set: 0
$suggestme = get_pconfig(local_user(), 'system','suggestme');
$suggestme = (($suggestme===false)? '0': $suggestme); // default if not set: 0
@ -953,6 +958,7 @@ function settings_content(&$a) {
'notes' => array('expire_notes', t("Expire personal notes:"), $expire_notes, '', array(t('No'),t('Yes'))),
'starred' => array('expire_starred', t("Expire starred posts:"), $expire_starred, '', array(t('No'),t('Yes'))),
'photos' => array('expire_photos', t("Expire photos:"), $expire_photos, '', array(t('No'),t('Yes'))),
'network_only' => array('expire_network_only', t("Only expire posts by others:"), $expire_network_only, '', array(t('No'),t('Yes'))),
);
require_once('include/group.php');

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,4 @@
<div class="widget">
<div class="widget{{ if $class }} $class{{ endif }}">
{{if $title}}<h3>$title</h3>{{endif}}
{{if $desc}}<div class="desc">$desc</div>{{endif}}

View File

@ -70,6 +70,7 @@ $unkmail
{{ inc field_yesno.tpl with $field=$expire.items }}{{endinc}}
{{ inc field_yesno.tpl with $field=$expire.notes }}{{endinc}}
{{ inc field_yesno.tpl with $field=$expire.starred }}{{endinc}}
{{ inc field_yesno.tpl with $field=$expire.network_only }}{{endinc}}
</div>
</div>

View File

@ -2,7 +2,6 @@
<div>$page</div>
{{ endif }}
{{ if $lastusers_title }}
<h3 id="extra-help-header">Help or '@NewHere'?</h3>
<div id="extra-help">
<a href="https://helpers.pyxis.uberspace.de/profile/helpers"
@ -13,27 +12,24 @@
title="Local Friendica" target="_blank">Local Friendica</a><br />
<a href="http://kakste.com/profile/newhere" title="@NewHere" target="_blank">NewHere</a>
</div>
{{ endif }}
{{ if $lastusers_title }}
<h3 id="connect-services-header">Connectable Services</h3>
<div id="connect-services">
<a href="$url/facebook"><img alt="Facebook"
src="view/theme/dispy/icons/facebook.png" title="Facebook" /></a>
<a href="$url/settings/connectors"><img
alt="StatusNet" src="view/theme/dispy/icons/StatusNet.png?" title="StatusNet" /></a>
<a href="$url/settings/connectors"><img
alt="LiveJournal" src="view/theme/dispy/icons/livejournal.png?" title="LiveJournal" /></a>
<a href="$url/settings/connectors"><img
alt="Posterous" src="view/theme/dispy/icons/posterous.png?" title="Posterous" /></a><br />
<a href="$url/settings/connectors"><img
alt="Tumblr" src="view/theme/dispy/icons/tumblr.png?" title="Tumblr" /></a>
<a href="$url/settings/connectors"><img
alt="Twitter" src="view/theme/dispy/icons/twitter.png?" title="Twitter" /></a>
<a href="$url/settings/connectors"><img
alt="WordPress" src="view/theme/dispy/icons/wordpress.png?" title="WordPress" /></a>
<a href="$url/settings/connectors"><img
alt="E-Mail" src="view/theme/dispy/icons/email.png?" title="E-Mail" /></a>
</div>
{{ endif }}
<ul id="connect-services">
<li><a href="$url/facebook"><img alt="Facebook"
src="view/theme/dispy/icons/facebook.png" title="Facebook" /></a></li>
<li><a href="$url/settings/connectors"><img
alt="StatusNet" src="view/theme/dispy/icons/StatusNet.png" title="StatusNet" /></a></li>
<li><a href="$url/settings/connectors"><img
alt="LiveJournal" src="view/theme/dispy/icons/livejournal.png" title="LiveJournal" /></a></li>
<li><a href="$url/settings/connectors"><img
alt="Posterous" src="view/theme/dispy/icons/posterous.png" title="Posterous" /></a></li>
<li><a href="$url/settings/connectors"><img
alt="Tumblr" src="view/theme/dispy/icons/tumblr.png" title="Tumblr" /></a></li>
<li><a href="$url/settings/connectors"><img
alt="Twitter" src="view/theme/dispy/icons/twitter.png" title="Twitter" /></a></li>
<li><a href="$url/settings/connectors"><img
alt="WordPress" src="view/theme/dispy/icons/wordpress.png" title="WordPress" /></a></li>
<li><a href="$url/settings/connectors"><img
alt="E-Mail" src="view/theme/dispy/icons/email.png" title="E-Mail" /></a></li>
</ul>

View File

@ -41,17 +41,17 @@ function theme_admin_post(&$a) {
function dispy_form(&$a, $font_size, $line_height, $colour) {
$line_heights = array(
"1.3"=>"1.3",
"---"=>"---",
"1.6"=>"1.6",
"1.5"=>"1.5",
"1.4"=>"1.4",
"1.2"=>"1.2",
"1.1"=>"1.1",
"1.3" => "1.3",
"---" => "---",
"1.6" => "1.6",
"1.5" => "1.5",
"1.4" => "1.4",
"1.2" => "1.2",
"1.1" => "1.1",
);
$font_sizes = array(
'12' => '12',
'14' =>'14',
'14' => '14',
"---" => "---",
"16" => "16",
"15" => "15",

View File

@ -17,6 +17,7 @@
@import "../css/reset";
//* backgrounds */
@lt_bg_colour: lighten(@bg_colour, 10%);
@dk_bg_colour: #1d1f1d;
@bg_colour: #2e2f2e;
@bg_alt_colour: #2e302e;
@ -24,8 +25,9 @@
@menu_bg_colour: #555753;
//* font colour, aka color: */
@lt_main_colour: #ffff99;
@lt_main_colour: lighten(@main_colour, 10%);
@main_colour: #eeeecc;
@dk_main_colour: darken(@main_colour, 20%);
@main_alt_colour: #eeeeee;
// darken(@main_alt_colour, 13%) > #cdcdcd
// darken(@main_alt_colour, 13.5%) > #cccccc
@ -56,9 +58,6 @@
@info: #1353b1;
@alert: #ff0000;
@lt_main_colour: lighten(@bg_colour, 10%);
@dk_main_colour: darken(@bg_colour, 10%);
//* links */
@link_colour: #88a9d2;
@dk_link_colour: darken(@link_colour, 10%);
@ -137,7 +136,19 @@
-webkit-text-overflow: @t;
text-overflow: @t;
}
.lin_gradient(@x1: left, @x2: right, @y1: top, @y2: bottom, @c1: @bg_colour, @c2: @dk_bg_colour) {
// w3c
background: linear-gradient(@x1 @y2, @c1, @c2);
// webkit
// -webkit-gradient(<type>, <point> [, <radius>]?, <point> [, <radius>]? [, <stop>]*)
background: -webkit-gradient(linear, @x1 @y1, @x2 @y2, from(@c1), to(@c2));
// mozilla
// -moz-linear-gradient([<point> || <angle>,]? <stop>, <stop> [, <stop>])
background: -moz-linear-gradient(@x1 @y2, @c1, @c2);
// opera
//background: -o-linear-gradient([<point> || <angle>,]? <stop>, <stop> [, <stop>]);
background: -o-linear-gradient(@x1, @c1, @c2);
}
//* pre wrap */
.wrap () {
white-space: pre-wrap;

View File

@ -20,7 +20,7 @@ tr:nth-child(even){background-color:#474947;}
:focus{outline:none;}
a:focus{outline:invert, dashed, thin;}
[disabled="disabled"]{background:#4e4f4e;color:#ddddbb;}
ins,mark{background-color:#2e302e;color:#474947;}
ins,mark{background-color:#2e302e;color:#fbfbf2;}
ins{text-decoration:none;}
mark{font-style:italic;font-weight:bold;}
pre,code,kbd,samp,.wall-item-body code{font-family:monospace, monospace;_font-family:monospace;font-size:1em;}
@ -58,7 +58,7 @@ h6{font-size:xx-small;}
#articlemain{width:100%;height:100%;margin:0 auto;}
.button{color:#eeeecc;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;padding:5px;cursor:pointer;}.button a{color:#eeeecc;font-weight:bold;}
#profile-listing-desc a{color:#eeeecc;font-weight:bold;}
[class$="-desc"],[id$="-desc"]{color:#eeeecc;background:#2e2f2e;border:3px ridge #eeeecc;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;margin:3px 10px 7px 0;padding:5px;font-weight:bold;font-size:smaller;}
[class$="-desc"],[id$="-desc"]{color:#eeeecc;background:#2e2f2e;border:2px outset #d4d580;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;margin:3px 10px 7px 0;padding:5px;font-weight:bold;font-size:smaller;}
#item-delete-selected-desc{float:left;margin-right:5px;}#item-delete-selected-desc:hover{text-decoration:underline;}
.intro-approve-as-friend-desc{margin-top:10px;}
.intro-desc{margin-bottom:20px;font-weight:bold;}
@ -133,7 +133,7 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkm
#sysmsg_info{position:fixed;bottom:0;-moz-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-o-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-webkit-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-ms-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;padding:10px;background-color:#fcaf3e;border:2px solid #f8911b;border-bottom:0;padding-bottom:50px;z-index:1000;}
#sysmsg{position:fixed;bottom:0;-moz-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-o-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-webkit-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-ms-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;padding:10px;background-color:#fcaf3e;border:2px solid #f8911b;border-bottom:0;padding-bottom:50px;z-index:1000;}
#sysmsg_info br,#sysmsg br{display:block;margin:2px 0px;border-top:1px solid #eeeecc;}
#asidemain{float:left;font-size:small;margin:20px 0 20px 35px;width:25%;display:inline;}
#asidemain{float:left;font-size:small;margin:1em;width:25%;display:inline;}
#asideright,#asideleft{display:none;}
.vcard .fn{font-size:1.5em;font-weight:bold;border-bottom:1px solid #638ec4;padding-bottom:3px;}
.vcard #profile-photo-wrapper{margin:20px 0;background-color:#555753;padding:5px;width:175px;height:175px;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;-moz-box-shadow:3px 3px 10px 0 #111111;-o-box-shadow:3px 3px 10px 0 #111111;-webkit-box-shadow:3px 3px 10px 0 #111111;-ms-box-shadow:3px 3px 10px 0 #111111;box-shadow:3px 3px 10px 0 #111111;}
@ -187,7 +187,7 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkm
#jot-title-display{font-weight:bold;}
.jothidden{display:none;}
#jot-preview-content{background-color:#2e3436;color:#eeeecc;border:1px solid #2e2f2e;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;-moz-box-shadow:5px 0 10px 0px #111111;-o-box-shadow:5px 0 10px 0px #111111;-webkit-box-shadow:5px 0 10px 0px #111111;-ms-box-shadow:5px 0 10px 0px #111111;box-shadow:5px 0 10px 0px #111111;padding:3px 3px 6px 10px;}#jot-preview-content .wall-item-outside-wrapper{border:0;-o-border-radius:0px 0px 0px 0px;-webkit-border-radius:0px 0px 0px 0px;-moz-border-radius:0px 0px 0px 0px;-ms-border-radius:0px 0px 0px 0px;border-radius:0px 0px 0px 0px;-moz-box-shadow:0 0 0 0 #111111;-o-box-shadow:0 0 0 0 #111111;-webkit-box-shadow:0 0 0 0 #111111;-ms-box-shadow:0 0 0 0 #111111;box-shadow:0 0 0 0 #111111;}
#sectionmain{margin:20px;font-size:0.8em;min-width:475px;width:67%;float:left;display:inline;}
#sectionmain{margin:1em;font-size:0.8em;min-width:475px;width:69%;float:left;display:inline;}
.tabs{margin:0px;padding:0px;list-style:none;list-style-position:inside;margin:10px 0;}.tabs li{display:inline;font-size:smaller;}
.tab{border:1px solid #638ec4;padding:4px;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;}.tab:active,.tab:hover{background:#2e3436;color:#eeeecc;border:1px solid #638ec4;}
.tab a{border:0;text-decoration:none;}
@ -203,7 +203,7 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkm
[id^="tread-wrapper"],[class^="tread-wrapper"]{margin:1.2em 0 0 0;padding:0px;}
.wall-item-photo-menu{display:none;}
.wall-item-photo-menu-button{display:none;text-indent:-99999px;background:#555753 url(dark/menu-user-pin.jpg) no-repeat 75px center;position:absolute;overflow:hidden;width:90px;height:20px;top:85px;left:0;-o-border-radius:0 0 5px 5px;-webkit-border-radius:0 0 5px 5px;-moz-border-radius:0 0 5px 5px;-ms-border-radius:0 0 5px 5px;border-radius:0 0 5px 5px;}
.wall-item-info{float:left;width:8em;position:relative;}
.wall-item-info{float:left;width:7em;position:relative;}
.wall-item-photo-wrapper{width:80px;height:80px;position:relative;padding:5px;background-color:#555753;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;}
[class^="wall-item-tools"] *{}[class^="wall-item-tools"] *>*{}
.wall-item-tools{float:right;opacity:0.4;-webkit-transition:all 0.75s ease-in-out;-moz-transition:all 0.75s ease-in-out;-o-transition:all 0.75s ease-in-out;-ms-transition:all 0.75s ease-in-out;transition:all 0.75s ease-in-out;}.wall-item-tools:hover{opacity:1;-webkit-transition:all 0.75s ease-in-out;-moz-transition:all 0.75s ease-in-out;-o-transition:all 0.75s ease-in-out;-ms-transition:all 0.75s ease-in-out;transition:all 0.75s ease-in-out;}
@ -223,7 +223,8 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkm
.wall-item-arrowphoto-wrapper{position:absolute;left:35px;top:80px;z-index:10002;}
.wall-item-photo-menu{min-width:92px;font-size:0.75em;border:2px solid #555753;border-top:0px;background:#555753;position:absolute;left:-2px;top:101px;display:none;z-index:10003;-o-border-radius:0 5px 5px 5px;-webkit-border-radius:0 5px 5px 5px;-moz-border-radius:0 5px 5px 5px;-ms-border-radius:0 5px 5px 5px;border-radius:0 5px 5px 5px;}.wall-item-photo-menu li a{white-space:nowrap;display:block;padding:5px 6px;color:#eeeeee;}.wall-item-photo-menu li a:hover{color:#555753;background:#eeeeee;}
#item-delete-selected{overflow:auto;width:100%;}
#connect-services-header,#connect-services,#extra-help-header,#extra-help,#postit-header,#postit{margin:5px 0 0 0;}
#connect-services-header,#extra-help-header{margin:1.5em 0 0 0;}
#connect-services,#extra-help{margin:0px;padding:0px;list-style:none;list-style-position:inside;margin:1em 0 0 0;}#connect-services li,#extra-help li{display:inline;}
.ccollapse-wrapper{font-size:0.9em;margin-left:5em;}
.hide-comments-outer{font-size:small;}
.wall-item-outside-wrapper.comment{margin-left:5em;}.wall-item-outside-wrapper.comment .wall-item-photo{width:40px !important;height:40px !important;}

View File

@ -315,7 +315,7 @@ h6 {
[id$="-desc"] {
color: @main_colour;
background: @bg_colour;
.borders(3px, ridge, @main_colour);
.borders(2px, outset, @dk_main_colour);
.rounded_corners;
// .box_shadow(3px, 3px, 5px);
margin: 3px 10px 7px 0;
@ -872,7 +872,7 @@ nav #nav-notifications-linkmenu {
#asidemain {
float: left;
font-size: small;
margin: 20px 0 20px 35px;
margin: 1em;
width: 25%;
display: inline;
}
@ -1229,10 +1229,10 @@ nav #nav-notifications-linkmenu {
* section
*/
#sectionmain {
margin: 20px;
margin: 1em;
font-size: 0.8em;
min-width: 475px;
width: 67%;
width: 69%;
float: left;
display: inline;
}
@ -1348,7 +1348,7 @@ nav #nav-notifications-linkmenu {
}
.wall-item-info {
float: left;
width: 8em;
width: 7em;
position: relative;
}
.wall-item-photo-wrapper {
@ -1501,12 +1501,16 @@ nav #nav-notifications-linkmenu {
width: 100%;
}
#connect-services-header,
#extra-help-header {
margin: 1.5em 0 0 0;
}
#connect-services,
#extra-help-header,
#extra-help,
#postit-header,
#postit {
margin: 5px 0 0 0;
#extra-help {
.list_reset;
margin: 1em 0 0 0;
li {
display: inline;
}
}

View File

@ -3,7 +3,6 @@
/*
* Name: Dispy Dark
* Description: Dispy Dark: Dark, Spartan, Sleek, and Functional
* Version: 1.2.1
* Author: Simon <http://simon.kisikew.org/>
* Maintainer: Simon <http://simon.kisikew.org/>
* Screenshot: <a href="screenshot.jpg">Screenshot</a>
@ -13,7 +12,6 @@ $a = get_app();
$a->theme_info = array(
'family' => 'dispy',
'name' => 'dark',
'version' => '1.2.1'
);
function dispy_dark_init(&$a) {

View File

@ -24,8 +24,9 @@
@menu_bg_colour: #555753;
//* font colour, aka color: */
@lt_main_colour: #ffff99;
@lt_main_colour: lighten(@bg_colour, 10%);
@main_colour: #111;
@dk_main_colour: darken(@bg_colour, 10%);
@main_alt_colour: #999999;
// darken(@main_alt_colour, 6.5%) > #888888
// //#9eabb0
@ -55,9 +56,6 @@
@info: #364e59;
@alert: #ff0000;
@lt_main_colour: lighten(@bg_colour, 10%);
@dk_main_colour: darken(@bg_colour, 10%);
//* links */
// yes our link colour is "friendica blue" ;)
@link_colour: @friendica_blue;
@ -137,7 +135,19 @@
-webkit-text-overflow: @t;
text-overflow: @t;
}
.lin_gradient(@x1: left, @x2: right, @y1: top, @y2: bottom, @c1: @bg_colour, @c2: @dk_bg_colour) {
// w3c
background: linear-gradient(@x1 @y2, @c1, @c2);
// webkit
// -webkit-gradient(<type>, <point> [, <radius>]?, <point> [, <radius>]? [, <stop>]*)
background: -webkit-gradient(linear, @x1 @y1, @x2 @y2, from(@c1), to(@c2));
// mozilla
// -moz-linear-gradient([<point> || <angle>,]? <stop>, <stop> [, <stop>])
background: -moz-linear-gradient(@x1 @y2, @c1, @c2);
// opera
//background: -o-linear-gradient([<point> || <angle>,]? <stop>, <stop> [, <stop>]);
background: -o-linear-gradient(@x1, @c1, @c2);
}
//* pre wrap */
.wrap () {
white-space: pre-wrap;

View File

@ -316,7 +316,7 @@ h6 {
[id$="-desc"] {
color: @bg_colour;
background: @dk_bg_colour;
.borders(3px, ridge, @main_colour);
.borders(2px, outset, @main_colour);
.rounded_corners;
// .box_shadow(3px, 3px, 5px);
margin: 3px 10px 7px 0;
@ -873,7 +873,7 @@ nav #nav-notifications-linkmenu {
#asidemain {
float: left;
font-size: small;
margin: 20px 0 20px 35px;
margin: 1em;
width: 25%;
display: inline;
}
@ -1230,10 +1230,10 @@ nav #nav-notifications-linkmenu {
* section
*/
#sectionmain {
margin: 20px;
margin: 1em;
font-size: 0.8em;
min-width: 475px;
width: 67%;
width: 69%;
float: left;
display: inline;
}
@ -1349,7 +1349,7 @@ nav #nav-notifications-linkmenu {
}
.wall-item-info {
float: left;
width: 8em;
width: 7em;
position: relative;
}
.wall-item-photo-wrapper {
@ -1502,12 +1502,16 @@ nav #nav-notifications-linkmenu {
width: 100%;
}
#connect-services-header,
#extra-help-header {
margin: 1.5em 0 0 0;
}
#connect-services,
#extra-help-header,
#extra-help,
#postit-header,
#postit {
margin: 5px 0 0 0;
#extra-help {
.list_reset;
margin: 1em 0 0 0;
li {
display: inline;
}
}

View File

@ -3,7 +3,6 @@
/*
* Name: Dispy Light
* Description: Dispy Light: Light, Spartan, Sleek, and Functional
* Version: 1.2.1
* Author: Simon <http://simon.kisikew.org/>
* Maintainer: Simon <http://simon.kisikew.org/>
* Screenshot: <a href="screenshot.jpg">Screenshot</a>
@ -13,7 +12,6 @@ $a = get_app();
$a->theme_info = array(
'family' => 'dispy',
'name' => 'light',
'version' => '1.2.1'
);
function dispy_light_init(&$a) {

View File

@ -13,238 +13,94 @@
$colour = get_pconfig(local_user(), "dispy", "colour");
}
if ($line_height === false) { $line_height = $site_line_height; }
if ($line_height === false) { $line_height = "1.2"; }
if ($dispy_font_size === false) { $dispy_font_size = $site_dispy_font_size; }
if ($dispy_font_size === false) { $dispy_font_size = "12"; }
if ($colour === false) { $colour = $site_colour; }
if ($colour === false) { $colour = "light"; }
if ($line_height === false) {
$line_height = $site_line_height;
}
if ($line_height === false) {
$line_height = "1.2";
}
if ($dispy_font_size === false) {
$dispy_font_size = $site_dispy_font_size;
}
if ($dispy_font_size === false) {
$dispy_font_size = "12";
}
if ($colour === false) {
$colour = $site_colour;
}
if ($colour === false) {
$colour = "light";
}
if($colour == "light") {
if (file_exists("$THEMEPATH/light/style.css")) {
echo file_get_contents("$THEMEPATH/light/style.css");
}
if($dispy_font_size == "16") {
echo "
.wall-item-container .wall-item-content {
font-size: 16px;
}
.wall-item-photo-container .wall-item-content {
font-size: 16px;
}";
}
if($dispy_font_size == "15") {
echo "
.wall-item-container .wall-item-content {
font-size: 15px;
}
.wall-item-photo-container .wall-item-content {
font-size: 15px;
}";
}
if($dispy_font_size == "14") {
echo "
.wall-item-container .wall-item-content {
font-size: 14px;
}
.wall-item-photo-container .wall-item-content {
font-size: 14px;
}";
}
if($dispy_font_size == "13.5") {
echo "
.wall-item-container .wall-item-content {
font-size: 13.5px;
}
.wall-item-photo-container .wall-item-content {
font-size: 13.5px;
}";
}
if($dispy_font_size == "13") {
echo "
.wall-item-container .wall-item-content {
font-size: 13px;
}
.wall-item-photo-container .wall-item-content {
font-size: 13px;
}";
}
if($dispy_font_size == "12.5") {
echo "
.wall-item-container .wall-item-content {
font-size: 12.5px;
}
.wall-item-photo-container .wall-item-content {
font-size: 12.5px;
}";
}
if($dispy_font_size == "12") {
echo "
.wall-item-container .wall-item-content {
font-size: 12px;
}
.wall-item-photo-container .wall-item-content {
font-size: 12px;
}";
}
if($line_height == "1.5") {
echo "
.wall-item-container .wall-item-content {
line-height: 1.5;
}
.wall-item-photo-container .wall-item-content {
line-height: 1.5;
}";
}
if($line_height == "1.4") {
echo "
.wall-item-container .wall-item-content {
line-height: 1.4;
}
.wall-item-photo-container .wall-item-content {
line-height: 1.4;
}";
}
if($line_height == "1.3") {
echo "
.wall-item-container .wall-item-content {
line-height: 1.3;
}
.wall-item-photo-container .wall-item-content {
line-height: 1.3;
}";
}
if($line_height == "1.2") {
echo "
.wall-item-container .wall-item-content {
line-height: 1.2;
}
.wall-item-photo-container .wall-item-content {
line-height: 1.2;
}";
}
if($line_height == "1.1") {
echo "
.wall-item-container .wall-item-content {
line-height: 1.1;
}
.wall-item-photo-container .wall-item-content {
line-height: 1.1;
}";
}
}
if($colour == "dark") {
if (file_exists("$THEMEPATH/dark/style.css")) {
echo file_get_contents("$THEMEPATH/dark/style.css");
}
if($dispy_font_size == "16") {
echo "
.wall-item-container .wall-item-content {
font-size: 16px;
}
.wall-item-photo-container .wall-item-content {
font-size: 16px;
}";
}
if($dispy_font_size == "15") {
echo "
.wall-item-container .wall-item-content {
font-size: 15px;
}
.wall-item-photo-container .wall-item-content {
font-size: 15px;
}";
}
if($dispy_font_size == "14") {
echo "
.wall-item-container .wall-item-content {
font-size: 14px;
}
.wall-item-photo-container .wall-item-content {
font-size: 14px;
}";
}
if($dispy_font_size == "13.5") {
echo "
.wall-item-container .wall-item-content {
font-size: 13.5px;
}
.wall-item-photo-container .wall-item-content {
font-size: 13.5px;
}";
}
if($dispy_font_size == "13") {
echo "
.wall-item-container .wall-item-content {
font-size: 13px;
}
.wall-item-photo-container .wall-item-content {
font-size: 13px;
}";
}
if($dispy_font_size == "12.5") {
echo "
.wall-item-container .wall-item-content {
font-size: 12.5px;
}
.wall-item-photo-container .wall-item-content {
font-size: 12.5px;
}";
}
if($dispy_font_size == "12") {
echo "
.wall-item-container .wall-item-content {
font-size: 12px;
}
.wall-item-photo-container .wall-item-content {
font-size: 12px;
}";
}
if($line_height == "1.5") {
echo "
.wall-item-container .wall-item-content {
line-height: 1.5;
}
.wall-item-photo-container .wall-item-content {
line-height: 1.5;
}";
}
if($line_height == "1.4"){
echo "
.wall-item-container .wall-item-content {
line-height: 1.4;
}
.wall-item-photo-container .wall-item-content {
line-height: 1.4;
}";
}
if($line_height == "1.3") {
echo "
.wall-item-container .wall-item-content {
line-height: 1.3;
}
.wall-item-photo-container .wall-item-content {
line-height: 1.3;
}";
}
if($line_height == "1.2") {
echo "
.wall-item-container .wall-item-content {
line-height: 1.2;
}
.wall-item-photo-container .wall-item-content {
line-height: 1.2;
}";
}
if($line_height == "1.1") {
echo "
.wall-item-container .wall-item-content {
line-height: 1.1;
}
.wall-item-photo-container .wall-item-content {
line-height: 1.1;
}";
}
}
}
if($dispy_font_size == "16") {
echo ".wall-item-content {
font-size: 16px;
}";
}
if($dispy_font_size == "15") {
echo ".wall-item-content {
font-size: 15px;
}";
}
if($dispy_font_size == "14") {
echo ".wall-item-content {
font-size: 14px;
}";
}
if($dispy_font_size == "13.5") {
echo ".wall-item-content {
font-size: 13.5px;
}";
}
if($dispy_font_size == "13") {
echo ".wall-item-content {
font-size: 13px;
}";
}
if($dispy_font_size == "12.5") {
echo ".wall-item-content {
font-size: 12.5px;
}";
}
if($dispy_font_size == "12") {
echo ".wall-item-content {
font-size: 12px;
}";
}
if($line_height == "1.5") {
echo ".wall-item-content {
line-height: 1.5;
}";
}
if($line_height == "1.4") {
echo ".wall-item-content {
line-height: 1.4;
}";
}
if($line_height == "1.3") {
echo ".wall-item-content {
line-height: 1.3;
}";
}
if($line_height == "1.2") {
echo ".wall-item-content {
line-height: 1.2;
}";
}
if($line_height == "1.1") {
echo ".wall-item-content {
line-height: 1.1;
}";
}

View File

@ -20,7 +20,7 @@
$a = get_app();
$a->theme_info = array(
'family' => 'dispy',
'version' => '1.2'
'version' => '1.2.2'
);
function dispy_init(&$a) {

View File

@ -338,6 +338,15 @@ div.wall-item-content-wrapper.shiny {
font-weight: bold;
}
.settings-widget .selected {
padding: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
border: 1px solid #CCCCCC;
background: #F8F8F8;
font-weight: bold;
}
.fakelink:hover {
color: #3465a4;
text-decoration: underline;
@ -809,8 +818,15 @@ input#dfrn-url {
clear: both;
}
.settings-widget ul {
list-style-type: none;
padding: 0px;
}
.settings-widget li {
margin-left: 24px;
margin-bottom: 8px;
}
#gender-select, #marital-select, #sexual-select {

View File

@ -43,7 +43,7 @@ nav #site-location {
#profile-jot-text_parent, .mceLayout {
border-radius: 3px;
-moz-border-radius: 3px;
box-shadow: 3px 3px 10px 0 #000000;
box-shadow: 4px 4px 3px 0 #444444;
}
#profile-jot-text:hover {
@ -66,24 +66,34 @@ nav #site-location {
.wall-item-photo, .photo, .contact-block-img, .my-comment-photo {
border-radius: 3px;
-moz-border-radius: 3px;
box-shadow: 3px 3px 10px 0 #000000;
box-shadow: 4px 4px 3px 0 #444444;
}
#sidebar-page-list img {
border-radius: 3px;
-moz-border-radius: 3px;
box-shadow: 3px 3px 10px -2px #000000;
box-shadow: 4px 4px 3px 0 #444444;
}
.contact-entry-photo img, .profile-match-photo img, #photo-photo img, .directory-photo-img, .photo-album-photo, .photo-top-photo, .fc, .profile-jot-text, .group-selected, .nets-selected, .fileas-selected, #profile-jot-submit, .categories-selected {
border-radius: 3px;
-moz-border-radius: 3px;
box-shadow: 3px 3px 10px 0 #000000;
box-shadow: 4px 4px 3px 0 #444444;
}
.settings-widget .selected {
border-radius: 3px;
-moz-border-radius: 3px;
box-shadow: 4px 4px 3px 0 #444444;
}
.photo {
border: 1px solid #AAAAAA;
}
.photo-top-photo, .photo-album-photo {
padding: 10px;
max-width: 300px;
border: 1px solid #888888;
}
.rotleft1 {