Merge branch 'dev' of https://github.com/redmatrix/hubzilla into dev_merge

This commit is contained in:
zotlabs 2016-12-13 15:15:37 -08:00
commit 23823811e9
11 changed files with 11629 additions and 7839 deletions

View file

@ -407,11 +407,20 @@
tocUl.removeClass(); // Classes are automatically added to <ul> elements by something else
tocUl.toc({content: "#doco-content", headings: "h1"});
tocUl.addClass('toc-content sub-menu');
if( $(window).height() > 499) {
tocUl.attr('id', 'doco-side-toc');
if( $(window).width() > 768) {
tocUl.sticky({topSpacing:$('nav').outerHeight(true), zIndex: 1000});
}
}
});
$( window ).resize(function() {
if($(window).width() < 768 ) {
$( "#doco-side-toc" ).unstick();
} else {
$( "#doco-side-toc" ).sticky({topSpacing:$('nav').outerHeight(true), zIndex: 1000});
}
});
});

View file

@ -898,87 +898,17 @@ function widget_chatroom_members() {
}
function widget_wiki_list($arr) {
require_once("include/wiki.php");
$channel = null;
if (argc() < 2 && local_channel()) {
// This should not occur because /wiki should redirect to /wiki/channel ...
$channel = \App::get_channel();
} else {
$channel = channelx_by_nick(argv(1)); // Channel being viewed by observer
}
if (!$channel) {
return '';
}
// init() should have forced the URL to redirect to /wiki/channel so assume argc() > 1
$nick = argv(1);
$owner = channelx_by_nick($nick); // The channel who owns the wikis being viewed
// Determine if the observer is the channel owner so the ACL dialog can be populated
if (local_channel() === intval($owner['channel_id'])) {
// Obtain the default permission settings of the channel
$owner_acl = array(
'allow_cid' => $owner['channel_allow_cid'],
'allow_gid' => $owner['channel_allow_gid'],
'deny_cid' => $owner['channel_deny_cid'],
'deny_gid' => $owner['channel_deny_gid']
);
// Initialize the ACL to the channel default permissions
$x = array(
'lockstate' => (( $owner['channel_allow_cid'] ||
$owner['channel_allow_gid'] ||
$owner['channel_deny_cid'] ||
$owner['channel_deny_gid']) ? 'lock' : 'unlock'
),
'acl' => populate_acl($owner_acl),
'allow_cid' => acl2json($owner_acl['allow_cid']),
'allow_gid' => acl2json($owner_acl['allow_gid']),
'deny_cid' => acl2json($owner_acl['deny_cid']),
'deny_gid' => acl2json($owner_acl['deny_gid']),
'bang' => ''
);
} else {
// Not the channel owner
$owner_acl = $x = array();
}
if(argc()>1) {
$activeWikiURLname = argv(2);
} else {
$activeWikiURLname = '';
}
logger($activeWikiURLname, LOGGER_DEBUG);
$wikis = wiki_list($channel, get_observer_hash());
foreach($wikis['wikis'] as &$w) {
if($w['urlName'] === $activeWikiURLname) {
$w['active'] = true;
} else {
$w['active'] = false;
}
}
if ($wikis) {
return replace_macros(get_markup_template('wikilist_widget.tpl'), array(
'$header' => t('Wiki List'),
'$channel' => $channel['channel_address'],
'$wikis' => $wikis['wikis'],
// If the observer is the local channel owner, show the wiki controls
'$owner' => ((local_channel() && local_channel() === intval(\App::$profile['uid'])) ? true : false),
'$edit' => t('Edit'),
'$download' => t('Download'),
'$view' => t('View'),
'$addnew' => t('Create new wiki'),
'$create' => t('Create'),
'$wikiName' => array('wikiName', t('Wiki name')),
'$lockstate' => $x['lockstate'],
'$acl' => $x['acl'],
'$allow_cid' => $x['allow_cid'],
'$allow_gid' => $x['allow_gid'],
'$deny_cid' => $x['deny_cid'],
'$deny_gid' => $x['deny_gid'],
'$bang' => $x['bang'],
'$notify' => array('postVisible', t('Send notification'), '', '', array(t('No'), t('Yes')))
));
}
return '';
require_once("include/wiki.php");
$channel = channelx_by_n(App::$profile_uid);
$wikis = wiki_list($channel, get_observer_hash());
if($wikis) {
return replace_macros(get_markup_template('wikilist_widget.tpl'), array(
'$header' => t('Wiki List'),
'$channel' => $channel['channel_address'],
'$wikis' => $wikis['wikis']
));
}
return '';
}
function widget_wiki_pages($arr) {
@ -1573,7 +1503,6 @@ function widget_tasklist($arr) {
function widget_helpindex($arr) {
$o .= '<div class="widget">';
//$o .= '<h3>' . t('Documentation') . '</h3>';
$level_0 = get_help_content('sitetoc');
if(! $level_0)

View file

@ -14,12 +14,13 @@ function wiki_list($channel, $observer_hash) {
intval($channel['channel_id'])
);
if($wikis) {
foreach($wikis as &$w) {
foreach($wikis as &$w) {
$w['rawName'] = get_iconfig($w, 'wiki', 'rawName');
$w['htmlName'] = get_iconfig($w, 'wiki', 'htmlName');
$w['urlName'] = get_iconfig($w, 'wiki', 'urlName');
$w['path'] = get_iconfig($w, 'wiki', 'path');
$w['mimeType'] = get_iconfig($w, 'wiki', 'mimeType');
$w['lock'] = (($w['allow_cid'] || $w['allow_gid'] || $w['deny_cid'] || $w['deny_gid']) ? true : false);
}
}
// TODO: query db for wikis the observer can access. Return with two lists, for read and write access

View file

@ -60,8 +60,7 @@ aside .nav-pills > li > a,
padding: 6px 10px;
}
.wall-item-tools .dropdown-menu,
.section-title-wrapper .dropdown-menu {
.wall-item-tools .dropdown-menu {
min-width: auto;
}

View file

@ -38,13 +38,13 @@
padding: 7px 3px 7px 10px;
}
#wikis-index th:nth-child(3),
#wikis-index td:nth-child(3){
#wikis-index th:nth-child(4),
#wikis-index td:nth-child(4){
padding: 7px 10px 7px 7px;
}
#wikis-index th:nth-child(4),
#wikis-index td:nth-child(4){
#wikis-index th:nth-child(5),
#wikis-index td:nth-child(5){
padding: 7px 10px 7px 7px;
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -53,7 +53,7 @@
}
}
}
if($('#cover-photo').length) {
if($('#cover-photo').length && $('main').css('opacity') < 1) {
$('main').css('opacity', ($(window).scrollTop()/$('#cover-photo').height()).toFixed(1));
}
});

View file

@ -7,7 +7,7 @@
<button type="button" class="btn btn-default btn-xs dropdown-toggle" data-toggle="dropdown">
<i class="fa fa-caret-down"></i>&nbsp;{{$tools_label}}
</button>
<ul class="dropdown-menu">
<ul class="dropdown-menu dropdown-menu-right">
{{if $tools}}
<li class="nav-item">
<a class="nav-link" href="{{$tools.profile.0}}"><i class="fa fa-user"></i>&nbsp;{{$tools.profile.1}}</a>
@ -32,7 +32,7 @@
{{if $lock}}
<div class="btn-group">
<button id="lockview" class="btn btn-default btn-xs dropdown-toggle" data-toggle="dropdown" title="{{$lock}}" onclick="lockview('photo',{{$id}});" ><i class="fa fa-lock"></i></button>
<ul id="panel-{{$id}}" class="lockview-panel dropdown-menu"></ul>
<ul id="panel-{{$id}}" class="lockview-panel dropdown-menu dropdown-menu-right"></ul>
</div>
{{/if}}
{{if $prevlink || $nextlink}}

View file

@ -27,9 +27,10 @@
<div class="section-content-wrapper-np">
<table id="wikis-index">
<tr>
<th width="97%">{{$name}}</th>
<th width="96%">{{$name}}</th>
<th width="1%">{{$type}}</th>
<th width="1%" class="wikis-index-tool"></th>
<th width="1%" class="wikis-index-tool"></th>
{{if $owner}}
<th width="1%"></th>
{{/if}}
@ -38,6 +39,12 @@
<tr class="wikis-index-row">
<td><a href="/wiki/{{$channel}}/{{$wiki.urlName}}/Home" title="{{$view}}"{{if $wiki.active}} class="active"{{/if}}>{{$wiki.title}}</a></td>
<td>{{$wiki.mimeType}}</td>
<td class="wiki-index-tool dropdown">
{{if $wiki.lock}}
<i class="fa fa-lock dropdown-toggle lockview" data-toggle="dropdown" onclick="lockview('item',{{$wiki.id}});"></i></button>
<ul id="panel-{{$wiki.id}}" class="lockview-panel dropdown-menu dropdown-menu-right"></ul>
{{/if}}
</td>
<td class="wiki-index-tool"><i class="fa fa-download fakelink" onclick="wiki_download_wiki('{{$wiki.resource_id}}'); return false;"></i></td>
{{if $owner}}
<td><i class="fa fa-trash-o drop-icons" onclick="wiki_delete_wiki('{{$wiki.title}}', '{{$wiki.resource_id}}'); return false;"></i></td>

View file

@ -1,45 +1,8 @@
<div id="wiki_list" class="widget">
<h3>{{$header}}</h3>
<ul class="nav nav-pills nav-stacked">
{{if $wikis}}
{{foreach $wikis as $wiki}}
<li>{{if $owner}}<a href="#" onclick="$('div[id^=\'edit-wiki-form-wrapper\']').hide(); $('div[id^=\'new-wiki-form-wrapper\']').hide(); openClose('edit-wiki-form-wrapper-{{$wiki.resource_id}}'); return false;" class="pull-right wikilist" title="{{$edit}}"><i class="fa fa-pencil"></i></a>{{/if}}
<a href="#" onclick="wiki_download_wiki('{{$wiki.resource_id}}'); return false;" title="{{$download}}" class="pull-right wikilist"><i class="fa fa-download"></i></a>
<a href="/wiki/{{$channel}}/{{$wiki.urlName}}/Home" title="{{$view}}"{{if $wiki.active}} class="active"{{/if}}>{{$wiki.title}}</a>
{{if $owner}}
<div id="edit-wiki-form-wrapper-{{$wiki.resource_id}}" class="section-content-tools-wrapper" style="display:none;">
<form id="edit-wiki-form" action="wiki/edit/wiki" method="post" >
<div class="clear"></div>
<div class="btn-group pull-right">
<button class="btn btn-xs btn-danger" onclick="wiki_delete_wiki('{{$wiki.title}}', '{{$wiki.resource_id}}'); return false;"><i class="fa fa-trash-o"></i>&nbsp;Delete Wiki</button>
</div>
</form>
<div class="clear"></div>
</div>
{{/if}}
</li>
<li><a href="/wiki/{{$channel}}/{{$wiki.urlName}}/Home" title="{{$view}}">{{$wiki.title}}</a></li>
{{/foreach}}
{{/if}}
{{if $owner}}
<li><a href="#" class="fakelink" onclick="wiki_show_new_wiki_form(); return false;"><i id="new-wiki-button" class="fa fa-plus-circle"></i>&nbsp;{{$addnew}}</a></li>
{{/if}}
</ul>
{{if $owner}}
<div id="new-wiki-form-wrapper" class="sub-menu" style="display:none;">
<form id="new-wiki-form" action="wiki/{{$channel}}/create/wiki" method="post" class="acl-form" data-form_id="new-wiki-form" data-allow_cid='{{$allow_cid}}' data-allow_gid='{{$allow_gid}}' data-deny_cid='{{$deny_cid}}' data-deny_gid='{{$deny_gid}}'>
{{include file="field_input.tpl" field=$wikiName}}
{{include file="field_checkbox.tpl" field=$notify}}
<div>
<div id="profile-jot-submit-right" class="btn-group">
<button id="dbtn-acl" class="btn btn-default btn-sm" data-toggle="modal" data-target="#aclModal" title="Permission settings" onclick="return false;">
<i id="jot-perms-icon" class="fa fa-{{$lockstate}} jot-icons"></i>{{$bang}}
</button>
<button id="new-wiki-submit" class="btn btn-primary btn-sm" type="submit" name="submit" >{{$create}}</button>
</div>
</div>
</form>
<div class="clear"></div>
</div>
{{/if}}
</div>
{{$acl}}