Merge pull request #1570 from rabuzarus/archive-widget
port of red matrix archive widget
This commit is contained in:
commit
4554526515
10 changed files with 209 additions and 153 deletions
|
@ -4858,6 +4858,37 @@ function first_post_date($uid,$wall = false) {
|
|||
return false;
|
||||
}
|
||||
|
||||
/* modified posted_dates() {below} to arrange the list in years */
|
||||
function list_post_dates($uid, $wall) {
|
||||
$dnow = datetime_convert('',date_default_timezone_get(),'now','Y-m-d');
|
||||
|
||||
$dthen = first_post_date($uid, $wall);
|
||||
if(! $dthen)
|
||||
return array();
|
||||
|
||||
// Set the start and end date to the beginning of the month
|
||||
$dnow = substr($dnow,0,8).'01';
|
||||
$dthen = substr($dthen,0,8).'01';
|
||||
|
||||
$ret = array();
|
||||
|
||||
// Starting with the current month, get the first and last days of every
|
||||
// month down to and including the month of the first post
|
||||
while(substr($dnow, 0, 7) >= substr($dthen, 0, 7)) {
|
||||
$dyear = intval(substr($dnow,0,4));
|
||||
$dstart = substr($dnow,0,8) . '01';
|
||||
$dend = substr($dnow,0,8) . get_dim(intval($dnow),intval(substr($dnow,5)));
|
||||
$start_month = datetime_convert('','',$dstart,'Y-m-d');
|
||||
$end_month = datetime_convert('','',$dend,'Y-m-d');
|
||||
$str = day_translate(datetime_convert('','',$dnow,'F'));
|
||||
if(! $ret[$dyear])
|
||||
$ret[$dyear] = array();
|
||||
$ret[$dyear][] = array($str,$end_month,$start_month);
|
||||
$dnow = datetime_convert('','',$dnow . ' -1 month', 'Y-m-d');
|
||||
}
|
||||
return $ret;
|
||||
}
|
||||
|
||||
function posted_dates($uid,$wall) {
|
||||
$dnow = datetime_convert('',date_default_timezone_get(),'now','Y-m-d');
|
||||
|
||||
|
@ -4896,15 +4927,27 @@ function posted_date_widget($url,$uid,$wall) {
|
|||
/* if($wall && intval(get_pconfig($uid,'system','no_wall_archive_widget')))
|
||||
return $o;*/
|
||||
|
||||
$ret = posted_dates($uid,$wall);
|
||||
$visible_years = get_pconfig($uid,'system','archive_visible_years');
|
||||
if(! $visible_years)
|
||||
$visible_years = 5;
|
||||
|
||||
$ret = list_post_dates($uid,$wall);
|
||||
|
||||
if(! count($ret))
|
||||
return $o;
|
||||
|
||||
$cutoff_year = intval(datetime_convert('',date_default_timezone_get(),'now','Y')) - $visible_years;
|
||||
$cutoff = ((array_key_exists($cutoff_year,$ret))? true : false);
|
||||
|
||||
$o = replace_macros(get_markup_template('posted_date_widget.tpl'),array(
|
||||
'$title' => t('Archives'),
|
||||
'$size' => ((count($ret) > 6) ? 6 : count($ret)),
|
||||
'$size' => $visible_years,
|
||||
'$cutoff_year' => $cutoff_year,
|
||||
'$cutoff' => $cutoff,
|
||||
'$url' => $url,
|
||||
'$dates' => $ret
|
||||
'$dates' => $ret,
|
||||
'$showmore' => t('show more')
|
||||
|
||||
));
|
||||
return $o;
|
||||
}
|
||||
|
|
|
@ -1,9 +1,47 @@
|
|||
<script>
|
||||
|
||||
function showHideDates() {
|
||||
if( $('#posted-date-dropdown').is(':visible')) {
|
||||
$('#posted-date-dropdown').hide();
|
||||
$('#posted-date-collapse').html(window.showMore);
|
||||
|
||||
}
|
||||
else {
|
||||
$('#posted-date-dropdown').show();
|
||||
$('#posted-date-collapse').html(window.showFewer);
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
<div id="datebrowse-sidebar" class="widget">
|
||||
<h3>{{$title}}</h3>
|
||||
<script>function dateSubmit(dateurl) { window.location.href = dateurl; } </script>
|
||||
<select id="posted-date-selector" name="posted-date-select" onchange="dateSubmit($(this).val());" size="{{$size}}">
|
||||
{{foreach $dates as $d}}
|
||||
<option value="{{$url}}/{{$d.1}}/{{$d.2}}" >{{$d.0}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
<script>function dateSubmit(dateurl) { window.location.href = dateurl; } </script>
|
||||
<ul id="posted-date-selector" class="datebrowse-ul">
|
||||
{{foreach $dates as $y => $arr}}
|
||||
{{if $y == $cutoff_year}}
|
||||
</ul>
|
||||
<div id="posted-date-dropdown" style="display: none;">
|
||||
<ul id="posted-date-selector-drop" class="datebrowse-ul">
|
||||
{{/if}}
|
||||
<li id="posted-date-selector-year-{{$y}}" class="tool">
|
||||
<a class="datebrowse-link" href="#" onclick="openClose('posted-date-selector-{{$y}}'); return false;">{{$y}}</a>
|
||||
</li>
|
||||
<div id="posted-date-selector-{{$y}}" style="display: none;">
|
||||
<ul class="posted-date-selector-months datebrowse-ul">
|
||||
{{foreach $arr as $d}}
|
||||
<li class="tool">
|
||||
<a class="datebrowse-link" href="#" onclick="dateSubmit('{{$url}}/{{$d.1}}/{{$d.2}}'); return false;">{{$d.0}}</a></li>
|
||||
</li>
|
||||
{{/foreach}}
|
||||
</ul>
|
||||
</div>
|
||||
{{/foreach}}
|
||||
{{if $cutoff}}
|
||||
</div>
|
||||
<ul class="datebrowse-ul">
|
||||
<li onclick="showHideDates(); return false;" id="posted-date-collapse" class="fakelink tool">{{$showmore}}</li>
|
||||
</ul>
|
||||
{{/if}}
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
@ -2026,11 +2026,11 @@ a.mail-list-link {
|
|||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.nets-ul, .fileas-ul, .categories-ul {
|
||||
.nets-ul, .fileas-ul, .categories-ul, .datebrowse-ul {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
.nets-ul li, .fileas-ul li, .categories-ul li {
|
||||
.nets-ul li, .fileas-ul li, .categories-ul li, .datebrowse-ul li {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
|
|
|
@ -2327,11 +2327,11 @@ a.mail-list-link {
|
|||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.nets-ul, .fileas-ul, .categories-ul {
|
||||
.nets-ul, .fileas-ul, .categories-ul, .datebrowse-ul {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
.nets-ul li, .fileas-ul li, .categories-ul li {
|
||||
.nets-ul li, .fileas-ul li, .categories-ul li, .datebrowse-ul li {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
|
|
|
@ -514,7 +514,6 @@ header {
|
|||
margin: 0px;
|
||||
padding: 0px;
|
||||
/*width: 100%; height: 12px; */
|
||||
|
||||
z-index: 110;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
@ -840,11 +839,13 @@ aside #dfrn-request-link:hover {
|
|||
aside #profiles-menu {
|
||||
width: 20em;
|
||||
}
|
||||
aside .posted-date-selector-months {
|
||||
margin-left: 10px;
|
||||
}
|
||||
#contact-block {
|
||||
overflow: auto;
|
||||
height: auto;
|
||||
/*.contact-block-div { width:60px; height: 60px; }*/
|
||||
|
||||
}
|
||||
#contact-block .contact-block-h4 {
|
||||
float: left;
|
||||
|
@ -926,7 +927,6 @@ aside #profiles-menu {
|
|||
margin-bottom: 2em;
|
||||
/*.action .s10 { width: 10px; overflow: hidden; padding: 0px;}
|
||||
.action .s16 { width: 16px; overflow: hidden; padding: 0px;}*/
|
||||
|
||||
}
|
||||
.widget h3 {
|
||||
padding: 0px;
|
||||
|
@ -1208,7 +1208,6 @@ section {
|
|||
height: 32px;
|
||||
margin-left: 16px;
|
||||
/*background: url(../../../images/icons/22/user.png) no-repeat center center;*/
|
||||
|
||||
}
|
||||
.comment-edit-preview .contact-photo-menu-button {
|
||||
top: 15px !important;
|
||||
|
@ -1284,15 +1283,12 @@ section {
|
|||
}*/
|
||||
.wwto {
|
||||
position: absolute !important;
|
||||
width: 25px;
|
||||
height: 25px;
|
||||
background: #FFFFFF;
|
||||
border: 2px solid #364e59;
|
||||
height: 25px;
|
||||
width: 25px;
|
||||
overflow: hidden;
|
||||
padding: 1px;
|
||||
position: absolute !important;
|
||||
top: 40px;
|
||||
left: 30px;
|
||||
-webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7);
|
||||
|
|
|
@ -514,7 +514,6 @@ header {
|
|||
margin: 0px;
|
||||
padding: 0px;
|
||||
/*width: 100%; height: 12px; */
|
||||
|
||||
z-index: 110;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
@ -840,11 +839,13 @@ aside #dfrn-request-link:hover {
|
|||
aside #profiles-menu {
|
||||
width: 20em;
|
||||
}
|
||||
aside .posted-date-selector-months {
|
||||
margin-left: 10px;
|
||||
}
|
||||
#contact-block {
|
||||
overflow: auto;
|
||||
height: auto;
|
||||
/*.contact-block-div { width:60px; height: 60px; }*/
|
||||
|
||||
}
|
||||
#contact-block .contact-block-h4 {
|
||||
float: left;
|
||||
|
@ -926,7 +927,6 @@ aside #profiles-menu {
|
|||
margin-bottom: 2em;
|
||||
/*.action .s10 { width: 10px; overflow: hidden; padding: 0px;}
|
||||
.action .s16 { width: 16px; overflow: hidden; padding: 0px;}*/
|
||||
|
||||
}
|
||||
.widget h3 {
|
||||
padding: 0px;
|
||||
|
@ -1208,7 +1208,6 @@ section {
|
|||
height: 32px;
|
||||
margin-left: 16px;
|
||||
/*background: url(../../../images/icons/22/user.png) no-repeat center center;*/
|
||||
|
||||
}
|
||||
.comment-edit-preview .contact-photo-menu-button {
|
||||
top: 15px !important;
|
||||
|
@ -1284,15 +1283,12 @@ section {
|
|||
}*/
|
||||
.wwto {
|
||||
position: absolute !important;
|
||||
width: 25px;
|
||||
height: 25px;
|
||||
background: #FFFFFF;
|
||||
border: 2px solid #364e59;
|
||||
height: 25px;
|
||||
width: 25px;
|
||||
overflow: hidden;
|
||||
padding: 1px;
|
||||
position: absolute !important;
|
||||
top: 40px;
|
||||
left: 30px;
|
||||
-webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7);
|
||||
|
|
|
@ -514,7 +514,6 @@ header {
|
|||
margin: 0px;
|
||||
padding: 0px;
|
||||
/*width: 100%; height: 12px; */
|
||||
|
||||
z-index: 110;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
@ -840,11 +839,13 @@ aside #dfrn-request-link:hover {
|
|||
aside #profiles-menu {
|
||||
width: 20em;
|
||||
}
|
||||
aside .posted-date-selector-months {
|
||||
margin-left: 10px;
|
||||
}
|
||||
#contact-block {
|
||||
overflow: auto;
|
||||
height: auto;
|
||||
/*.contact-block-div { width:60px; height: 60px; }*/
|
||||
|
||||
}
|
||||
#contact-block .contact-block-h4 {
|
||||
float: left;
|
||||
|
@ -926,7 +927,6 @@ aside #profiles-menu {
|
|||
margin-bottom: 2em;
|
||||
/*.action .s10 { width: 10px; overflow: hidden; padding: 0px;}
|
||||
.action .s16 { width: 16px; overflow: hidden; padding: 0px;}*/
|
||||
|
||||
}
|
||||
.widget h3 {
|
||||
padding: 0px;
|
||||
|
@ -1208,7 +1208,6 @@ section {
|
|||
height: 32px;
|
||||
margin-left: 16px;
|
||||
/*background: url(../../../images/icons/22/user.png) no-repeat center center;*/
|
||||
|
||||
}
|
||||
.comment-edit-preview .contact-photo-menu-button {
|
||||
top: 15px !important;
|
||||
|
@ -1284,15 +1283,12 @@ section {
|
|||
}*/
|
||||
.wwto {
|
||||
position: absolute !important;
|
||||
width: 25px;
|
||||
height: 25px;
|
||||
background: #FFFFFF;
|
||||
border: 2px solid #364e59;
|
||||
height: 25px;
|
||||
width: 25px;
|
||||
overflow: hidden;
|
||||
padding: 1px;
|
||||
position: absolute !important;
|
||||
top: 40px;
|
||||
left: 30px;
|
||||
-webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7);
|
||||
|
|
|
@ -86,9 +86,7 @@ code {
|
|||
}
|
||||
|
||||
|
||||
|
||||
/* tool */
|
||||
|
||||
.tool {
|
||||
height: auto; overflow: auto;
|
||||
.label { float: left;}
|
||||
|
@ -97,8 +95,6 @@ code {
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/* popup notifications */
|
||||
#jGrowl.top-right {
|
||||
top: 30px;
|
||||
|
@ -144,6 +140,7 @@ header {
|
|||
#logo-text { font-size: 22px }
|
||||
}
|
||||
}
|
||||
|
||||
/* nav */
|
||||
nav {
|
||||
width: 100%; height: 32px;
|
||||
|
@ -302,8 +299,6 @@ ul.menu-popup {
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/* aside 230px*/
|
||||
aside {
|
||||
display: table-cell;
|
||||
|
@ -354,7 +349,7 @@ aside {
|
|||
|
||||
#profiles-menu { width: 20em; }
|
||||
|
||||
|
||||
.posted-date-selector-months { margin-left: 10px; }
|
||||
}
|
||||
|
||||
#contact-block {
|
||||
|
@ -666,18 +661,16 @@ section {
|
|||
|
||||
.wwto {
|
||||
position: absolute !important;
|
||||
width: 25px; height: 25px;
|
||||
background: #FFFFFF;
|
||||
border: 2px solid @Metalic3;
|
||||
height: 25px;
|
||||
width: 25px;
|
||||
overflow: hidden;
|
||||
padding: 1px;
|
||||
position: absolute !important;
|
||||
top: 40px;
|
||||
left: 30px;
|
||||
|
||||
.shadow(0px, 0px)
|
||||
.shadow(0px, 0px);
|
||||
}
|
||||
.wwto .contact-photo { width: 25px; height: 25px; }
|
||||
|
||||
|
@ -900,7 +893,6 @@ span[id^="showmore-wrap"] {
|
|||
width: 100%;
|
||||
margin: 0px 2em 20px 0px;
|
||||
|
||||
|
||||
.profile-jot-text {
|
||||
height: 1em; width: 99%; font-size: 10px;
|
||||
color: @CommentBoxEmptyColor;
|
||||
|
@ -1039,7 +1031,6 @@ span[id^="showmore-wrap"] {
|
|||
}
|
||||
|
||||
|
||||
|
||||
#acl-wrapper {
|
||||
width: 690px;
|
||||
float:left;
|
||||
|
@ -1181,7 +1172,6 @@ ul.tabs {
|
|||
overflow: auto;
|
||||
width: 100%;
|
||||
|
||||
|
||||
label {
|
||||
float: left;
|
||||
width: 200px;
|
||||
|
@ -1203,7 +1193,6 @@ ul.tabs {
|
|||
|
||||
}
|
||||
|
||||
|
||||
.onoff {
|
||||
float: left;
|
||||
width: 80px;
|
||||
|
@ -1588,7 +1577,6 @@ footer { height: 100px; display: table-row; }
|
|||
}
|
||||
|
||||
/* edit buttons for comments */
|
||||
|
||||
.icon.dim { opacity: 0.3;filter:alpha(opacity=30); }
|
||||
.comment-edit-bb {
|
||||
list-style: none;
|
||||
|
@ -1662,7 +1650,6 @@ footer { height: 100px; display: table-row; }
|
|||
cursor:move;
|
||||
.roundbottom();
|
||||
.shadow();
|
||||
|
||||
}
|
||||
|
||||
/* the input field */
|
||||
|
@ -1673,4 +1660,3 @@ footer { height: 100px; display: table-row; }
|
|||
border: 0px;
|
||||
color: @FieldHelpColor;
|
||||
}
|
||||
|
||||
|
|
|
@ -945,13 +945,14 @@ ul .sidebar-group-li .icon {
|
|||
width: 12px;
|
||||
}
|
||||
|
||||
.nets-ul, .fileas-ul, .categories-ul {
|
||||
.nets-ul, .fileas-ul, .categories-ul, .datebrowse-ul {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
.nets-ul li,
|
||||
.fileas-ul li,
|
||||
.categories-ul li {
|
||||
.categories-ul li,
|
||||
.datebrowse-link {
|
||||
}
|
||||
|
||||
.nets-link {
|
||||
|
@ -4605,10 +4606,6 @@ div #datebrowse-sidebar.widget {
|
|||
|
||||
#id_npassword {}
|
||||
|
||||
#posted-date-selector {
|
||||
margin-left: 33px;
|
||||
}
|
||||
|
||||
#hide-comments-page-widget {
|
||||
margin-left: 40px;
|
||||
}
|
||||
|
|
|
@ -427,12 +427,16 @@ a.sidebar-group-element {
|
|||
color: #737373;
|
||||
}
|
||||
|
||||
#follow-sidebar form, #peoplefind-sidebar form, #netsearch-box form, #posted-date-selector {
|
||||
#follow-sidebar form, #peoplefind-sidebar form, #netsearch-box form {
|
||||
margin-left: 10px;
|
||||
margin-top: 3px;
|
||||
margin-bottom: 3px;
|
||||
}
|
||||
|
||||
.posted-date-selector-months {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
#sidebar-ungrouped, .side-link {
|
||||
padding-top: 5px;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue