From 63628910b2cda7e9b495b3d32abbd0430839c594 Mon Sep 17 00:00:00 2001 From: Zach Prezkuta Date: Sat, 4 Aug 2012 14:01:16 -0600 Subject: [PATCH] -- Allow themes to specify an "app" name for posted status updates and comments (via a generic and translateable $sourceapp parameter) -- More HTML cleanup in TPL files -- Various Frost bug fixes and tweaks --- boot.php | 1 + include/conversation.php | 3 +- mod/content.php | 1 + mod/editpost.php | 6 ++-- mod/photos.php | 3 ++ view/birthdays_reminder.tpl | 2 +- view/events_reminder.tpl | 2 +- view/theme/frost-mobile/TODO | 2 ++ view/theme/frost-mobile/comment_item.tpl | 1 + view/theme/frost-mobile/jot.tpl | 1 + view/theme/frost-mobile/nav.tpl | 8 +++--- view/theme/frost-mobile/style.css | 35 +++++++++++++++--------- view/theme/frost-mobile/theme.php | 3 ++ view/theme/frost/js/acl.js | 2 +- view/theme/frost/js/acl.min.js | 2 +- view/theme/frost/nav.tpl | 8 +++--- view/theme/frost/style.css | 10 +++---- 17 files changed, 56 insertions(+), 34 deletions(-) diff --git a/boot.php b/boot.php index 25f89abf4..d96ebcade 100644 --- a/boot.php +++ b/boot.php @@ -349,6 +349,7 @@ if(! class_exists('App')) { public $plugins; public $apps = array(); public $identities; + public $sourcename = ''; public $nav_sel; diff --git a/include/conversation.php b/include/conversation.php index 9047a9779..3c3169ec5 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -703,6 +703,7 @@ function conversation(&$a, $items, $mode, $update, $preview = false) { '$edurl' => t('Link'), '$edvideo' => t('Video'), '$preview' => t('Preview'), + '$sourceapp' => t($a->sourcename), '$ww' => (($mode === 'network') ? $commentww : '') )); } @@ -1163,7 +1164,7 @@ function status_editor($a,$x, $notes_cid = 0, $popup=false) { '$bang' => $x['bang'], '$profile_uid' => $x['profile_uid'], '$preview' => t('Preview'), - '$mobileapp' => t('Friendica mobile web'), + '$sourceapp' => t($a->sourcename), )); diff --git a/mod/content.php b/mod/content.php index 5f3e954f6..e6789860d 100644 --- a/mod/content.php +++ b/mod/content.php @@ -698,6 +698,7 @@ function render_content(&$a, $items, $mode, $update, $preview = false) { '$edurl' => t('Link'), '$edvideo' => t('Video'), '$preview' => t('Preview'), + '$sourceapp' => t($a->sourcename), '$ww' => (($mode === 'network') ? $commentww : '') )); } diff --git a/mod/editpost.php b/mod/editpost.php index 4270ef113..b44afe245 100644 --- a/mod/editpost.php +++ b/mod/editpost.php @@ -123,8 +123,8 @@ function editpost_content(&$a) { '$jotnets' => $jotnets, '$title' => $itm[0]['title'], '$placeholdertitle' => t('Set title'), - '$category' => file_tag_file_to_list($itm[0]['file'], 'category'), - '$placeholdercategory' => t('Categories (comma-separated list)'), + '$category' => file_tag_file_to_list($itm[0]['file'], 'category'), + '$placeholdercategory' => t('Categories (comma-separated list)'), '$emtitle' => t('Example: bob@example.com, mary@example.com'), '$lockstate' => $lockstate, '$acl' => '', // populate_acl((($group) ? $group_acl : $a->user), $celeb), @@ -132,7 +132,7 @@ function editpost_content(&$a) { '$profile_uid' => $_SESSION['uid'], '$preview' => t('Preview'), '$jotplugins' => $jotplugins, - '$mobileapp' => t('Friendica mobile web'), + '$sourceapp' => t($a->sourcename), )); return $o; diff --git a/mod/photos.php b/mod/photos.php index af40ea303..fa2ddb347 100644 --- a/mod/photos.php +++ b/mod/photos.php @@ -1324,6 +1324,7 @@ function photos_content(&$a) { '$comment' => t('Comment'), '$submit' => t('Submit'), '$preview' => t('Preview'), + '$sourceapp' => t($a->sourcename), '$ww' => '' )); } @@ -1363,6 +1364,7 @@ function photos_content(&$a) { '$myphoto' => $contact['thumb'], '$comment' => t('Comment'), '$submit' => t('Submit'), + '$sourceapp' => t($a->sourcename), '$ww' => '' )); } @@ -1394,6 +1396,7 @@ function photos_content(&$a) { '$myphoto' => $contact['thumb'], '$comment' => t('Comment'), '$submit' => t('Submit'), + '$sourceapp' => t($a->sourcename), '$ww' => '' )); } diff --git a/view/birthdays_reminder.tpl b/view/birthdays_reminder.tpl index 8db7d22f4..971680a8c 100644 --- a/view/birthdays_reminder.tpl +++ b/view/birthdays_reminder.tpl @@ -3,7 +3,7 @@ {{ endif }} diff --git a/view/events_reminder.tpl b/view/events_reminder.tpl index f641a5faf..9746898c7 100644 --- a/view/events_reminder.tpl +++ b/view/events_reminder.tpl @@ -3,7 +3,7 @@ {{ endif }} diff --git a/view/theme/frost-mobile/TODO b/view/theme/frost-mobile/TODO index cc35b6305..40f73ac3f 100644 --- a/view/theme/frost-mobile/TODO +++ b/view/theme/frost-mobile/TODO @@ -16,6 +16,8 @@ Photo album display? - Embedded video playback is way too big +- It would be better to allow the "source" specification for posts and comments to be anything the theme author wants--but how to make translateable? + - Needs to be faster! - Reduce DOM elements (~2400 for 10 items, ~8400 for 40 items) - Automatically set limit of 10 items for Network and Profile? diff --git a/view/theme/frost-mobile/comment_item.tpl b/view/theme/frost-mobile/comment_item.tpl index b5b0e9d28..5aa84dc10 100755 --- a/view/theme/frost-mobile/comment_item.tpl +++ b/view/theme/frost-mobile/comment_item.tpl @@ -13,6 +13,7 @@
+ diff --git a/view/theme/frost-mobile/jot.tpl b/view/theme/frost-mobile/jot.tpl index dcb542735..f5c080a6c 100644 --- a/view/theme/frost-mobile/jot.tpl +++ b/view/theme/frost-mobile/jot.tpl @@ -13,6 +13,7 @@ +
diff --git a/view/theme/frost-mobile/nav.tpl b/view/theme/frost-mobile/nav.tpl index 54f7b54ca..232583fea 100644 --- a/view/theme/frost-mobile/nav.tpl +++ b/view/theme/frost-mobile/nav.tpl @@ -19,16 +19,16 @@ $nav.register.1 {{ endif }} + {{ if $nav.settings }} +
  • $nav.settings.1
  • + {{ endif }} + {{ if $nav.manage }}
  • $nav.manage.1
  • {{ endif }} - {{ if $nav.settings }} -
  • $nav.settings.1
  • - {{ endif }} - {{ if $nav.profiles }}
  • $nav.profiles.1
  • {{ endif }} diff --git a/view/theme/frost-mobile/style.css b/view/theme/frost-mobile/style.css index ea80faa47..8b1bbd860 100644 --- a/view/theme/frost-mobile/style.css +++ b/view/theme/frost-mobile/style.css @@ -1357,7 +1357,7 @@ input#dfrn-url { } .wall-item-body code { - overflow: hidden; + overflow: auto; } .comment .wall-item-body { @@ -1435,7 +1435,7 @@ input#dfrn-url { height: 150px; /* width: 350px; overflow: auto;*/ - width: 190px; + width: 250px; margin-top: 15px; margin-left: 20px; } @@ -1688,8 +1688,8 @@ input#dfrn-url { margin-right: 5px; margin-bottom: 10px;*/ /* float: left;*/ - margin-right: 15px; - margin-left: 15px; +/* margin-right: 15px; + margin-left: 15px;*/ } .pager_first, @@ -1698,14 +1698,10 @@ input#dfrn-url { display: none; } -.pager_first a, +/*.pager_first a, .pager_last a, .pager_prev a, .pager_next a { -/* padding-top: 2px; - padding-bottom: 2px; - padding-left: 4px; - padding-right: 8px;*/ padding-top: 5px; padding-bottom: 5px; padding-left: 25px; @@ -1725,6 +1721,16 @@ input#dfrn-url { padding-left: 9px; padding-right: 18px; text-decoration: none; +}*/ + +.pager_prev a, +.pager_next a { + font-size: 1.5em; + padding: 0.2em 1em; + border: 1px solid #aaa; + border-radius: 10px; + -moz-border-radius: 10px; + -webkit-border-radius: 10px; } .pager_current { @@ -2895,7 +2901,7 @@ aside input[type='text'] { } #event-summary { - width: 400px; + width: 280px; } .vevent { @@ -2934,13 +2940,16 @@ aside input[type='text'] { } .event-start, .event-end { + font-size: 14px; margin-left: 10px; - width: 330px; + width: 280px; clear: both; + padding-bottom: 1.5em; } .event-start .dtstart, .event-end .dtend { - float: right; + clear: both; + float: left; } .event-list-date { @@ -3505,7 +3514,7 @@ aside input[type='text'] { background-repeat: no-repeat; opacity: 0.5; } -.link { display: none; background-position: -144px 0px;} +.icon.link { display: none; background-position: -144px 0px;} /*.globe { background-position: 0px -16px;}*/ .icon.globe { diff --git a/view/theme/frost-mobile/theme.php b/view/theme/frost-mobile/theme.php index e2cbae29f..df655c9fc 100644 --- a/view/theme/frost-mobile/theme.php +++ b/view/theme/frost-mobile/theme.php @@ -22,4 +22,7 @@ function frost_mobile_init(&$a) { if( $a->module === 'login' ) $a->page['end'] .= ''; + + $a->sourcename = 'Friendica mobile web'; + } diff --git a/view/theme/frost/js/acl.js b/view/theme/frost/js/acl.js index 2ea559636..9675588af 100644 --- a/view/theme/frost/js/acl.js +++ b/view/theme/frost/js/acl.js @@ -11,7 +11,7 @@ function ACL(backend_url, preset){ that.deny_cid = (preset[2] || []); that.deny_gid = (preset[3] || []); that.group_uids = []; - that.nw = 4; //items per row. should be calulated from #acl-list.width + that.nw = 3; //items per row. should be calulated from #acl-list.width that.list_content = $j("#acl-list-content"); that.item_tpl = unescape($j(".acl-list-item[rel=acl-template]").html()); diff --git a/view/theme/frost/js/acl.min.js b/view/theme/frost/js/acl.min.js index 6a3518d9d..fe69e5189 100644 --- a/view/theme/frost/js/acl.min.js +++ b/view/theme/frost/js/acl.min.js @@ -1 +1 @@ -function ACL(e,t){that=this,that.url=e,that.kp_timer=null,t==undefined&&(t=[]),that.allow_cid=t[0]||[],that.allow_gid=t[1]||[],that.deny_cid=t[2]||[],that.deny_gid=t[3]||[],that.group_uids=[],that.nw=4,that.list_content=$j("#acl-list-content"),that.item_tpl=unescape($j(".acl-list-item[rel=acl-template]").html()),that.showall=$j("#acl-showall"),t.length==0&&that.showall.addClass("selected"),that.showall.click(that.on_showall),$j(".acl-button-show").live("click",that.on_button_show),$j(".acl-button-hide").live("click",that.on_button_hide),$j("#acl-search").keypress(that.on_search),$j("#acl-wrapper").parents("form").submit(that.on_submit),that.get(0,100)}ACL.prototype.on_submit=function(){aclfileds=$j("#acl-fields").html(""),$j(that.allow_gid).each(function(e,t){aclfileds.append("")}),$j(that.allow_cid).each(function(e,t){aclfileds.append("")}),$j(that.deny_gid).each(function(e,t){aclfileds.append("")}),$j(that.deny_cid).each(function(e,t){aclfileds.append("")})},ACL.prototype.search=function(){var e=$j("#acl-search").val();that.list_content.html(""),that.get(0,100,e)},ACL.prototype.on_search=function(e){that.kp_timer&&clearTimeout(that.kp_timer),that.kp_timer=setTimeout(that.search,1e3)},ACL.prototype.on_showall=function(e){return e.preventDefault(),e.stopPropagation(),that.showall.hasClass("selected")?!1:(that.showall.addClass("selected"),that.allow_cid=[],that.allow_gid=[],that.deny_cid=[],that.deny_gid=[],that.update_view(),!1)},ACL.prototype.on_button_show=function(e){return e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation(),that.set_allow($j(this).parent().attr("id")),!1},ACL.prototype.on_button_hide=function(e){return e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation(),that.set_deny($j(this).parent().attr("id")),!1},ACL.prototype.set_allow=function(e){type=e[0],id=parseInt(e.substr(1));switch(type){case"g":that.allow_gid.indexOf(id)<0?that.allow_gid.push(id):that.allow_gid.remove(id),that.deny_gid.indexOf(id)>=0&&that.deny_gid.remove(id);break;case"c":that.allow_cid.indexOf(id)<0?that.allow_cid.push(id):that.allow_cid.remove(id),that.deny_cid.indexOf(id)>=0&&that.deny_cid.remove(id)}that.update_view()},ACL.prototype.set_deny=function(e){type=e[0],id=parseInt(e.substr(1));switch(type){case"g":that.deny_gid.indexOf(id)<0?that.deny_gid.push(id):that.deny_gid.remove(id),that.allow_gid.indexOf(id)>=0&&that.allow_gid.remove(id);break;case"c":that.deny_cid.indexOf(id)<0?that.deny_cid.push(id):that.deny_cid.remove(id),that.allow_cid.indexOf(id)>=0&&that.allow_cid.remove(id)}that.update_view()},ACL.prototype.update_view=function(){that.allow_gid.length==0&&that.allow_cid.length==0&&that.deny_gid.length==0&&that.deny_cid.length==0?(that.showall.addClass("selected"),$j("#jot-perms-icon").removeClass("lock").addClass("unlock"),$j("#jot-public").show(),$j(".profile-jot-net input").attr("disabled",!1),typeof editor!="undefined"&&editor!=0&&$j("#profile-jot-desc").html(ispublic)):(that.showall.removeClass("selected"),$j("#jot-perms-icon").removeClass("unlock").addClass("lock"),$j("#jot-public").hide(),$j(".profile-jot-net input").attr("disabled","disabled"),$j("#profile-jot-desc").html(" ")),$j("#acl-list-content .acl-list-item").each(function(){$j(this).removeClass("groupshow grouphide")}),$j("#acl-list-content .acl-list-item").each(function(){itemid=$j(this).attr("id"),type=itemid[0],id=parseInt(itemid.substr(1)),btshow=$j(this).children(".acl-button-show").removeClass("selected"),bthide=$j(this).children(".acl-button-hide").removeClass("selected");switch(type){case"g":var e="";that.allow_gid.indexOf(id)>=0&&(btshow.addClass("selected"),bthide.removeClass("selected"),e="groupshow"),that.deny_gid.indexOf(id)>=0&&(btshow.removeClass("selected"),bthide.addClass("selected"),e="grouphide"),$j(that.group_uids[id]).each(function(t,n){e=="grouphide"&&$j("#c"+n).removeClass("groupshow");if(e!=""){var r=$j("#c"+n).attr("class");if(r==undefined)return!0;var i=r.indexOf("grouphide");i==-1&&$j("#c"+n).addClass(e)}});break;case"c":that.allow_cid.indexOf(id)>=0&&(btshow.addClass("selected"),bthide.removeClass("selected")),that.deny_cid.indexOf(id)>=0&&(btshow.removeClass("selected"),bthide.addClass("selected"))}})},ACL.prototype.get=function(e,t,n){var r={start:e,count:t,search:n};$j.ajax({type:"POST",url:that.url,data:r,dataType:"json",success:that.populate})},ACL.prototype.populate=function(e){var t=Math.ceil(e.tot/that.nw)*42;that.list_content.height(t),$j(e.items).each(function(){html="
    "+that.item_tpl+"
    ",html=html.format(this.photo,this.name,this.type,this.id,"",this.network,this.link),this.uids!=undefined&&(that.group_uids[this.id]=this.uids),that.list_content.append(html)}),that.update_view()}; \ No newline at end of file +function ACL(e,t){that=this,that.url=e,that.kp_timer=null,t==undefined&&(t=[]),that.allow_cid=t[0]||[],that.allow_gid=t[1]||[],that.deny_cid=t[2]||[],that.deny_gid=t[3]||[],that.group_uids=[],that.nw=3,that.list_content=$j("#acl-list-content"),that.item_tpl=unescape($j(".acl-list-item[rel=acl-template]").html()),that.showall=$j("#acl-showall"),t.length==0&&that.showall.addClass("selected"),that.showall.click(that.on_showall),$j(".acl-button-show").live("click",that.on_button_show),$j(".acl-button-hide").live("click",that.on_button_hide),$j("#acl-search").keypress(that.on_search),$j("#acl-wrapper").parents("form").submit(that.on_submit),that.get(0,100)}ACL.prototype.on_submit=function(){aclfileds=$j("#acl-fields").html(""),$j(that.allow_gid).each(function(e,t){aclfileds.append("")}),$j(that.allow_cid).each(function(e,t){aclfileds.append("")}),$j(that.deny_gid).each(function(e,t){aclfileds.append("")}),$j(that.deny_cid).each(function(e,t){aclfileds.append("")})},ACL.prototype.search=function(){var e=$j("#acl-search").val();that.list_content.html(""),that.get(0,100,e)},ACL.prototype.on_search=function(e){that.kp_timer&&clearTimeout(that.kp_timer),that.kp_timer=setTimeout(that.search,1e3)},ACL.prototype.on_showall=function(e){return e.preventDefault(),e.stopPropagation(),that.showall.hasClass("selected")?!1:(that.showall.addClass("selected"),that.allow_cid=[],that.allow_gid=[],that.deny_cid=[],that.deny_gid=[],that.update_view(),!1)},ACL.prototype.on_button_show=function(e){return e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation(),that.set_allow($j(this).parent().attr("id")),!1},ACL.prototype.on_button_hide=function(e){return e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation(),that.set_deny($j(this).parent().attr("id")),!1},ACL.prototype.set_allow=function(e){type=e[0],id=parseInt(e.substr(1));switch(type){case"g":that.allow_gid.indexOf(id)<0?that.allow_gid.push(id):that.allow_gid.remove(id),that.deny_gid.indexOf(id)>=0&&that.deny_gid.remove(id);break;case"c":that.allow_cid.indexOf(id)<0?that.allow_cid.push(id):that.allow_cid.remove(id),that.deny_cid.indexOf(id)>=0&&that.deny_cid.remove(id)}that.update_view()},ACL.prototype.set_deny=function(e){type=e[0],id=parseInt(e.substr(1));switch(type){case"g":that.deny_gid.indexOf(id)<0?that.deny_gid.push(id):that.deny_gid.remove(id),that.allow_gid.indexOf(id)>=0&&that.allow_gid.remove(id);break;case"c":that.deny_cid.indexOf(id)<0?that.deny_cid.push(id):that.deny_cid.remove(id),that.allow_cid.indexOf(id)>=0&&that.allow_cid.remove(id)}that.update_view()},ACL.prototype.update_view=function(){that.allow_gid.length==0&&that.allow_cid.length==0&&that.deny_gid.length==0&&that.deny_cid.length==0?(that.showall.addClass("selected"),$j("#jot-perms-icon").removeClass("lock").addClass("unlock"),$j("#jot-public").show(),$j(".profile-jot-net input").attr("disabled",!1),typeof editor!="undefined"&&editor!=0&&$j("#profile-jot-desc").html(ispublic)):(that.showall.removeClass("selected"),$j("#jot-perms-icon").removeClass("unlock").addClass("lock"),$j("#jot-public").hide(),$j(".profile-jot-net input").attr("disabled","disabled"),$j("#profile-jot-desc").html(" ")),$j("#acl-list-content .acl-list-item").each(function(){$j(this).removeClass("groupshow grouphide")}),$j("#acl-list-content .acl-list-item").each(function(){itemid=$j(this).attr("id"),type=itemid[0],id=parseInt(itemid.substr(1)),btshow=$j(this).children(".acl-button-show").removeClass("selected"),bthide=$j(this).children(".acl-button-hide").removeClass("selected");switch(type){case"g":var e="";that.allow_gid.indexOf(id)>=0&&(btshow.addClass("selected"),bthide.removeClass("selected"),e="groupshow"),that.deny_gid.indexOf(id)>=0&&(btshow.removeClass("selected"),bthide.addClass("selected"),e="grouphide"),$j(that.group_uids[id]).each(function(t,n){e=="grouphide"&&$j("#c"+n).removeClass("groupshow");if(e!=""){var r=$j("#c"+n).attr("class");if(r==undefined)return!0;var i=r.indexOf("grouphide");i==-1&&$j("#c"+n).addClass(e)}});break;case"c":that.allow_cid.indexOf(id)>=0&&(btshow.addClass("selected"),bthide.removeClass("selected")),that.deny_cid.indexOf(id)>=0&&(btshow.removeClass("selected"),bthide.addClass("selected"))}})},ACL.prototype.get=function(e,t,n){var r={start:e,count:t,search:n};$j.ajax({type:"POST",url:that.url,data:r,dataType:"json",success:that.populate})},ACL.prototype.populate=function(e){var t=Math.ceil(e.tot/that.nw)*42;that.list_content.height(t),$j(e.items).each(function(){html="
    "+that.item_tpl+"
    ",html=html.format(this.photo,this.name,this.type,this.id,"",this.network,this.link),this.uids!=undefined&&(that.group_uids[this.id]=this.uids),that.list_content.append(html)}),that.update_view()}; \ No newline at end of file diff --git a/view/theme/frost/nav.tpl b/view/theme/frost/nav.tpl index 6ae19650e..89e1168ab 100644 --- a/view/theme/frost/nav.tpl +++ b/view/theme/frost/nav.tpl @@ -19,16 +19,16 @@ $nav.register.1 {{ endif }} + {{ if $nav.settings }} +
  • $nav.settings.1
  • + {{ endif }} + {{ if $nav.manage }}
  • $nav.manage.1
  • {{ endif }} - {{ if $nav.settings }} -
  • $nav.settings.1
  • - {{ endif }} - {{ if $nav.profiles }}
  • $nav.profiles.1
  • {{ endif }} diff --git a/view/theme/frost/style.css b/view/theme/frost/style.css index 3bc9ad1cd..c27c74e95 100644 --- a/view/theme/frost/style.css +++ b/view/theme/frost/style.css @@ -1894,7 +1894,7 @@ input#dfrn-url { #acl-wrapper { - width: 690px; + width: 580px; float:left; } #acl-search { @@ -1935,7 +1935,7 @@ input#dfrn-url { } .acl-list-item { display: block; - width: 150px; + width: 170px; height: 30px; border: 1px solid #cccccc; margin: 5px; @@ -1949,10 +1949,10 @@ input#dfrn-url { } .acl-list-item p { height: 12px; font-size: 10px; margin: 0px; padding: 2px 0px 1px; overflow: hidden;} .acl-list-item a { - font-size: 8px; + font-size: 10px; /* 8px; */ display: block; - width: 40px; - height: 10px; + width: 50px; + height: 12px; float: left; color: #999999; background-color: #cccccc;