1
1
Fork 0

Merge commit 'upstream/master'

This commit is contained in:
Michael Vogel 2012-04-14 13:15:25 +02:00
commit 4e220ec391
98 changed files with 2482 additions and 929 deletions

View file

@ -9,7 +9,7 @@ require_once('include/nav.php');
require_once('include/cache.php');
define ( 'FRIENDICA_PLATFORM', 'Friendica');
define ( 'FRIENDICA_VERSION', '2.3.1309' );
define ( 'FRIENDICA_VERSION', '2.3.1311' );
define ( 'DFRN_PROTOCOL_VERSION', '2.23' );
define ( 'DB_UPDATE_VERSION', 1138 );
@ -206,6 +206,7 @@ define ( 'ACTIVITY_OBJ_P_PHOTO', NAMESPACE_ACTIVITY_SCHEMA . 'profile-photo' );
define ( 'ACTIVITY_OBJ_ALBUM', NAMESPACE_ACTIVITY_SCHEMA . 'photo-album' );
define ( 'ACTIVITY_OBJ_EVENT', NAMESPACE_ACTIVITY_SCHEMA . 'event' );
define ( 'ACTIVITY_OBJ_TAGTERM', NAMESPACE_DFRN . '/tagterm' );
define ( 'ACTIVITY_OBJ_PROFILE', NAMESPACE_DFRN . '/profile' );
/**
* item weight for query ordering
@ -1493,11 +1494,13 @@ function get_my_url() {
return false;
}
function zrl($s) {
function zrl($s,$force = false) {
if(! strlen($s))
return $s;
if(! strpos($s,'/profile/'))
if((! strpos($s,'/profile/')) && (! $force))
return $s;
if($force && substr($s,-1,1) !== '/')
$s = $s . '/';
$achar = strpos($s,'?') ? '&' : '?';
$mine = get_my_url();
if($mine and ! link_compare($mine,$s))

View file

@ -176,10 +176,24 @@ function random_profile() {
}
function contacts_not_grouped($uid) {
$r = q("select * from contact where uid = %d and self = 0 and id not in (select distinct(`contact-id`) from group_member where uid = %d) ",
function contacts_not_grouped($uid,$start = 0,$count = 0) {
if(! $count) {
$r = q("select count(*) as total from contact where uid = %d and self = 0 and id not in (select distinct(`contact-id`) from group_member where uid = %d) ",
intval($uid),
intval($uid)
);
return $r;
}
$r = q("select * from contact where uid = %d and self = 0 and id not in (select distinct(`contact-id`) from group_member where uid = %d) and blocked = 0 and pending = 0 limit %d, %d",
intval($uid),
intval($uid)
intval($uid),
intval($start),
intval($count)
);
return $r;

View file

@ -212,6 +212,7 @@ function group_side($every="contacts",$each="group",$edit = false, $group_id = 0
'$title' => t('Groups'),
'$edittext' => t('Edit group'),
'$createtext' => t('Create a new group'),
'$ungrouped' => (($every === 'contacts') ? t('Contacts not in any group') : ''),
'$groups' => $groups,
'$add' => t('add'),
));

View file

@ -587,8 +587,9 @@ function fetch_xrd_links($url) {
if(! function_exists('validate_url')) {
function validate_url(&$url) {
// no naked subdomains
if(strpos($url,'.') === false)
// no naked subdomains (allow localhost for tests)
if(strpos($url,'.') === false && strpos($url,'/localhost/') === false)
return false;
if(substr($url,0,4) != 'http')
$url = 'http://' . $url;

View file

@ -30,7 +30,7 @@ function sexpref_selector($current="",$suffix="") {
function marital_selector($current="",$suffix="") {
$o = '';
$select = array('', t('Single'), t('Lonely'), t('Available'), t('Unavailable'), t('Dating'), t('Unfaithful'), t('Sex Addict'), t('Friends'), t('Friends/Benefits'), t('Casual'), t('Engaged'), t('Married'), t('Partners'), t('Cohabiting'), t('Happy'), t('Not Looking'), t('Swinger'), t('Betrayed'), t('Separated'), t('Unstable'), t('Divorced'), t('Widowed'), t('Uncertain'), t('Complicated'), t('Don\'t care'), t('Ask me') );
$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') );
$o .= "<select name=\"marital\" id=\"marital-select\" size=\"1\" >";
foreach($select as $selection) {

View file

@ -1068,10 +1068,12 @@ function unamp($s) {
if(! function_exists('lang_selector')) {
function lang_selector() {
global $lang;
$o = '<div id="lang-select-icon" class="icon language" title="' . t('Select an alternate language') . '" onclick="openClose(\'language-selector\');" ></div>';
$o .= '<div id="language-selector" style="display: none;" >';
$o .= '<form action="#" method="post" ><select name="system_language" onchange="this.form.submit();" >';
$langs = glob('view/*/strings.php');
$lang_options = array();
$selected = "";
if(is_array($langs) && count($langs)) {
$langs[] = '';
if(! in_array('view/en/strings.php',$langs))
@ -1079,17 +1081,22 @@ function lang_selector() {
asort($langs);
foreach($langs as $l) {
if($l == '') {
$default_selected = ((! x($_SESSION,'language')) ? ' selected="selected" ' : '');
$o .= '<option value="" ' . $default_selected . '>' . t('default') . '</option>';
$lang_options[""] = t('default');
continue;
}
$ll = substr($l,5);
$ll = substr($ll,0,strrpos($ll,'/'));
$selected = (($ll === $lang && (x($_SESSION, 'language'))) ? ' selected="selected" ' : '');
$o .= '<option value="' . $ll . '"' . $selected . '>' . $ll . '</option>';
$selected = (($ll === $lang && (x($_SESSION, 'language'))) ? $ll : $selected);
$lang_options[$ll]=$ll;
}
}
$o .= '</select></form></div>';
$tpl = get_markup_template("lang_selector.tpl");
$o = replace_macros($tpl, array(
'$title' => t('Select an alternate language'),
'$langs' => array($lang_options, $selected),
));
return $o;
}}

View file

@ -40,6 +40,20 @@ function admin_post(&$a){
goaway($a->get_baseurl(true) . '/admin/plugins/' . $a->argv[2] );
return; // NOTREACHED
break;
case 'themes':
$theme = $a->argv[2];
if (is_file("view/theme/$theme/config.php")){
require_once("view/theme/$theme/config.php");
if (function_exists("theme_admin_post")){
theme_admin_post($a);
}
}
info(t('Theme settings updated.'));
if(is_ajax()) return;
goaway($a->get_baseurl(true) . '/admin/themes/' . $theme );
return;
break;
case 'logs':
admin_page_logs_post($a);
break;
@ -129,7 +143,13 @@ function admin_content(&$a) {
} else {
$o = admin_page_summary($a);
}
return $o;
if(is_ajax()) {
echo $o;
killme();
} else {
return $o;
}
}
@ -362,7 +382,7 @@ function admin_page_site(&$a) {
'$sitename' => array('sitename', t("Site name"), htmlentities($a->config['sitename'], ENT_QUOTES), ""),
'$banner' => array('banner', t("Banner/Logo"), $banner, ""),
'$language' => array('language', t("System language"), get_config('system','language'), "", $lang_choices),
'$theme' => array('theme', t("System theme"), get_config('system','theme'), t("Default system theme - may be over-ridden by user profiles"), $theme_choices),
'$theme' => array('theme', t("System theme"), get_config('system','theme'), t("Default system theme - may be over-ridden by user profiles - <a href='#' id='cnftheme'>change theme settings</a>"), $theme_choices),
'$ssl_policy' => array('ssl_policy', t("SSL link policy"), (string) intval(get_config('system','ssl_policy')), t("Determines whether generated links should be forced to use SSL"), $ssl_choices),
'$maximagesize' => array('maximagesize', t("Maximum image size"), get_config('system','maximagesize'), t("Maximum size in bytes of uploaded images. Default is 0, which means no limits.")),
@ -768,14 +788,22 @@ function admin_page_themes(&$a){
}
$readme=Null;
if (is_file("view/$theme/README.md")){
$readme = file_get_contents("view/$theme/README.md");
if (is_file("view/theme/$theme/README.md")){
$readme = file_get_contents("view/theme/$theme/README.md");
$readme = Markdown($readme);
} else if (is_file("view/$theme/README")){
$readme = "<pre>". file_get_contents("view/$theme/README") ."</pre>";
} else if (is_file("view/theme/$theme/README")){
$readme = "<pre>". file_get_contents("view/theme/$theme/README") ."</pre>";
}
$admin_form="";
if (is_file("view/theme/$theme/config.php")){
require_once("view/theme/$theme/config.php");
if(function_exists("theme_admin")){
$admin_form = theme_admin($a);
}
}
$screenshot = array( get_theme_screenshot($theme), t('Screenshot'));
if(! stristr($screenshot[0],$theme))
@ -805,7 +833,7 @@ function admin_page_themes(&$a){
/**
* List plugins
* List themes
*/
$xthemes = array();

View file

@ -44,7 +44,7 @@ function directory_content(&$a) {
$gdirpath = dirname(get_config('system','directory_submit_url'));
if(strlen($gdirpath)) {
$globaldir = '<ul><li><div id="global-directory-link"><a href="'
. $gdirpath . '">' . t('Global Directory') . '</a></div></li></ul>';
. zrl($gdirpath,true) . '">' . t('Global Directory') . '</a></div></li></ul>';
}
$admin = '';

65
mod/nogroup.php Normal file
View file

@ -0,0 +1,65 @@
<?php
require_once('include/Contact.php');
require_once('include/socgraph.php');
require_once('include/contact_selectors.php');
function nogroup_init(&$a) {
if(! local_user())
return;
require_once('include/group.php');
require_once('include/contact_widgets.php');
if(! x($a->page,'aside'))
$a->page['aside'] = '';
$a->page['aside'] .= group_side('contacts','group',false,0,$contact_id);
}
function nogroup_content(&$a) {
if(! local_user()) {
notice( t('Permission denied.') . EOL);
return '';
}
require_once('include/Contact.php');
$r = contacts_not_grouped(local_user());
if(count($r)) {
$a->set_pager_total($r[0]['total']);
}
$r = contacts_not_grouped(local_user(),$a->pager['start'],$a->pager['itemspage']);
if(count($r)) {
foreach($r as $rr) {
$contacts[] = array(
'img_hover' => sprintf( t('Visit %s\'s profile [%s]'),$rr['name'],$rr['url']),
'edit_hover' => t('Edit contact'),
'photo_menu' => contact_photo_menu($rr),
'id' => $rr['id'],
'alt_text' => $alt_text,
'dir_icon' => $dir_icon,
'thumb' => $rr['thumb'],
'name' => $rr['name'],
'username' => $rr['name'],
'sparkle' => $sparkle,
'itemurl' => $rr['url'],
'url' => $url,
'network' => network_to_name($rr['network']),
);
}
}
$tpl = get_markup_template("nogroup-template.tpl");
$o .= replace_macros($tpl,array(
'$header' => t('Contacts who are not members of a group'),
'$contacts' => $contacts,
'$paginate' => paginate($a),
));
return $o;
}

View file

@ -151,7 +151,7 @@ function notifications_content(&$a) {
'$fullname' => $rr['fname'],
'$url' => zrl($rr['furl']),
'$hidden' => array('hidden', t('Hide this contact from others'), ($rr['hidden'] == 1), ''),
'$activity' => array('activity', t('Post a new friend activity'), 1, t('if applicable')),
'$activity' => array('activity', t('Post a new friend activity'), (intval(get_pconfig(local_user(),'system','post_newfriend')) ? '1' : 0), t('if applicable')),
'$knowyou' => $knowyou,
'$approve' => t('Approve'),
@ -198,7 +198,7 @@ function notifications_content(&$a) {
'$photo' => ((x($rr,'photo')) ? $rr['photo'] : "images/person-175.jpg"),
'$fullname' => $rr['name'],
'$hidden' => array('hidden', t('Hide this contact from others'), ($rr['hidden'] == 1), ''),
'$activity' => array('activity', t('Post a new friend activity'), 1, t('if applicable')),
'$activity' => array('activity', t('Post a new friend activity'), (intval(get_pconfig(local_user(),'system','post_newfriend')) ? '1' : 0), t('if applicable')),
'$url' => zrl($rr['url']),
'$knowyou' => $knowyou,
'$approve' => t('Approve'),

View file

@ -51,6 +51,7 @@ function profiles_post(&$a) {
if($orig[0]['name'] != $name)
$namechanged = true;
$pdesc = notags(trim($_POST['pdesc']));
$gender = notags(trim($_POST['gender']));
$address = notags(trim($_POST['address']));
@ -61,15 +62,16 @@ function profiles_post(&$a) {
$pub_keywords = notags(trim($_POST['pub_keywords']));
$prv_keywords = notags(trim($_POST['prv_keywords']));
$marital = notags(trim($_POST['marital']));
if($marital != $orig[0]['marital'])
$maritalchanged = true;
$with = ((x($_POST,'with')) ? notags(trim($_POST['with'])) : '');
// linkify the relationship target if applicable
$withchanged = false;
if(strlen($with)) {
if($with != strip_tags($orig[0]['with'])) {
$withchanged = true;
$prf = '';
$lookup = $with;
if(strpos($lookup,'@') === 0)
@ -134,6 +136,27 @@ function profiles_post(&$a) {
$hide_friends = (($_POST['hide-friends'] == 1) ? 1: 0);
$changes = array();
if($is_default) {
if($marital != $orig[0]['marital']) $changes[] = '&hearts; ' . t('Marital Status');
if($withchanged) $changes[] = '&hearts; ' . t('Romantic Partner');
if($work != $orig[0]['work']) $changes[] = t('Work/Employment');
if($religion != $orig[0]['religion']) $changes[] = t('Religion');
if($politic != $orig[0]['politic']) $changes[] = t('Political Views');
if($gender != $orig[0]['gender']) $changes[] = t('Gender');
if($sexual != $orig[0]['sexual']) $changes[] = t('Sexual Preference');
if($homepage != $orig[0]['homepage']) $changes[] = t('Homepage');
if($interest != $orig[0]['interest']) $changes[] = t('Interests');
if($address != $orig[0]['address'] || $locality != $orig[0]['locality'] || $region != $orig[0]['region']
|| $country_name != $orig[0]['country_name'])
$changes[] = t('Location');
profile_activity($changes);
}
$r = q("UPDATE `profile`
SET `profile-name` = '%s',
`name` = '%s',
@ -195,7 +218,7 @@ function profiles_post(&$a) {
dbesc($education),
intval($hide_friends),
intval($a->argv[1]),
intval($_SESSION['uid'])
intval(local_user())
);
if($r)
@ -222,6 +245,79 @@ function profiles_post(&$a) {
}
function profile_activity($changed) {
$a = get_app();
if(! local_user() || ! is_array($changed) || ! count($changed))
return;
if($a->user['hidewall'] || get_config('system','block_public'))
return;
if(! get_pconfig(local_user(),'system','post_profilechange'))
return;
require_once('include/items.php');
$self = q("SELECT * FROM `contact` WHERE `self` = 1 AND `uid` = %d LIMIT 1",
intval(local_user())
);
if(! count($self))
return;
$arr = array();
$arr['uri'] = $arr['parent-uri'] = item_new_uri($a->get_hostname(), local_user());
$arr['uid'] = local_user();
$arr['contact-id'] = $self[0]['id'];
$arr['wall'] = 1;
$arr['type'] = 'wall';
$arr['gravity'] = 0;
$arr['origin'] = 1;
$arr['author-name'] = $arr['owner-name'] = $self[0]['name'];
$arr['author-link'] = $arr['owner-link'] = $self[0]['url'];
$arr['author-avatar'] = $arr['owner-avatar'] = $self[0]['thumb'];
$arr['verb'] = ACTIVITY_UPDATE;
$arr['object-type'] = ACTIVITY_OBJ_PROFILE;
$A = '[url=' . $self[0]['url'] . ']' . $self[0]['name'] . '[/url]';
$changes = '';
$t = count($changed);
$z = 0;
foreach($changed as $ch) {
if(strlen($changes)) {
if ($z == ($t - 1))
$changes .= ' and ';
else
$changes .= ', ';
}
$z ++;
$changes .= $ch;
}
$prof = '[url=' . $self[0]['url'] . '?tab=profile' . ']' . t('public profile') . '[/url]';
$arr['body'] = sprintf( t('%1$s has an updated %2$s, changing %3$s.'), $A, $prof, $changes);
$arr['object'] = '<object><type>' . ACTIVITY_OBJ_PROFILE . '</type><title>' . $self[0]['name'] . '</title>'
. '<id>' . $self[0]['url'] . '/' . $self[0]['name'] . '</id>';
$arr['object'] .= '<link>' . xmlify('<link rel="alternate" type="text/html" href="' . $self[0]['url'] . '?tab=profile' . '" />' . "\n");
$arr['object'] .= xmlify('<link rel="photo" type="image/jpeg" href="' . $self[0]['thumb'] . '" />' . "\n");
$arr['object'] .= '</link></object>' . "\n";
$arr['last-child'] = 1;
$arr['allow_cid'] = $a->user['allow_cid'];
$arr['allow_gid'] = $a->user['allow_gid'];
$arr['deny_cid'] = $a->user['deny_cid'];
$arr['deny_gid'] = $a->user['deny_gid'];
$i = item_store($arr);
if($i)
proc_run('php',"include/notifier.php","activity","$i");
}
function profiles_content(&$a) {

View file

@ -346,6 +346,8 @@ function settings_post(&$a) {
$suggestme = ((x($_POST,'suggestme')) ? intval($_POST['suggestme']) : 0);
$hide_friends = (($_POST['hide-friends'] == 1) ? 1: 0);
$hidewall = (($_POST['hidewall'] == 1) ? 1: 0);
$post_newfriend = (($_POST['post_newfriend'] == 1) ? 1: 0);
$post_profilechange = (($_POST['post_profilechange'] == 1) ? 1: 0);
$notify = 0;
@ -428,6 +430,8 @@ function settings_post(&$a) {
set_pconfig(local_user(),'expire','photos', $expire_photos);
set_pconfig(local_user(),'system','suggestme', $suggestme);
set_pconfig(local_user(),'system','post_newfriend', $post_newfriend);
set_pconfig(local_user(),'system','post_profilechange', $post_profilechange);
$r = q("UPDATE `user` SET `username` = '%s', `email` = '%s', `openid` = '%s', `timezone` = '%s', `allow_cid` = '%s', `allow_gid` = '%s', `deny_cid` = '%s', `deny_gid` = '%s', `notify-flags` = %d, `page-flags` = %d, `default-location` = '%s', `allow_location` = %d, `maxreq` = %d, `expire` = %d, `openidserver` = '%s', `blockwall` = %d, `hidewall` = %d, `blocktags` = %d, `unkmail` = %d, `cntunkmail` = %d WHERE `uid` = %d LIMIT 1",
@ -790,6 +794,11 @@ function settings_content(&$a) {
$suggestme = get_pconfig(local_user(), 'system','suggestme');
$suggestme = (($suggestme===false)? '0': $suggestme); // default if not set: 0
$post_newfriend = get_pconfig(local_user(), 'system','post_newfriend');
$post_newfriend = (($post_newfriend===false)? '0': $post_newfriend); // default if not set: 0
$post_profilechange = get_pconfig(local_user(), 'system','post_profilechange');
$post_profilechange = (($post_profilechange===false)? '0': $post_profilechange); // default if not set: 0
if(! strlen($a->user['timezone']))
@ -878,6 +887,8 @@ function settings_content(&$a) {
));
$invisible = (((! $profile['publish']) && (! $profile['net-publish']))
? true : false);
@ -958,6 +969,9 @@ function settings_content(&$a) {
'$h_not' => t('Notification Settings'),
'$activity_options' => t('By default post a status message when:'),
'$post_newfriend' => array('post_newfriend', t('accepting a friend request'), $post_newfriend, ''),
'$post_profilechange' => array('post_profilechange', t('making an <em>interesting</em> profile change'), $post_profilechange, ''),
'$lbl_not' => t('Send a notification email when:'),
'$notify1' => array('notify1', t('You receive an introduction'), ($notify & NOTIFY_INTRO), NOTIFY_INTRO, ''),
'$notify2' => array('notify2', t('Your introductions are confirmed'), ($notify & NOTIFY_CONFIRM), NOTIFY_CONFIRM, ''),

File diff suppressed because it is too large Load diff

View file

@ -17,7 +17,7 @@
</p>
{{ if $screenshot }}
<a href="$screenshot.0" ><img src="$screenshot.0" width="320" height="240" alt="$screenshot.1" /></a>
<a href="$screenshot.0" class='screenshot'><img src="$screenshot.0" alt="$screenshot.1" /></a>
{{ endif }}
{{ if $admin_form }}

View file

@ -1,3 +1,39 @@
<script>
$(function(){
$("#cnftheme").fancybox({
width: 800,
autoDimensions: false,
onStart: function(){
var theme = $("#id_theme :selected").val();
$("#cnftheme").attr('href',"$baseurl/admin/themes/"+theme);
},
onComplete: function(){
$("div#fancybox-content form").submit(function(e){
var url = $(this).attr('action');
// can't get .serialize() to work...
var data={};
$(this).find("input").each(function(){
data[$(this).attr('name')] = $(this).val();
});
$(this).find("select").each(function(){
data[$(this).attr('name')] = $(this).children(":selected").val();
});
console.log(":)", url, data);
$.post(url, data, function(data) {
if(timer) clearTimeout(timer);
NavUpdate();
$.fancybox.close();
})
return false;
});
}
});
});
</script>
<div id='adminpage'>
<h1>$title - $page</h1>

View file

@ -1,6 +1,6 @@
<div class='field checkbox'>
<label for='id_$field.0'>$field.1</label>
<input type="checkbox" name='$field.0' id='id_$field.0' value="1" {{ if $field.2 }}checked="true"{{ endif }}>
<input type="checkbox" name='$field.0' id='id_$field.0' value="1" {{ if $field.2 }}checked="checked"{{ endif }}>
<span class='field_help'>$field.3</span>
</div>

View file

@ -1,4 +1,4 @@
<script>$(function(){ previewTheme($("#id_$field.0")[0]); });</script>
<div class='field select'>
<label for='id_$field.0'>$field.1</label>
<select name='$field.0' id='id_$field.0' onchange="previewTheme(this);" >

View file

@ -23,6 +23,11 @@
<div id="sidebar-new-group">
<a href="group/new">$createtext</a>
</div>
{{ if $ungrouped }}
<div id="sidebar-ungrouped">
<a href="nogroup">$ungrouped</a>
</div>
{{ endif }}
</div>

10
view/lang_selector.tpl Normal file
View file

@ -0,0 +1,10 @@
<div id="lang-select-icon" class="icon s22 language" title="$title" onclick="openClose('language-selector');" >lang</div>
<div id="language-selector" style="display: none;" >
<form action="#" method="post" >
<select name="system_language" onchange="this.form.submit();" >
{{ for $langs.0 as $v=>$l }}
<option value="$v" {{if $v==$langs.1}}selected="selected"{{endif}}>$l</option>
{{ endfor }}
</select>
</form>
</div>

12
view/nogroup-template.tpl Normal file
View file

@ -0,0 +1,12 @@
<h1>$header</h1>
{{ for $contacts as $contact }}
{{ inc contact_template.tpl }}{{ endinc }}
{{ endfor }}
<div id="contact-edit-end"></div>
$paginate

View file

@ -99,7 +99,13 @@ $unkmail
<h3 class="settings-heading">$h_not</h3>
<div id="settings-notify-desc">$lbl_not </div>
<strong>$activity_options</strong>
{{inc field_checkbox.tpl with $field=$post_newfriend }}{{endinc}}
{{inc field_checkbox.tpl with $field=$post_profilechange }}{{endinc}}
<div id="settings-notify-desc"><strong>$lbl_not </strong></div>
<div class="group">
{{inc field_intcheckbox.tpl with $field=$notify1 }}{{endinc}}

View file

@ -12,13 +12,13 @@
</div>
<div class="comment-edit-photo-end"></div>
<textarea id="comment-edit-text-$id" class="comment-edit-text-empty" name="body" onFocus="commentOpen(this,$id);" onBlur="commentClose(this,$id);" >$comment</textarea>
<a class="icon bb-video" onclick="insertFormatting('video',$id);">video</a>
<a class="icon bb-image" onclick="insertFormatting('img',$id);">img</a>
<a class="icon bb-url" onclick="insertFormatting('url',$id);">url</a>
<a class="icon underline" onclick="insertFormatting('u',$id);">u</a>
<a class="icon italic" onclick="insertFormatting('i',$id);">i</a>
<a class="icon bold" onclick="insertFormatting('b',$id);">b</a>
<a class="icon quote" onclick="insertFormatting('quote',$id);">quote</a>
<a class="icon bb-image" onclick="insertFormatting('$comment','img',$id);">img</a>
<a class="icon bb-url" onclick="insertFormatting('$comment','url',$id);">url</a>
<a class="icon bb-video" onclick="insertFormatting('$comment','video',$id);">video</a>
<a class="icon underline" onclick="insertFormatting('$comment','u',$id);">u</a>
<a class="icon italic" onclick="insertFormatting('$comment','i',$id);">i</a>
<a class="icon bold" onclick="insertFormatting('$comment','b',$id);">b</a>
<a class="icon quote" onclick="insertFormatting('$comment','quote',$id);">quote</a>
{{ if $qcomment }}
<select id="qcomment-select-$id" name="qcomment-$id" class="qcomment" onchange="qCommentInsert(this,$id);" >
<option value=""></option>

View file

@ -0,0 +1,71 @@
<?php
/**
* Theme settings
*/
function theme_content(&$a){
if(!local_user())
return;
$font_size = get_pconfig(local_user(), 'diabook-aerith', 'font_size' );
$line_height = get_pconfig(local_user(), 'diabook-aerith', 'line_height' );
return diabook_form($a,$font_size, $line_height);
}
function theme_post(&$a){
if(! local_user())
return;
if (isset($_POST['diabook-aerith-settings-submit'])){
set_pconfig(local_user(), 'diabook-aerith', 'font_size', $_POST['diabook-aerith_font_size']);
set_pconfig(local_user(), 'diabook-aerith', 'line_height', $_POST['diabook-aerith_line_height']);
}
}
function theme_admin(&$a){
$font_size = get_config('diabook-aerith', 'font_size' );
$line_height = get_config('diabook-aerith', 'line_height' );
return diabook_form($a,$font_size, $line_height);
}
function theme_admin_post(&$a){
if (isset($_POST['diabook-aerith-settings-submit'])){
set_config('diabook-aerith', 'font_size', $_POST['diabook-aerith_font_size']);
set_config('diabook-aerith', 'line_height', $_POST['diabook-aerith_line_height']);
}
}
function diabook_form(&$a, $font_size, $line_height){
$line_heights = array(
"1.4"=>"1.4",
"1.3"=>"1.3",
"1.2"=>"1.2",
"1.1"=>"1.1",
);
$font_sizes = array(
'14'=>'14',
'13.5'=>'13.5',
'13'=>'13',
'12.5'=>'12.5',
'12'=>'12',
);
$t = file_get_contents( dirname(__file__). "/theme_settings.tpl" );
$o .= replace_macros($t, array(
'$submit' => t('Submit'),
'$baseurl' => $a->get_baseurl(),
'$title' => t("Theme settings"),
'$font_size' => array('diabook-aerith_font_size', t('Set font-size for posts and comments'), $font_size, '', $font_sizes),
'$line_height' => array('diabook-aerith_line_height', t('Set line-height for posts and comments'), $line_height, '', $line_heights),
));
return $o;
}

View file

@ -1,18 +1,18 @@
<div id="group-sidebar" class="widget">
<div class="title tool">
<h3 class="label">$title</h3>
<a href="group/new" title="$createtext" class="action"><span class="icon text s16 add"></span></a>
<div id="profile_side" >
<div class="">
<h3 style="margin-left: 2px;">$title<a href="group/new" title="$createtext" class="icon text_add"></a></h3>
</div>
<div id="sidebar-group-list">
<ul>
<ul class="menu-profile-side">
{{ for $groups as $group }}
<li class="tool {{ if $group.selected }}selected{{ endif }}">
<a href="$group.href" class="label">
<li class="menu-profile-list">
<span class="menu-profile-icon {{ if $group.selected }}group_selected{{else}}group_unselected{{ endif }}"></span>
<a href="$group.href" class="menu-profile-list-item">
$group.text
</a>
{{ if $group.edit }}
<a href="$group.edit.href" class="action"><span class="icon text s10 edit"></span></a>
<a href="$group.edit.href" class="action"><span class="icon text_edit" ></span></a>
{{ endif }}
{{ if $group.cid }}
<input type="checkbox"

BIN
view/theme/diabook-aerith/icons/selected.png Executable file → Normal file

Binary file not shown.

Before

Width:  |  Height:  |  Size: 211 B

After

Width:  |  Height:  |  Size: 293 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 B

View file

@ -3,7 +3,7 @@
<div id="nets-desc">$desc</div>
<ul class="nets-ul">
<li><a style="text-decoration: none;" class="tool" href="$base" class="nets-link{{ if $sel_all }} nets-selected{{ endif }} nets-all">$all</a></li>
<li class="tool"><a style="text-decoration: none;" href="$base" class="nets-link{{ if $sel_all }} nets-selected{{ endif }} nets-all">$all</a></li>
{{ for $nets as $net }}
<li class="tool"><a href="$base?nets=$net.ref" class="nets-link{{ if $net.selected }} nets-selected{{ endif }}">$net.name</a></li>
{{ endfor }}

View file

@ -1380,10 +1380,10 @@ transition: all 0.2s ease-in-out;
}
.wall-item-container .wall-item-content {
font-size: 12.5px;
max-width: 420px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}

View file

@ -1358,10 +1358,10 @@ transition: all 0.2s ease-in-out;
}
.wall-item-container .wall-item-content {
font-size: 12.5px;
max-width: 420px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}

View file

@ -1230,6 +1230,50 @@ aside #likes a:hover{
float: left;
margin-right: 20px;
}
.group_selected {
background: url("../../../view/theme/diabook/icons/selected.png") no-repeat left center;
float: left;
height: 22px;
width: 22px;
}
.group_unselected {
background: url("../../../view/theme/diabook/icons/unselected.png") no-repeat left center;
float: left;
height: 22px;
width: 22px;
}
.icon.text_add {
background-image: url("../../../images/icons/16/add.png");
float: right;
opacity: 0.1;
margin-right: 14px;
}
.icon.text_add:hover {
background-image: url("../../../images/icons/16/add.png");
float: right;
cursor: pointer;
margin-right: 14px;
opacity: 1;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.icon.text_edit {
background-image: url("../../../images/icons/10/edit.png");
opacity: 0.1;
margin-top: 6px;
float: right;
height: 10px;
}
.icon.text_edit:hover {
background-image: url("../../../images/icons/10/edit.png");
opacity: 1;
margin-top: 6px;
float: right;
height: 10px;
}
/* widget */
.widget {
margin-bottom: 2em;
@ -1410,10 +1454,10 @@ body .pageheader{
color: #999;
}
.wall-item-photo-container .wall-item-content {
font-size: 12.5px;
max-width: 720px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-photo-container .wall-item-content img {
@ -1555,10 +1599,10 @@ body .pageheader{
}
.wall-item-container .wall-item-content {
font-size: 12.5px;
max-width: 720px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}

View file

@ -0,0 +1,120 @@
<?php
$line_height=false;
$diabook_font_size=false;
$site_line_height = get_config("diabook-aerith","line_height");
$site_diabook_font_size = get_config("diabook-aerith", "font_size" );
if (local_user()) {
$line_height = get_pconfig(local_user(), "diabook-aerith","line_height");
$diabook_font_size = get_pconfig(local_user(), "diabook-aerith", "font_size");
}
if ($line_height===false) $line_height=$site_line_height;
if ($line_height===false) $line_height="1.3";
if ($diabook_font_size===false) $diabook_font_size=$site_diabook_font_size;
if ($diabook_font_size===false) $diabook_font_size="13";
if (file_exists("$THEMEPATH/style.css")){
echo file_get_contents("$THEMEPATH/style.css");
}
if($diabook_font_size == "14"){
echo "
.wall-item-container .wall-item-content {
font-size: 14px;
}
.wall-item-photo-container .wall-item-content {
font-size: 14px;
}
";
}
if($diabook_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($diabook_font_size == "13"){
echo "
.wall-item-container .wall-item-content {
font-size: 13px;
}
.wall-item-photo-container .wall-item-content {
font-size: 13px;
}
";
}
if($diabook_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($diabook_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.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;
}
";
}

View file

@ -3,13 +3,13 @@
/*
* Name: Diabook-aerith
* Description: Diabook-aerith : report bugs and request here: http://pad.toktan.org/p/diabook or contact me : thomas_bierey@friendica.eu
* Version: (Version: 1.017)
* Version: (Version: 1.018)
* Author:
*/
//print diabook-version for debugging
$diabook_version = "Diabook-aerith (Version: 1.017)";
$diabook_version = "Diabook-aerith (Version: 1.018)";
$a->page['htmlhead'] .= sprintf('<script "%s" ></script>', $diabook_version);
@ -462,10 +462,10 @@ function restore_boxes(){
$a->page['htmlhead'] .= '
<script type="text/javascript">
function insertFormatting(BBcode,id) {
function insertFormatting(comment,BBcode,id) {
var tmpStr = $("#comment-edit-text-" + id).val();
if(tmpStr == "Kommentar") {
if(tmpStr == comment) {
tmpStr = "";
$("#comment-edit-text-" + id).addClass("comment-edit-text-full");
$("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");

View file

@ -0,0 +1,8 @@
{{inc field_select.tpl with $field=$font_size}}{{endinc}}
{{inc field_select.tpl with $field=$line_height}}{{endinc}}
<div class="settings-submit-wrapper">
<input type="submit" value="$submit" class="settings-submit" name="diabook-aerith-settings-submit" />
</div>

View file

@ -12,13 +12,13 @@
</div>
<div class="comment-edit-photo-end"></div>
<textarea id="comment-edit-text-$id" class="comment-edit-text-empty" name="body" onFocus="commentOpen(this,$id);" onBlur="commentClose(this,$id);" >$comment</textarea>
<a class="icon bb-video" onclick="insertFormatting('video',$id);">video</a>
<a class="icon bb-image" onclick="insertFormatting('img',$id);">img</a>
<a class="icon bb-url" onclick="insertFormatting('url',$id);">url</a>
<a class="icon underline" onclick="insertFormatting('u',$id);">u</a>
<a class="icon italic" onclick="insertFormatting('i',$id);">i</a>
<a class="icon bold" onclick="insertFormatting('b',$id);">b</a>
<a class="icon quote" onclick="insertFormatting('quote',$id);">quote</a>
<a class="icon bb-image" onclick="insertFormatting('$comment','img',$id);">img</a>
<a class="icon bb-url" onclick="insertFormatting('$comment','url',$id);">url</a>
<a class="icon bb-video" onclick="insertFormatting('$comment','video',$id);">video</a>
<a class="icon underline" onclick="insertFormatting('$comment','u',$id);">u</a>
<a class="icon italic" onclick="insertFormatting('$comment','i',$id);">i</a>
<a class="icon bold" onclick="insertFormatting('$comment','b',$id);">b</a>
<a class="icon quote" onclick="insertFormatting('$comment','quote',$id);">quote</a>
{{ if $qcomment }}
<select id="qcomment-select-$id" name="qcomment-$id" class="qcomment" onchange="qCommentInsert(this,$id);" >
<option value=""></option>

View file

@ -0,0 +1,71 @@
<?php
/**
* Theme settings
*/
function theme_content(&$a){
if(!local_user())
return;
$font_size = get_pconfig(local_user(), 'diabook-blue', 'font_size' );
$line_height = get_pconfig(local_user(), 'diabook-blue', 'line_height' );
return diabook_form($a,$font_size, $line_height);
}
function theme_post(&$a){
if(! local_user())
return;
if (isset($_POST['diabook-blue-settings-submit'])){
set_pconfig(local_user(), 'diabook-blue', 'font_size', $_POST['diabook-blue_font_size']);
set_pconfig(local_user(), 'diabook-blue', 'line_height', $_POST['diabook-blue_line_height']);
}
}
function theme_admin(&$a){
$font_size = get_config('diabook-blue', 'font_size' );
$line_height = get_config('diabook-blue', 'line_height' );
return diabook_form($a,$font_size, $line_height);
}
function theme_admin_post(&$a){
if (isset($_POST['diabook-blue-settings-submit'])){
set_config('diabook-blue', 'font_size', $_POST['diabook-blue_font_size']);
set_config('diabook-blue', 'line_height', $_POST['diabook-blue_line_height']);
}
}
function diabook_form(&$a, $font_size, $line_height){
$line_heights = array(
"1.4"=>"1.4",
"1.3"=>"1.3",
"1.2"=>"1.2",
"1.1"=>"1.1",
);
$font_sizes = array(
'14'=>'14',
'13.5'=>'13.5',
'13'=>'13',
'12.5'=>'12.5',
'12'=>'12',
);
$t = file_get_contents( dirname(__file__). "/theme_settings.tpl" );
$o .= replace_macros($t, array(
'$submit' => t('Submit'),
'$baseurl' => $a->get_baseurl(),
'$title' => t("Theme settings"),
'$font_size' => array('diabook-blue_font_size', t('Set font-size for posts and comments'), $font_size, '', $font_sizes),
'$line_height' => array('diabook-blue_line_height', t('Set line-height for posts and comments'), $line_height, '', $line_heights),
));
return $o;
}

View file

@ -1,18 +1,18 @@
<div id="group-sidebar" class="widget">
<div class="title tool">
<h3 class="label">$title</h3>
<a href="group/new" title="$createtext" class="action"><span class="icon text s16 add"></span></a>
<div id="profile_side" >
<div class="">
<h3 style="margin-left: 2px;">$title<a href="group/new" title="$createtext" class="icon text_add"></a></h3>
</div>
<div id="sidebar-group-list">
<ul>
<ul class="menu-profile-side">
{{ for $groups as $group }}
<li class="tool {{ if $group.selected }}selected{{ endif }}">
<a href="$group.href" class="label">
<li class="menu-profile-list">
<span class="menu-profile-icon {{ if $group.selected }}group_selected{{else}}group_unselected{{ endif }}"></span>
<a href="$group.href" class="menu-profile-list-item">
$group.text
</a>
{{ if $group.edit }}
<a href="$group.edit.href" class="action"><span class="icon text s10 edit"></span></a>
<a href="$group.edit.href" class="action"><span class="icon text_edit" ></span></a>
{{ endif }}
{{ if $group.cid }}
<input type="checkbox"

BIN
view/theme/diabook-blue/icons/selected.png Executable file → Normal file

Binary file not shown.

Before

Width:  |  Height:  |  Size: 211 B

After

Width:  |  Height:  |  Size: 293 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 B

View file

@ -3,7 +3,7 @@
<div id="nets-desc">$desc</div>
<ul class="nets-ul">
<li><a style="text-decoration: none;" class="tool" href="$base" class="nets-link{{ if $sel_all }} nets-selected{{ endif }} nets-all">$all</a></li>
<li class="tool"><a style="text-decoration: none;" href="$base" class="nets-link{{ if $sel_all }} nets-selected{{ endif }} nets-all">$all</a></li>
{{ for $nets as $net }}
<li class="tool"><a href="$base?nets=$net.ref" class="nets-link{{ if $net.selected }} nets-selected{{ endif }}">$net.name</a></li>
{{ endfor }}

View file

@ -1342,10 +1342,10 @@ transition: all 0.2s ease-in-out;
}
.wall-item-container .wall-item-content {
font-size: 12.5px;
max-width: 420px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}

View file

@ -1325,10 +1325,10 @@ transition: all 0.2s ease-in-out;
}
.wall-item-container .wall-item-content {
font-size: 12.5px;
max-width: 420px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}

View file

@ -1190,6 +1190,50 @@ aside #side-peoplefind-url {
float: left;
margin-right: 20px;
}
.group_selected {
background: url("../../../view/theme/diabook/icons/selected.png") no-repeat left center;
float: left;
height: 22px;
width: 22px;
}
.group_unselected {
background: url("../../../view/theme/diabook/icons/unselected.png") no-repeat left center;
float: left;
height: 22px;
width: 22px;
}
.icon.text_add {
background-image: url("../../../images/icons/16/add.png");
float: right;
opacity: 0.1;
margin-right: 14px;
}
.icon.text_add:hover {
background-image: url("../../../images/icons/16/add.png");
float: right;
cursor: pointer;
margin-right: 14px;
opacity: 1;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.icon.text_edit {
background-image: url("../../../images/icons/10/edit.png");
opacity: 0.1;
margin-top: 6px;
float: right;
height: 10px;
}
.icon.text_edit:hover {
background-image: url("../../../images/icons/10/edit.png");
opacity: 1;
margin-top: 6px;
float: right;
height: 10px;
}
/* widget */
.widget {
margin-bottom: 2em;
@ -1367,10 +1411,10 @@ body .pageheader{
color: #999;
}
.wall-item-photo-container .wall-item-content {
font-size: 12.5px;
max-width: 720px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-photo-container .wall-item-content img {
@ -1513,10 +1557,10 @@ body .pageheader{
}
.wall-item-container .wall-item-content {
font-size: 12.5px;
max-width: 720px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}

View file

@ -0,0 +1,120 @@
<?php
$line_height=false;
$diabook_font_size=false;
$site_line_height = get_config("diabook-blue","line_height");
$site_diabook_font_size = get_config("diabook-blue", "font_size" );
if (local_user()) {
$line_height = get_pconfig(local_user(), "diabook-blue","line_height");
$diabook_font_size = get_pconfig(local_user(), "diabook-blue", "font_size");
}
if ($line_height===false) $line_height=$site_line_height;
if ($line_height===false) $line_height="1.3";
if ($diabook_font_size===false) $diabook_font_size=$site_diabook_font_size;
if ($diabook_font_size===false) $diabook_font_size="13";
if (file_exists("$THEMEPATH/style.css")){
echo file_get_contents("$THEMEPATH/style.css");
}
if($diabook_font_size == "14"){
echo "
.wall-item-container .wall-item-content {
font-size: 14px;
}
.wall-item-photo-container .wall-item-content {
font-size: 14px;
}
";
}
if($diabook_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($diabook_font_size == "13"){
echo "
.wall-item-container .wall-item-content {
font-size: 13px;
}
.wall-item-photo-container .wall-item-content {
font-size: 13px;
}
";
}
if($diabook_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($diabook_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.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;
}
";
}

View file

@ -3,13 +3,13 @@
/*
* Name: Diabook-blue
* Description: Diabook-blue: report bugs and request here: http://pad.toktan.org/p/diabook or contact me : thomas_bierey@friendica.eu
* Version: (Version: 1.017)
* Version: (Version: 1.018)
* Author:
*/
//print diabook-version for debugging
$diabook_version = "Diabook-blue (Version: 1.017)";
$diabook_version = "Diabook-blue (Version: 1.018)";
$a->page['htmlhead'] .= sprintf('<script "%s" ></script>', $diabook_version);
//change css on network and profilepages
@ -462,10 +462,10 @@ function restore_boxes(){
$a->page['htmlhead'] .= '
<script type="text/javascript">
function insertFormatting(BBcode,id) {
function insertFormatting(comment,BBcode,id) {
var tmpStr = $("#comment-edit-text-" + id).val();
if(tmpStr == "Kommentar") {
if(tmpStr == comment) {
tmpStr = "";
$("#comment-edit-text-" + id).addClass("comment-edit-text-full");
$("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");

View file

@ -0,0 +1,8 @@
{{inc field_select.tpl with $field=$font_size}}{{endinc}}
{{inc field_select.tpl with $field=$line_height}}{{endinc}}
<div class="settings-submit-wrapper">
<input type="submit" value="$submit" class="settings-submit" name="diabook-blue-settings-submit" />
</div>

View file

@ -12,13 +12,13 @@
</div>
<div class="comment-edit-photo-end"></div>
<textarea id="comment-edit-text-$id" class="comment-edit-text-empty" name="body" onFocus="commentOpen(this,$id);" onBlur="commentClose(this,$id);" >$comment</textarea>
<a class="icon bb-video" onclick="insertFormatting('video',$id);">video</a>
<a class="icon bb-image" onclick="insertFormatting('img',$id);">img</a>
<a class="icon bb-url" onclick="insertFormatting('url',$id);">url</a>
<a class="icon underline" onclick="insertFormatting('u',$id);">u</a>
<a class="icon italic" onclick="insertFormatting('i',$id);">i</a>
<a class="icon bold" onclick="insertFormatting('b',$id);">b</a>
<a class="icon quote" onclick="insertFormatting('quote',$id);">quote</a>
<a class="icon bb-image" onclick="insertFormatting('$comment','img',$id);">img</a>
<a class="icon bb-url" onclick="insertFormatting('$comment','url',$id);">url</a>
<a class="icon bb-video" onclick="insertFormatting('$comment','video',$id);">video</a>
<a class="icon underline" onclick="insertFormatting('$comment','u',$id);">u</a>
<a class="icon italic" onclick="insertFormatting('$comment','i',$id);">i</a>
<a class="icon bold" onclick="insertFormatting('$comment','b',$id);">b</a>
<a class="icon quote" onclick="insertFormatting('$comment','quote',$id);">quote</a>
{{ if $qcomment }}
<select id="qcomment-select-$id" name="qcomment-$id" class="qcomment" onchange="qCommentInsert(this,$id);" >
<option value=""></option>

View file

@ -0,0 +1,71 @@
<?php
/**
* Theme settings
*/
function theme_content(&$a){
if(!local_user())
return;
$font_size = get_pconfig(local_user(), 'diabook-red', 'font_size' );
$line_height = get_pconfig(local_user(), 'diabook-red', 'line_height' );
return diabook_form($a,$font_size, $line_height);
}
function theme_post(&$a){
if(! local_user())
return;
if (isset($_POST['diabook-blue-settings-submit'])){
set_pconfig(local_user(), 'diabook-red', 'font_size', $_POST['diabook-red_font_size']);
set_pconfig(local_user(), 'diabook-red', 'line_height', $_POST['diabook-red_line_height']);
}
}
function theme_admin(&$a){
$font_size = get_config('diabook-red', 'font_size' );
$line_height = get_config('diabook-red', 'line_height' );
return diabook_form($a,$font_size, $line_height);
}
function theme_admin_post(&$a){
if (isset($_POST['diabook-red-settings-submit'])){
set_config('diabook-red', 'font_size', $_POST['diabook-red_font_size']);
set_config('diabook-red', 'line_height', $_POST['diabook-red_line_height']);
}
}
function diabook_form(&$a, $font_size, $line_height){
$line_heights = array(
"1.4"=>"1.4",
"1.3"=>"1.3",
"1.2"=>"1.2",
"1.1"=>"1.1",
);
$font_sizes = array(
'14'=>'14',
'13.5'=>'13.5',
'13'=>'13',
'12.5'=>'12.5',
'12'=>'12',
);
$t = file_get_contents( dirname(__file__). "/theme_settings.tpl" );
$o .= replace_macros($t, array(
'$submit' => t('Submit'),
'$baseurl' => $a->get_baseurl(),
'$title' => t("Theme settings"),
'$font_size' => array('diabook-red_font_size', t('Set font-size for posts and comments'), $font_size, '', $font_sizes),
'$line_height' => array('diabook-red_line_height', t('Set line-height for posts and comments'), $line_height, '', $line_heights),
));
return $o;
}

View file

@ -1,18 +1,18 @@
<div id="group-sidebar" class="widget">
<div class="title tool">
<h3 class="label">$title</h3>
<a href="group/new" title="$createtext" class="action"><span class="icon text s16 add"></span></a>
<div id="profile_side" >
<div class="">
<h3 style="margin-left: 2px;">$title<a href="group/new" title="$createtext" class="icon text_add"></a></h3>
</div>
<div id="sidebar-group-list">
<ul>
<ul class="menu-profile-side">
{{ for $groups as $group }}
<li class="tool {{ if $group.selected }}selected{{ endif }}">
<a href="$group.href" class="label">
<li class="menu-profile-list">
<span class="menu-profile-icon {{ if $group.selected }}group_selected{{else}}group_unselected{{ endif }}"></span>
<a href="$group.href" class="menu-profile-list-item">
$group.text
</a>
{{ if $group.edit }}
<a href="$group.edit.href" class="action"><span class="icon text s10 edit"></span></a>
<a href="$group.edit.href" class="action"><span class="icon text_edit" ></span></a>
{{ endif }}
{{ if $group.cid }}
<input type="checkbox"

BIN
view/theme/diabook-red/icons/selected.png Executable file → Normal file

Binary file not shown.

Before

Width:  |  Height:  |  Size: 211 B

After

Width:  |  Height:  |  Size: 293 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 B

View file

@ -3,7 +3,7 @@
<div id="nets-desc">$desc</div>
<ul class="nets-ul">
<li><a style="text-decoration: none;" class="tool" href="$base" class="nets-link{{ if $sel_all }} nets-selected{{ endif }} nets-all">$all</a></li>
<li class="tool"><a style="text-decoration: none;" href="$base" class="nets-link{{ if $sel_all }} nets-selected{{ endif }} nets-all">$all</a></li>
{{ for $nets as $net }}
<li class="tool"><a href="$base?nets=$net.ref" class="nets-link{{ if $net.selected }} nets-selected{{ endif }}">$net.name</a></li>
{{ endfor }}

View file

@ -1376,10 +1376,10 @@ transition: all 0.2s ease-in-out;
}
.wall-item-container .wall-item-content {
font-size: 12.5px;
max-width: 420px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}

View file

@ -1338,10 +1338,10 @@ transition: all 0.2s ease-in-out;
}
.wall-item-container .wall-item-content {
font-size: 12.5px;
max-width: 420px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}

View file

@ -1219,6 +1219,50 @@ aside #side-peoplefind-url {
float: left;
margin-right: 20px;
}
.group_selected {
background: url("../../../view/theme/diabook/icons/selected.png") no-repeat left center;
float: left;
height: 22px;
width: 22px;
}
.group_unselected {
background: url("../../../view/theme/diabook/icons/unselected.png") no-repeat left center;
float: left;
height: 22px;
width: 22px;
}
.icon.text_add {
background-image: url("../../../images/icons/16/add.png");
float: right;
opacity: 0.1;
margin-right: 14px;
}
.icon.text_add:hover {
background-image: url("../../../images/icons/16/add.png");
float: right;
cursor: pointer;
margin-right: 14px;
opacity: 1;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.icon.text_edit {
background-image: url("../../../images/icons/10/edit.png");
opacity: 0.1;
margin-top: 6px;
float: right;
height: 10px;
}
.icon.text_edit:hover {
background-image: url("../../../images/icons/10/edit.png");
opacity: 1;
margin-top: 6px;
float: right;
height: 10px;
}
/* widget */
.widget {
margin-bottom: 2em;
@ -1396,10 +1440,10 @@ body .pageheader{
color: #999;
}
.wall-item-photo-container .wall-item-content {
font-size: 12.5px;
max-width: 720px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-photo-container .wall-item-content img {
@ -1541,10 +1585,10 @@ body .pageheader{
}
.wall-item-container .wall-item-content {
font-size: 12.5px;
max-width: 720px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}

View file

@ -0,0 +1,120 @@
<?php
$line_height=false;
$diabook_font_size=false;
$site_line_height = get_config("diabook-red","line_height");
$site_diabook_font_size = get_config("diabook-red", "font_size" );
if (local_user()) {
$line_height = get_pconfig(local_user(), "diabook-red","line_height");
$diabook_font_size = get_pconfig(local_user(), "diabook-red", "font_size");
}
if ($line_height===false) $line_height=$site_line_height;
if ($line_height===false) $line_height="1.3";
if ($diabook_font_size===false) $diabook_font_size=$site_diabook_font_size;
if ($diabook_font_size===false) $diabook_font_size="13";
if (file_exists("$THEMEPATH/style.css")){
echo file_get_contents("$THEMEPATH/style.css");
}
if($diabook_font_size == "14"){
echo "
.wall-item-container .wall-item-content {
font-size: 14px;
}
.wall-item-photo-container .wall-item-content {
font-size: 14px;
}
";
}
if($diabook_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($diabook_font_size == "13"){
echo "
.wall-item-container .wall-item-content {
font-size: 13px;
}
.wall-item-photo-container .wall-item-content {
font-size: 13px;
}
";
}
if($diabook_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($diabook_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.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;
}
";
}

View file

@ -3,13 +3,13 @@
/*
* Name: Diabook-red
* Description: Diabook-red: report bugs and request here: http://pad.toktan.org/p/diabook or contact me : thomas_bierey@friendica.eu
* Version: (Version: 1.017)
* Version: (Version: 1.018)
* Author:
*/
//print diabook-version for debugging
$diabook_version = "Diabook-red (Version: 1.017)";
$diabook_version = "Diabook-red (Version: 1.018)";
$a->page['htmlhead'] .= sprintf('<script "%s" ></script>', $diabook_version);
//change css on network and profilepages
@ -461,10 +461,10 @@ function restore_boxes(){
$a->page['htmlhead'] .= '
<script type="text/javascript">
function insertFormatting(BBcode,id) {
function insertFormatting(comment,BBcode,id) {
var tmpStr = $("#comment-edit-text-" + id).val();
if(tmpStr == "Kommentar") {
if(tmpStr == comment) {
tmpStr = "";
$("#comment-edit-text-" + id).addClass("comment-edit-text-full");
$("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");

View file

@ -0,0 +1,8 @@
{{inc field_select.tpl with $field=$font_size}}{{endinc}}
{{inc field_select.tpl with $field=$line_height}}{{endinc}}
<div class="settings-submit-wrapper">
<input type="submit" value="$submit" class="settings-submit" name="diabook-red-settings-submit" />
</div>

View file

@ -12,13 +12,13 @@
</div>
<div class="comment-edit-photo-end"></div>
<textarea id="comment-edit-text-$id" class="comment-edit-text-empty" name="body" onFocus="commentOpen(this,$id);" onBlur="commentClose(this,$id);" >$comment</textarea>
<a class="icon bb-image" onclick="insertFormatting('img',$id);">img</a>
<a class="icon bb-url" onclick="insertFormatting('url',$id);">url</a>
<a class="icon bb-video" onclick="insertFormatting('video',$id);">video</a>
<a class="icon underline" onclick="insertFormatting('u',$id);">u</a>
<a class="icon italic" onclick="insertFormatting('i',$id);">i</a>
<a class="icon bold" onclick="insertFormatting('b',$id);">b</a>
<a class="icon quote" onclick="insertFormatting('quote',$id);">quote</a>
<a class="icon bb-image" onclick="insertFormatting('$comment','img',$id);">img</a>
<a class="icon bb-url" onclick="insertFormatting('$comment','url',$id);">url</a>
<a class="icon bb-video" onclick="insertFormatting('$comment','video',$id);">video</a>
<a class="icon underline" onclick="insertFormatting('$comment','u',$id);">u</a>
<a class="icon italic" onclick="insertFormatting('$comment','i',$id);">i</a>
<a class="icon bold" onclick="insertFormatting('$comment','b',$id);">b</a>
<a class="icon quote" onclick="insertFormatting('$comment','quote',$id);">quote</a>
{{ if $qcomment }}
<select id="qcomment-select-$id" name="qcomment-$id" class="qcomment" onchange="qCommentInsert(this,$id);" >
<option value=""></option>

View file

@ -0,0 +1,71 @@
<?php
/**
* Theme settings
*/
function theme_content(&$a){
if(!local_user())
return;
$font_size = get_pconfig(local_user(), 'diabook', 'font_size' );
$line_height = get_pconfig(local_user(), 'diabook', 'line_height' );
return diabook_form($a,$font_size, $line_height);
}
function theme_post(&$a){
if(! local_user())
return;
if (isset($_POST['diabook-settings-submit'])){
set_pconfig(local_user(), 'diabook', 'font_size', $_POST['diabook_font_size']);
set_pconfig(local_user(), 'diabook', 'line_height', $_POST['diabook_line_height']);
}
}
function theme_admin(&$a){
$font_size = get_config('diabook', 'font_size' );
$line_height = get_config('diabook', 'line_height' );
return diabook_form($a,$font_size, $line_height);
}
function theme_admin_post(&$a){
if (isset($_POST['diabook-settings-submit'])){
set_config('diabook', 'font_size', $_POST['diabook_font_size']);
set_config('diabook', 'line_height', $_POST['diabook_line_height']);
}
}
function diabook_form(&$a, $font_size, $line_height){
$line_heights = array(
"1.4"=>"1.4",
"1.3"=>"1.3",
"1.2"=>"1.2",
"1.1"=>"1.1",
);
$font_sizes = array(
'14'=>'14',
'13.5'=>'13.5',
'13'=>'13',
'12.5'=>'12.5',
'12'=>'12',
);
$t = file_get_contents( dirname(__file__). "/theme_settings.tpl" );
$o .= replace_macros($t, array(
'$submit' => t('Submit'),
'$baseurl' => $a->get_baseurl(),
'$title' => t("Theme settings"),
'$font_size' => array('diabook_font_size', t('Set font-size for posts and comments'), $font_size, '', $font_sizes),
'$line_height' => array('diabook_line_height', t('Set line-height for posts and comments'), $line_height, '', $line_heights),
));
return $o;
}

View file

@ -1,18 +1,18 @@
<div id="group-sidebar" class="widget">
<div class="title tool">
<h3 class="label">$title</h3>
<a href="group/new" title="$createtext" class="action"><span class="icon text s16 add"></span></a>
<div id="profile_side" >
<div class="">
<h3 style="margin-left: 2px;">$title<a href="group/new" title="$createtext" class="icon text_add"></a></h3>
</div>
<div id="sidebar-group-list">
<ul>
<ul class="menu-profile-side">
{{ for $groups as $group }}
<li class="tool {{ if $group.selected }}selected{{ endif }}">
<a href="$group.href" class="label">
<li class="menu-profile-list">
<span class="menu-profile-icon {{ if $group.selected }}group_selected{{else}}group_unselected{{ endif }}"></span>
<a href="$group.href" class="menu-profile-list-item">
$group.text
</a>
{{ if $group.edit }}
<a href="$group.edit.href" class="action"><span class="icon text s10 edit"></span></a>
<a href="$group.edit.href" class="action"><span class="icon text_edit" ></span></a>
{{ endif }}
{{ if $group.cid }}
<input type="checkbox"

BIN
view/theme/diabook/icons/selected.png Executable file → Normal file

Binary file not shown.

Before

Width:  |  Height:  |  Size: 211 B

After

Width:  |  Height:  |  Size: 293 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 B

View file

@ -3,7 +3,7 @@
<div id="nets-desc">$desc</div>
<ul class="nets-ul">
<li><a style="text-decoration: none;" class="tool" href="$base" class="nets-link{{ if $sel_all }} nets-selected{{ endif }} nets-all">$all</a></li>
<li class="tool"><a style="text-decoration: none;" href="$base" class="nets-link{{ if $sel_all }} nets-selected{{ endif }} nets-all">$all</a></li>
{{ for $nets as $net }}
<li class="tool"><a href="$base?nets=$net.ref" class="nets-link{{ if $net.selected }} nets-selected{{ endif }}">$net.name</a></li>
{{ endfor }}

View file

@ -1318,10 +1318,10 @@ transition: all 0.2s ease-in-out;
}
.wall-item-container .wall-item-content {
font-size: 12.5px;
max-width: 420px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}

View file

@ -1298,10 +1298,10 @@ transition: all 0.2s ease-in-out;
}
.wall-item-container .wall-item-content {
font-size: 12.5px;
max-width: 420px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}

View file

@ -1241,8 +1241,49 @@ aside #side-peoplefind-url {
min-height: 16px;
list-style: none;
}
.widget .tool.selected {
.group_selected {
background: url("../../../view/theme/diabook/icons/selected.png") no-repeat left center;
float: left;
height: 22px;
width: 22px;
}
.group_unselected {
background: url("../../../view/theme/diabook/icons/unselected.png") no-repeat left center;
float: left;
height: 22px;
width: 22px;
}
.icon.text_add {
background-image: url("../../../images/icons/16/add.png");
float: right;
opacity: 0.1;
margin-right: 14px;
}
.icon.text_add:hover {
background-image: url("../../../images/icons/16/add.png");
float: right;
cursor: pointer;
margin-right: 14px;
opacity: 1;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.icon.text_edit {
background-image: url("../../../images/icons/10/edit.png");
opacity: 0.1;
margin-top: 6px;
float: right;
height: 10px;
}
.icon.text_edit:hover {
background-image: url("../../../images/icons/10/edit.png");
opacity: 1;
margin-top: 6px;
float: right;
height: 10px;
}
/* widget: search */
#add-search-popup {
@ -1394,17 +1435,17 @@ body .pageheader{
}
.wall-item-container .wall-item-content {
font-size: 12.5px;
max-width: 720px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-photo-container .wall-item-content {
font-size: 12.5px;
max-width: 720px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-container .wall-item-content img {

View file

@ -0,0 +1,120 @@
<?php
$line_height=false;
$diabook_font_size=false;
$site_line_height = get_config("diabook","line_height");
$site_diabook_font_size = get_config("diabook", "font_size" );
if (local_user()) {
$line_height = get_pconfig(local_user(), "diabook","line_height");
$diabook_font_size = get_pconfig(local_user(), "diabook", "font_size");
}
if ($line_height===false) $line_height=$site_line_height;
if ($line_height===false) $line_height="1.3";
if ($diabook_font_size===false) $diabook_font_size=$site_diabook_font_size;
if ($diabook_font_size===false) $diabook_font_size="13";
if (file_exists("$THEMEPATH/style.css")){
echo file_get_contents("$THEMEPATH/style.css");
}
if($diabook_font_size == "14"){
echo "
.wall-item-container .wall-item-content {
font-size: 14px;
}
.wall-item-photo-container .wall-item-content {
font-size: 14px;
}
";
}
if($diabook_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($diabook_font_size == "13"){
echo "
.wall-item-container .wall-item-content {
font-size: 13px;
}
.wall-item-photo-container .wall-item-content {
font-size: 13px;
}
";
}
if($diabook_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($diabook_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.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;
}
";
}

View file

@ -3,13 +3,13 @@
/*
* Name: Diabook
* Description: Diabook: report bugs and request here: http://pad.toktan.org/p/diabook or contact me : thomas_bierey@friendica.eu
* Version: (Version: 1.017)
* Version: (Version: 1.018)
* Author:
*/
//print diabook-version for debugging
$diabook_version = "Diabook (Version: 1.017)";
$diabook_version = "Diabook (Version: 1.018)";
$a->page['htmlhead'] .= sprintf('<script "%s" ></script>', $diabook_version);
//change css on network and profilepages
@ -469,18 +469,19 @@ function restore_boxes(){
}
</script>';}
$a->page['htmlhead'] .= '
<script type="text/javascript">
function insertFormatting(BBcode,id) {
<script>
function insertFormatting(comment,BBcode,id) {
var tmpStr = $("#comment-edit-text-" + id).val();
if(tmpStr == "Kommentar") {
if(tmpStr == comment) {
tmpStr = "";
$("#comment-edit-text-" + id).addClass("comment-edit-text-full");
$("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
openMenu("comment-edit-submit-wrapper-" + id);
}
}
textarea = document.getElementById("comment-edit-text-" +id);
if (document.selection) {

View file

@ -0,0 +1,8 @@
{{inc field_select.tpl with $field=$font_size}}{{endinc}}
{{inc field_select.tpl with $field=$line_height}}{{endinc}}
<div class="settings-submit-wrapper">
<input type="submit" value="$submit" class="settings-submit" name="diabook-settings-submit" />
</div>

View file

@ -1,13 +1,13 @@
<!DOCTYPE html>
<html>
<head>
<title><?php if(x($page,'title')) echo $page['title'] ?></title>
<title><?php if(x($page,'title')) echo $page['title']; ?></title>
<script>var baseurl="<?php echo $a->get_baseurl() ?>";</script>
<?php if(x($page,'htmlhead')) echo $page['htmlhead'] ?>
<?php if(x($page,'htmlhead')) echo $page['htmlhead']; ?>
</head>
<body>
<header>
<!-- header stuff will go here -->
<?php if(x($page, 'header')) echo $page['header']; ?>
</header>
<article id="articlemain">
<?php if(x($page,'nav')) echo $page['nav']; ?>

View file

@ -91,8 +91,4 @@
$('#hide-comments-' + id).html('$showfewer');
}
}
</script>

View file

View file

@ -36,7 +36,7 @@ function initEditor(cb) {
entity_encoding : "raw",
add_unload_trigger : false,
remove_linebreaks : false,
force_p_newlines : false,
force_p_newlines : true,
force_br_newlines : true,
forced_root_block : '',
convert_urls: false,

View file

@ -4,7 +4,7 @@
<!-- yes, they're going the other way. seems that's how the template renderer
works -->
<a name="top" id="top"></a>
<div id="nav-floater">
<div id="nav-buttons">
{{ if $nav.help }}
@ -116,6 +116,12 @@ works -->
$langselector
</div>
<div id="scrollup">
<a href="#top"><img
src="view/theme/dispy/icons/scroll_top.png"
alt="back to top" title="Back to top" /></a>
</div>
<div class="search-box">
<form method="get" action="$nav.search.0">
<input id="search-text" class="nav-menu-search" type="search" placeholder="Search" value="" id="search" name="search" />

View file

@ -311,6 +311,7 @@ ul#user-menu-popup {
-webkit-border-radius: 0 0 5px 5px;
-moz-border-radius: 0 0 5px 5px;
border-radius: 0 0 5px 5px;
box-shadow: 5px 10px 10px 0 #111;
z-index: 10000;
}
ul#user-menu-popup li {
@ -543,7 +544,18 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify, nav #nav-notifications-link
width: 10em;
color: #eec;
}
#scrollup {
position: fixed;
right: 5px;
bottom: 40px;
z-index: 100;
}
#scrollup a:hover {
text-decoration: none;
border: 0;
}
#user-menu {
box-shadow: 5px 0 10px 0 #111;
display: block;
width: 75%;
margin: 3px 0 0 0;
@ -880,12 +892,24 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify, nav #nav-notifications-link
line-height: 20px;
padding: 2px 20px 5px 0;
}
#profile-jot-text_parent {
/*border-radius: 10px;*/
box-shadow: 5px 0 10px 0 #111;
}
#profile-jot-text_tbl {
margin-bottom: 10px;
/*border-radius: 10px;*/
background: #888;
}
#profile-jot-text_ifr {
width:99.900002% !important;
}
#profile-jot-text_toolbargroup {
background: #888;
}
.mceCenter table tr {
background: #888;
}
[id$="jot-text_ifr"] {
width: 99.900002% !important;
color: #2e2f2e;
@ -895,6 +919,15 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify, nav #nav-notifications-link
color: #2e2f2e;
background: #eec;
}
.mceFirst tr {
background: #888;
}
.mceFirst td {
/*border-radius: 10px 10px 0px 0px;*/
}
.mceLast td {
/*border-radius: 0 0 10px 10px;*/
}
#profile-attach-wrapper,
#profile-audio-wrapper,
#profile-link-wrapper,
@ -1121,6 +1154,7 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify, nav #nav-notifications-link
.wall-item-outside-wrapper {
border: 1px solid #aaa;
border-radius: 5px;
box-shadow: 5px 0 10px 0 #111;
}
.wall-item-outside-wrapper.comment {
margin-top: 5px;
@ -1946,7 +1980,7 @@ div[id$="wrapper"] br {
position: absolute;
text-decoration: none;
top: 113px;
right: 250px;
right: 260px;
}
#profile-edit-links ul {
margin: 20px 0;
@ -2812,6 +2846,7 @@ footer {
background: #fff url("../../../images/search_18.png") no-repeat right center;
padding-right: 20px;
margin: 6px;
color: #111;
}
#acl-showall {
float: left;

View file

@ -114,11 +114,27 @@ function dispy_dark_init(&$a) {
return false;
});
// (attempt) to change the text colour in a top post
// (attempt to) change the text colour in a top post
$('#profile-jot-text').focusin(function() {
$(this).css({color: '#eec'});
});
$('a[href=#top]').click(function() {
$('html, body').animate({scrollTop:0}, '500');
return false;
});
});
// shadowing effect for floating toolbars
$(document).scroll(function(e) {
var pageTop = $('html').scrollTop();
if (pageTop) {
$('#nav-floater').css({boxShadow: '3px 3px 10px rgba(0, 0, 0, 0.7)'});
$('.search-box').css({boxShadow: '3px 3px 10px rgba(0, 0, 0, 0.7)'});
} else {
$('#nav-floater').css({boxShadow: '0 0 0 0'});
$('.search-box').css({boxShadow: '0 0 0 0'});
}
});
</script>
EOT;

View file

@ -1,13 +1,13 @@
<!DOCTYPE html>
<html>
<head>
<title><?php if(x($page,'title')) echo $page['title'] ?></title>
<title><?php if(x($page,'title')) echo $page['title']; ?></title>
<script>var baseurl="<?php echo $a->get_baseurl() ?>";</script>
<?php if(x($page,'htmlhead')) echo $page['htmlhead'] ?>
<?php if(x($page,'htmlhead')) echo $page['htmlhead']; ?>
</head>
<body>
<header>
<!-- header stuff will go here -->
<?php if(x($page, 'header')) echo $page['header']; ?>
</header>
<article id="articlemain">
<?php if(x($page,'nav')) echo $page['nav']; ?>

View file

@ -91,8 +91,4 @@
$('#hide-comments-' + id).html('$showfewer');
}
}
</script>

Binary file not shown.

After

Width:  |  Height:  |  Size: 539 B

View file

@ -36,7 +36,7 @@ function initEditor(cb) {
entity_encoding : "raw",
add_unload_trigger : false,
remove_linebreaks : false,
force_p_newlines : false,
force_p_newlines : true,
force_br_newlines : true,
forced_root_block : '',
convert_urls: false,

View file

@ -4,7 +4,7 @@
<!-- yes, they're going the other way. seems that's how the template renderer
works -->
<a name="top" id="top"></a>
<div id="nav-floater">
<div id="nav-buttons">
{{ if $nav.help }}
@ -116,6 +116,12 @@ works -->
$langselector
</div>
<div id="scrollup">
<a href="#top"><img
src="view/theme/dispy/icons/scroll_top.png"
alt="back to top" title="Back to top" /></a>
</div>
<div class="search-box">
<form method="get" action="$nav.search.0">
<input id="search-text" class="nav-menu-search" type="search" placeholder="Search" value="" id="search" name="search" />

View file

@ -312,6 +312,7 @@ ul#user-menu-popup {
-webkit-border-radius: 0 0 5px 5px;
-moz-border-radius: 0 0 5px 5px;
border-radius: 0 0 5px 5px;
box-shadow: 5px 10px 10px 0 #111;
z-index: 10000;
}
ul#user-menu-popup li {
@ -544,7 +545,18 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify, nav #nav-notifications-link
width: 10em;
color: #eec;
}
#scrollup {
position: fixed;
right: 5px;
bottom: 40px;
z-index: 100;
}
#scrollup a:hover {
text-decoration: none;
border: 0;
}
#user-menu {
box-shadow: 5px 0 10px 0 #111;
display: block;
width: 75%;
margin: 3px 0 0 0;
@ -881,12 +893,24 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify, nav #nav-notifications-link
line-height: 20px;
padding: 2px 20px 5px 0;
}
#profile-jot-text_parent {
/*border-radius: 10px;*/
box-shadow: 5px 0 10px 0 #111;
}
#profile-jot-text_tbl {
margin-bottom: 10px;
/*border-radius: 10px;*/
background: #888;
}
#profile-jot-text_ifr {
width:99.900002% !important;
}
#profile-jot-text_toolbargroup {
background: #888;
}
.mceCenter table tr {
background: #888;
}
[id$="jot-text_ifr"] {
width: 99.900002% !important;
color: #2e2f2e;
@ -896,6 +920,15 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify, nav #nav-notifications-link
color: #2e2f2e;
background: #eec;
}
.mceFirst tr {
background: #888;
}
.mceFirst td {
/*border-radius: 10px 10px 0px 0px;*/
}
.mceLast td {
/*border-radius: 0 0 10px 10px;*/
}
#profile-attach-wrapper,
#profile-audio-wrapper,
#profile-link-wrapper,
@ -1122,6 +1155,7 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify, nav #nav-notifications-link
.wall-item-outside-wrapper {
border: 1px solid #aaa;
border-radius: 5px;
box-shadow: 5px 0 10px 0 #999;
}
.wall-item-outside-wrapper.comment {
margin-top: 5px;
@ -1947,7 +1981,7 @@ div[id$="wrapper"] br {
position: absolute;
text-decoration: none;
top: 113px;
right: 250px;
right: 260px;
}
#profile-edit-links ul {
margin: 20px 0;
@ -2813,6 +2847,7 @@ footer {
background: #fff url("../../../images/search_18.png") no-repeat right center;
padding-right: 20px;
margin: 6px;
color: #111;
}
#acl-showall {
float: left;

View file

@ -114,11 +114,27 @@ function dispy_init(&$a) {
return false;
});
// (attempt) to change the text colour in a top post
// (attempt to) change the text colour in a top post
$('#profile-jot-text').focusin(function() {
$(this).css({color: '#eec'});
});
$('a[href=#top]').click(function() {
$('html, body').animate({scrollTop:0}, '500');
return false;
});
});
// shadowing effect for floating toolbars
$(document).scroll(function(e) {
var pageTop = $('html').scrollTop();
if (pageTop) {
$('#nav-floater').css({boxShadow: '3px 3px 10px rgba(0, 0, 0, 0.7)'});
$('.search-box').css({boxShadow: '3px 3px 10px rgba(0, 0, 0, 0.7)'});
} else {
$('#nav-floater').css({boxShadow: '0 0 0 0'});
$('.search-box').css({boxShadow: '0 0 0 0'});
}
});
</script>
EOT;

2
view/theme/quattro/TODO Normal file
View file

@ -0,0 +1,2 @@
jot.tpl: <!-- TODO: waiting for a better placement
nav.tpl: <!-- TODO: better icons! -->

View file

@ -11,6 +11,37 @@ function theme_content(&$a){
$align = get_pconfig(local_user(), 'quattro', 'align' );
$color = get_pconfig(local_user(), 'quattro', 'color' );
return quattro_form($a,$align, $color);
}
function theme_post(&$a){
if(! local_user())
return;
if (isset($_POST['quattro-settings-submit'])){
set_pconfig(local_user(), 'quattro', 'align', $_POST['quattro_align']);
set_pconfig(local_user(), 'quattro', 'color', $_POST['quattro_color']);
}
}
function theme_admin(&$a){
$align = get_config('quattro', 'align' );
$color = get_config('quattro', 'color' );
return quattro_form($a,$align, $color);
}
function theme_admin_post(&$a){
if (isset($_POST['quattro-settings-submit'])){
set_config('quattro', 'align', $_POST['quattro_align']);
set_config('quattro', 'color', $_POST['quattro_color']);
}
}
function quattro_form(&$a, $align, $color){
$colors = array(
"dark"=>"Quattro",
"green"=>"Green"
@ -26,14 +57,3 @@ function theme_content(&$a){
));
return $o;
}
function theme_post(&$a){
if(! local_user())
return;
if (isset($_POST['quattro-settings-submit'])){
set_pconfig(local_user(), 'quattro', 'align', $_POST['quattro_align']);
set_pconfig(local_user(), 'quattro', 'color', $_POST['quattro_color']);
}
}

View file

@ -9,8 +9,11 @@
{{endif}}
{{if $item.comment_lastcollapsed}}</div>{{endif}}
{{ inc $item.template }}{{ endinc }}
{{ if $item.type == tag }}
{{ inc wall_item_tag.tpl }}{{ endinc }}
{{ else }}
{{ inc $item.template }}{{ endinc }}
{{ endif }}
{{ endfor }}
</div>

View file

@ -38,7 +38,7 @@
@Link: @Blue3;
@LinkHover: @Blue3;
@LinkVisited: @Blue3;
@LinkDimmed: @Blue2;
@ButtonColor: @Grey1;
@ButtonBackgroundColor: @Grey5;
@ -73,9 +73,13 @@
@FieldHelpColor: @Grey3;
@ThreadBackgroundColor: #f6f7f8;
@ThreadBackgroundColor: #eff0f1;
@ThreadBottomBorderColor: @Grey2;
@ShinyBorderColor: @Yellow1;
@ItemColor: @Grey5;
@ItemColorDimmed: @Grey3;
@CommentBoxEmptyColor: @Grey3;
@CommentBoxEmptyBorderColor: @Grey3;
@CommentBoxFullColor: @Grey5;

View file

@ -66,6 +66,9 @@
.icon.s10.type-text {
background-image: url("../../../images/icons/10/text.png");
}
.icon.s10.language {
background-image: url("icons/language.png");
}
.icon.s10.text {
padding: 2px 0px 0px 15px;
}
@ -121,6 +124,9 @@
.icon.s16.type-text {
background-image: url("../../../images/icons/16/text.png");
}
.icon.s16.language {
background-image: url("icons/language.png");
}
.icon.s16.text {
padding: 4px 0px 0px 20px;
}
@ -176,6 +182,9 @@
.icon.s22.type-text {
background-image: url("../../../images/icons/22/text.png");
}
.icon.s22.language {
background-image: url("icons/language.png");
}
.icon.s22.text {
padding: 10px 0px 0px 25px;
}
@ -231,6 +240,9 @@
.icon.s48.type-text {
background-image: url("../../../images/icons/48/text.png");
}
.icon.s48.language {
background-image: url("icons/language.png");
}
/* global */
body {
font-family: Liberation Sans, helvetica, arial, clean, sans-serif;
@ -314,6 +326,10 @@ code {
float: right;
}
/* popup notifications */
#jGrowl.top-right {
top: 30px;
right: 15px;
}
div.jGrowl div.notice {
background: #511919 url("../../../images/icons/48/notice.png") no-repeat 5px center;
color: #ffffff;
@ -565,7 +581,7 @@ ul.menu-popup .toolbar a:hover {
color: #9eabb0;
display: block;
}
/* aside */
/* aside 230px*/
aside {
display: table-cell;
vertical-align: top;
@ -772,20 +788,21 @@ aside #profiles-menu {
width: 200px;
top: 18px;
}
/* section */
/* section 800px */
section {
display: table-cell;
vertical-align: top;
width: 800px;
width: 770px;
padding: 0px 20px 0px 10px;
}
/* wall item */
.tread-wrapper {
background-color: #f6f7f8;
background-color: #eff0f1;
position: relative;
padding: 10px;
margin-bottom: 20px;
width: 780px;
width: 750px;
border-bottom: 1px solid #cccccc;
}
.wall-item-decor {
position: absolute;
@ -798,7 +815,7 @@ section {
}
.wall-item-container {
display: table;
width: 780px;
width: 750px;
}
.wall-item-container .wall-item-item,
.wall-item-container .wall-item-bottom {
@ -890,26 +907,42 @@ section {
.wall-item-container .wall-item-actions-tools input {
float: right;
}
.wall-item-container.comment {
/*margin-top: 50px;*/
.wall-item-container.comment .contact-photo-wrapper {
margin-left: 16px;
}
.wall-item-container.comment .contact-photo {
width: 32px;
height: 32px;
margin-left: 16px;
/*background: url(../../../images/icons/22/user.png) no-repeat center center;*/
}
.wall-item-container.comment .contact-photo-menu-button {
top: 15px !important;
left: 15px !important;
left: 0px !important;
}
.wall-item-container.comment .wall-item-links {
padding-left: 12px;
}
/* 'tag' item type */
.wall-item-container.item-tag .wall-item-content {
opacity: 0.5;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.wall-item-container.item-tag .contact-photo-wrapper {
margin-left: 32px;
}
.wall-item-container.item-tag .contact-photo {
width: 16px;
height: 16px;
}
.wall-item-container.item-tag .contact-photo-menu-button {
top: 15px !important;
left: 15px !important;
}
.wall-item-comment-wrapper {
margin: 30px 2em 2em 60px;
margin: 1em 2em 1em 60px;
}
.wall-item-comment-wrapper .comment-edit-photo {
display: none;
@ -961,6 +994,9 @@ section {
#jot-preview-content .tread-wrapper {
background-color: #fce94f;
}
.hide-comments-outer {
margin-bottom: 0.8em;
}
.wall-item-tags {
padding-top: 5px;
}
@ -1087,7 +1123,7 @@ section {
padding: 0px;
height: 40px;
overflow: none;
width: 800px;
width: 770px;
background-color: #0e232e;
border-bottom: 2px solid #9eabb0;
}
@ -1162,7 +1198,7 @@ section {
border: 0px;
margin: 0px;
height: 20px;
width: 700px;
width: 500px;
font-weight: bold;
border: 1px solid #ffffff;
}
@ -1179,13 +1215,26 @@ section {
border: 1px solid #999999;
}
#jot #character-counter {
width: 80px;
width: 40px;
float: right;
text-align: right;
height: 20px;
line-height: 20px;
padding-right: 20px;
}
#jot #jot-category {
border: 0px;
margin: 0px;
height: 20px;
width: 200px;
border: 1px solid #ffffff;
}
#jot #jot-category:hover {
border: 1px solid #999999;
}
#jot #jot-category:focus {
border: 1px solid #999999;
}
/** buttons **/
/*input[type="submit"] {
border: 0px;
@ -1592,44 +1641,19 @@ ul.tabs li .active {
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
/* mail view */
/*
.mail-conv-sender,
.mail-conv-detail {
float: left;
/* theme screenshot */
.screenshot,
#theme-preview {
position: absolute;
width: 202px;
left: 70%;
top: 50px;
}
.mail-conv-detail {
margin-left: 20px;
width: 500px;
.screenshot img,
#theme-preview img {
width: 200px;
height: 150px;
}
.mail-conv-subject {
font-size: 1.4em;
margin: 10px 0;
}
.mail-conv-outside-wrapper-end {
clear: both;
}
.mail-conv-outside-wrapper {
margin-top: 30px;
}
.mail-conv-delete-wrapper {
float: right;
margin-right: 30px;
margin-top: 15px;
}
.mail-conv-break {
clear: both;
}
.mail-conv-delete-icon {
border: none;
}
*/
/* page footer */
footer {
height: 100px;

View file

@ -74,7 +74,8 @@
@FieldHelpColor: @Grey3;
@ThreadBackgroundColor: #f6f7f8;
@ThreadBackgroundColor: #eff0f1;
@ThreadBottomBorderColor: @Grey2;
@ShinyBorderColor: @Green4;
@CommentBoxEmptyColor: @Grey3;

View file

@ -66,6 +66,9 @@
.icon.s10.type-text {
background-image: url("../../../images/icons/10/text.png");
}
.icon.s10.language {
background-image: url("icons/language.png");
}
.icon.s10.text {
padding: 2px 0px 0px 15px;
}
@ -121,6 +124,9 @@
.icon.s16.type-text {
background-image: url("../../../images/icons/16/text.png");
}
.icon.s16.language {
background-image: url("icons/language.png");
}
.icon.s16.text {
padding: 4px 0px 0px 20px;
}
@ -176,6 +182,9 @@
.icon.s22.type-text {
background-image: url("../../../images/icons/22/text.png");
}
.icon.s22.language {
background-image: url("icons/language.png");
}
.icon.s22.text {
padding: 10px 0px 0px 25px;
}
@ -231,6 +240,9 @@
.icon.s48.type-text {
background-image: url("../../../images/icons/48/text.png");
}
.icon.s48.language {
background-image: url("icons/language.png");
}
/* global */
body {
font-family: Liberation Sans, helvetica, arial, clean, sans-serif;
@ -314,6 +326,10 @@ code {
float: right;
}
/* popup notifications */
#jGrowl.top-right {
top: 30px;
right: 15px;
}
div.jGrowl div.notice {
background: #511919 url("../../../images/icons/48/notice.png") no-repeat 5px center;
color: #ffffff;
@ -565,7 +581,7 @@ ul.menu-popup .toolbar a:hover {
color: #9eabb0;
display: block;
}
/* aside */
/* aside 230px*/
aside {
display: table-cell;
vertical-align: top;
@ -772,20 +788,21 @@ aside #profiles-menu {
width: 200px;
top: 18px;
}
/* section */
/* section 800px */
section {
display: table-cell;
vertical-align: top;
width: 800px;
width: 770px;
padding: 0px 20px 0px 10px;
}
/* wall item */
.tread-wrapper {
background-color: #f6f7f8;
background-color: #eff0f1;
position: relative;
padding: 10px;
margin-bottom: 20px;
width: 780px;
width: 750px;
border-bottom: 1px solid #cccccc;
}
.wall-item-decor {
position: absolute;
@ -798,7 +815,7 @@ section {
}
.wall-item-container {
display: table;
width: 780px;
width: 750px;
}
.wall-item-container .wall-item-item,
.wall-item-container .wall-item-bottom {
@ -890,26 +907,42 @@ section {
.wall-item-container .wall-item-actions-tools input {
float: right;
}
.wall-item-container.comment {
/*margin-top: 50px;*/
.wall-item-container.comment .contact-photo-wrapper {
margin-left: 16px;
}
.wall-item-container.comment .contact-photo {
width: 32px;
height: 32px;
margin-left: 16px;
/*background: url(../../../images/icons/22/user.png) no-repeat center center;*/
}
.wall-item-container.comment .contact-photo-menu-button {
top: 15px !important;
left: 15px !important;
left: 0px !important;
}
.wall-item-container.comment .wall-item-links {
padding-left: 12px;
}
/* 'tag' item type */
.wall-item-container.item-tag .wall-item-content {
opacity: 0.5;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.wall-item-container.item-tag .contact-photo-wrapper {
margin-left: 32px;
}
.wall-item-container.item-tag .contact-photo {
width: 16px;
height: 16px;
}
.wall-item-container.item-tag .contact-photo-menu-button {
top: 15px !important;
left: 15px !important;
}
.wall-item-comment-wrapper {
margin: 30px 2em 2em 60px;
margin: 1em 2em 1em 60px;
}
.wall-item-comment-wrapper .comment-edit-photo {
display: none;
@ -961,6 +994,9 @@ section {
#jot-preview-content .tread-wrapper {
background-color: #ddffdd;
}
.hide-comments-outer {
margin-bottom: 0.8em;
}
.wall-item-tags {
padding-top: 5px;
}
@ -1087,7 +1123,7 @@ section {
padding: 0px;
height: 40px;
overflow: none;
width: 800px;
width: 770px;
background-color: #009100;
border-bottom: 2px solid #9eabb0;
}
@ -1162,7 +1198,7 @@ section {
border: 0px;
margin: 0px;
height: 20px;
width: 700px;
width: 500px;
font-weight: bold;
border: 1px solid #ffffff;
}
@ -1179,13 +1215,26 @@ section {
border: 1px solid #999999;
}
#jot #character-counter {
width: 80px;
width: 40px;
float: right;
text-align: right;
height: 20px;
line-height: 20px;
padding-right: 20px;
}
#jot #jot-category {
border: 0px;
margin: 0px;
height: 20px;
width: 200px;
border: 1px solid #ffffff;
}
#jot #jot-category:hover {
border: 1px solid #999999;
}
#jot #jot-category:focus {
border: 1px solid #999999;
}
/** buttons **/
/*input[type="submit"] {
border: 0px;
@ -1592,44 +1641,19 @@ ul.tabs li .active {
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
/* mail view */
/*
.mail-conv-sender,
.mail-conv-detail {
float: left;
/* theme screenshot */
.screenshot,
#theme-preview {
position: absolute;
width: 202px;
left: 70%;
top: 50px;
}
.mail-conv-detail {
margin-left: 20px;
width: 500px;
.screenshot img,
#theme-preview img {
width: 200px;
height: 150px;
}
.mail-conv-subject {
font-size: 1.4em;
margin: 10px 0;
}
.mail-conv-outside-wrapper-end {
clear: both;
}
.mail-conv-outside-wrapper {
margin-top: 30px;
}
.mail-conv-delete-wrapper {
float: right;
margin-right: 30px;
margin-top: 15px;
}
.mail-conv-break {
clear: both;
}
.mail-conv-delete-icon {
border: none;
}
*/
/* page footer */
footer {
height: 100px;

View file

@ -20,6 +20,9 @@
&.type-image{ background-image: url("../../../images/icons/@{size}/image.png"); }
&.type-text { background-image: url("../../../images/icons/@{size}/text.png"); }
&.language { background-image: url("icons/language.png"); }
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 849 B

View file

@ -1,9 +1,11 @@
<form id="profile-jot-form" action="$action" method="post">
<div id="jot">
<div id="profile-jot-desc" class="jothidden">&nbsp;</div>
<input name="title" id="jot-title" type="text" placeholder="$placeholdertitle" value="$title" class="jothidden" style="display:none" />
<input name="title" id="jot-title" type="text" placeholder="$placeholdertitle" title="$placeholdertitle" value="$title" class="jothidden" style="display:none" /><input name="category" id="jot-category" type="text" placeholder="$placeholdercategory" title="$placeholdercategory" value="$category" class="jothidden" style="display:none" />
<div id="character-counter" class="grey jothidden"></div>
<input type="hidden" name="type" value="$ptyp" />
<input type="hidden" name="profile_uid" value="$profile_uid" />
<input type="hidden" name="return" value="$return_path" />
@ -20,8 +22,10 @@
<li><a id="profile-link" ondragenter="return linkdropper(event);" ondragover="return linkdropper(event);" ondrop="linkdrop(event);" onclick="jotGetLink(); return false;" title="$weblink">$shortweblink</a></li>
<li><a id="profile-video" onclick="jotVideoURL();return false;" title="$gvideo">$shortvideo</a></li>
<li><a id="profile-audio" onclick="jotAudioURL();return false;" title="$audio">$shortaudio</a></li>
<!-- TODO: waiting for a better placement
<li><a id="profile-location" onclick="jotGetLocation();return false;" title="$setloc">$shortsetloc</a></li>
<li><a id="profile-nolocation" onclick="jotClearLocation();return false;" title="$noloc">$shortnoloc</a></li>
-->
<li><a id="jot-preview-link" onclick="preview_post(); return false;" title="$preview">$preview</a></li>
$jotplugins

View file

@ -43,6 +43,7 @@
<li id="nav-notifications-linkmenu" class="nav-menu-icon"><a href="$nav.notifications.0" rel="#nav-notifications-menu" title="$nav.notifications.1"><span class="icon s22 notify">$nav.notifications.1</span></a>
<span id="notify-update" class="nav-notify"></span>
<ul id="nav-notifications-menu" class="menu-popup">
<!-- TODO: better icons! -->
<li id="nav-notifications-mark-all" class="toolbar"><a href="#" onclick="notifyMarkAll(); return false;" title="$nav.notifications.mark.1"><span class="icon s10 edit"></span></a></a><a href="$nav.notifications.all.0" title="$nav.notifications.all.1"><span class="icon s10 plugin"></span></a></li>
<li class="empty">$emptynotifications</li>
</ul>
@ -91,3 +92,4 @@
<li><a href="{0}"><img src="{1}">{2} <span class="notif-when">{3}</span></a></li>
</ul>
<div style="position: fixed; top: 3px; left: 5px; z-index:9999">$langselector</div>

View file

@ -87,6 +87,10 @@ code {
/* popup notifications */
#jGrowl.top-right {
top: 30px;
right: 15px;
}
div.jGrowl div.notice {
background: @NoticeBackgroundColor url("../../../images/icons/48/notice.png") no-repeat 5px center;
color: @NoticeColor;
@ -270,7 +274,7 @@ ul.menu-popup {
/* aside */
/* aside 230px*/
aside {
display: table-cell;
vertical-align: top;
@ -403,11 +407,11 @@ aside {
}
/* section */
/* section 800px */
section {
display: table-cell;
vertical-align: top;
width: 800px;
width: 770px;
padding:0px 20px 0px 10px;
}
@ -417,14 +421,15 @@ section {
position: relative;
padding: 10px;
margin-bottom: 20px;
width: 780px;
width: 750px;
border-bottom: 1px solid @ThreadBottomBorderColor;
}
.wall-item-decor { position: absolute; left: 97%; top: -10px; width: 16px;}
.unstarred { display: none; }
.wall-item-container {
display: table;
width: 780px;
width: 750px;
.wall-item-item,
.wall-item-bottom { display: table-row; }
@ -478,19 +483,35 @@ section {
.wall-item-container.comment {
/*margin-top: 50px;*/
.contact-photo { width: 32px; height: 32px; margin-left: 16px;
/*background: url(../../../images/icons/22/user.png) no-repeat center center;*/
.contact-photo-wrapper { margin-left: 16px; }
.contact-photo {
width: 32px; height: 32px;
}
.contact-photo-menu-button {
top: 15px !important;
left: 0px !important;
}
.wall-item-links { padding-left: 12px; }
}
/* 'tag' item type */
.wall-item-container.item-tag {
.wall-item-content {
.opaque(0.5);
}
.contact-photo-wrapper { margin-left: 32px; }
.contact-photo {
width: 16px; height: 16px;
}
.contact-photo-menu-button {
top: 15px !important;
left: 15px !important;
}
.wall-item-links { padding-left: 12px; }
}
.wall-item-comment-wrapper {
margin: 30px 2em 2em 60px;
margin: 1em 2em 1em 60px;
.comment-edit-photo { display: none; }
textarea {
height: 1em; width: 100%; font-size: 10px;
@ -522,13 +543,12 @@ section {
.wall-item-container { width: 700px; }
.tread-wrapper { width: 700px; padding: 0; margin: 10px 0;}
}
.shiny { border-right:10px solid @ShinyBorderColor; }
#jot-preview-content .tread-wrapper { background-color: @JotPreviewBackgroundColor; }
.hide-comments-outer {margin-bottom: 0.8em; }
.wall-item-tags { padding-top: 5px; }
.tag {
@ -638,7 +658,7 @@ section {
#jot-tools {
margin: 0px; padding: 0px;
height: 40px; overflow: none;
width: 800px;
width: 770px;
background-color: @JotToolsBackgroundColor;
border-bottom: 2px solid @JotToolsBorderColor;
li {
@ -710,7 +730,7 @@ section {
border: 0px;
margin: 0px;
height: 20px;
width: 700px;
width: 500px;
font-weight: bold;
border: 1px solid @BodyBackground;
@ -727,7 +747,7 @@ section {
}
#character-counter {
width: 80px;
width: 40px;
float: right;
text-align: right;
height: 20px;
@ -735,6 +755,15 @@ section {
padding-right: 20px;
}
#jot-category {
border: 0px;
margin: 0px;
height: 20px;
width: 200px;
border: 1px solid @BodyBackground;
&:hover { border: 1px solid @CommentBoxEmptyBorderColor }
&:focus { border: 1px solid @CommentBoxEmptyBorderColor }
}
}
@ -1106,45 +1135,14 @@ ul.tabs {
}
/* mail view */
/*
.mail-conv-sender,
.mail-conv-detail {
float: left;
/* theme screenshot */
.screenshot, #theme-preview {
position: absolute;
width:202px;
left: 70%;
top: 50px;
img { width: 200px; height: 150px; }
}
.mail-conv-detail {
margin-left: 20px;
width: 500px;
}
.mail-conv-subject {
font-size: 1.4em;
margin: 10px 0;
}
.mail-conv-outside-wrapper-end {
clear: both;
}
.mail-conv-outside-wrapper {
margin-top: 30px;
}
.mail-conv-delete-wrapper {
float: right;
margin-right: 30px;
margin-top: 15px;
}
.mail-conv-break {
clear: both;
}
.mail-conv-delete-icon {
border: none;
}
*/
/* page footer */
footer { height: 100px; display: table-row; }

View file

@ -1,11 +1,18 @@
<?php
$color = false;
$color=false;
$quattro_align=false;
$site_color = get_config("quattro","color");
$site_quattro_align = get_config("quattro", "align" );
if (local_user()) {
$color = get_pconfig(local_user(), "quattro","color");
$quattro_align = get_pconfig(local_user(), 'quattro', 'align' );
}
if ($color===false) $color=$site_color;
if ($color===false) $color="dark";
if ($quattro_align===false) $quattro_align=$site_quattro_align;
if (file_exists("$THEMEPATH/$color/style.css")){
echo file_get_contents("$THEMEPATH/$color/style.css");

View file

@ -0,0 +1,12 @@
<?php
/**
* Name: Quattro
* Version: 0.5
* Author: Fabio <http://kirgroup.com/profile/fabrixxm>
* Maintainer: Fabio <http://kirgroup.com/profile/fabrixxm>
* Maintainer: Tobias <https://diekershoff.homeunix.net/friendika/profile/tobias>
*/
$a->theme_info = array();

View file

@ -0,0 +1,23 @@
<div class="wall-item-container item-tag $item.indent">
<div class="wall-item-item">
<div class="wall-item-info">
<div class="contact-photo-wrapper">
<a href="$item.profile_url" target="redir" title="$item.linktitle" class="contact-photo-link" id="wall-item-photo-link-$item.id">
<img src="$item.thumb" class="contact-photo$item.sparkle" id="wall-item-photo-$item.id" alt="$item.name" />
</a>
<ul class="contact-menu menu-popup" id="wall-item-photo-menu-$item.id">
$item.item_photo_menu
</ul>
</div>
<div class="wall-item-location">$item.location</div>
</div>
<div class="wall-item-content">
$item.body
</div>
</div>
</div>
<div class="wall-item-comment-wrapper" >
$item.comment
</div>