display wiki list on wiki landing page.
This commit is contained in:
parent
69123590fb
commit
060982adb4
@ -91,6 +91,9 @@ class Wiki extends \Zotlabs\Web\Controller {
|
||||
$owner_acl = $x = array();
|
||||
}
|
||||
|
||||
$is_owner = ((local_channel()) && (local_channel() == \App::$profile['profile_uid']) ? true : false);
|
||||
$o = profile_tabs($a, $is_owner, \App::$profile['channel_address']);
|
||||
|
||||
// Download a wiki
|
||||
if ((argc() > 3) && (argv(2) === 'download') && (argv(3) === 'wiki')) {
|
||||
$resource_id = argv(4);
|
||||
@ -122,18 +125,33 @@ class Wiki extends \Zotlabs\Web\Controller {
|
||||
|
||||
switch (argc()) {
|
||||
case 2:
|
||||
// Configure page template
|
||||
$wikiheaderName = t('Wiki');
|
||||
$wikiheaderPage = t('Sandbox');
|
||||
require_once('library/markdown.php');
|
||||
$content = t('"# Wiki Sandbox\n\nContent you **edit** and **preview** here *will not be saved*."');
|
||||
$renderedContent = Markdown(json_decode($content));
|
||||
$hide_editor = true;
|
||||
$showPageControls = false;
|
||||
$showNewWikiButton = $wiki_owner;
|
||||
$showNewPageButton = false;
|
||||
$hidePageHistory = true;
|
||||
$showCommitMsg = false;
|
||||
$wikis = wiki_list($owner, get_observer_hash());
|
||||
if ($wikis) {
|
||||
$o .= replace_macros(get_markup_template('wikilist.tpl'), array(
|
||||
'$header' => t('Wikis'),
|
||||
'$channel' => $owner['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'),
|
||||
'$create' => t('Create New'),
|
||||
'$submit' => t('Submit'),
|
||||
'$wikiName' => array('wikiName', t('Wiki name')),
|
||||
'$name' => t('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'],
|
||||
'$notify' => array('postVisible', t('Create a status post for this wiki'), '', '', array(t('No'), t('Yes')))
|
||||
));
|
||||
|
||||
return $o;
|
||||
}
|
||||
|
||||
break;
|
||||
case 3:
|
||||
// /wiki/channel/wiki -> No page was specified, so redirect to Home.md
|
||||
@ -201,11 +219,6 @@ class Wiki extends \Zotlabs\Web\Controller {
|
||||
)
|
||||
);
|
||||
|
||||
$is_owner = ((local_channel()) && (local_channel() == \App::$profile['profile_uid']) ? true : false);
|
||||
|
||||
$o .= profile_tabs($a, $is_owner, \App::$profile['channel_address']);
|
||||
|
||||
|
||||
$o .= replace_macros(get_markup_template('wiki.tpl'),array(
|
||||
'$wikiheaderName' => $wikiheaderName,
|
||||
'$wikiheaderPage' => $wikiheaderPage,
|
||||
|
@ -956,7 +956,7 @@ function widget_wiki_list($arr) {
|
||||
}
|
||||
}
|
||||
if ($wikis) {
|
||||
return replace_macros(get_markup_template('wikilist.tpl'), array(
|
||||
return replace_macros(get_markup_template('wikilist_widget.tpl'), array(
|
||||
'$header' => t('Wiki List'),
|
||||
'$channel' => $channel['channel_address'],
|
||||
'$wikis' => $wikis['wikis'],
|
||||
|
40
view/css/mod_wiki.css
Normal file
40
view/css/mod_wiki.css
Normal file
@ -0,0 +1,40 @@
|
||||
#ace-editor {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 500px;
|
||||
}
|
||||
|
||||
.fade.in {
|
||||
-webkit-transition: opacity 0.5s 0.5s ease;
|
||||
-moz-transition: opacity 0.5s 0.5s ease;
|
||||
-o-transition: opacity 0.5s 0.5s ease;
|
||||
transition: opacity 0.5s 0.5s ease;
|
||||
}
|
||||
|
||||
#new-wiki-form-wrapper {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#wikis-index {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#wikis-index th:nth-child(1),
|
||||
#wikis-index td:nth-child(1){
|
||||
padding: 7px 3px 7px 10px;
|
||||
}
|
||||
|
||||
#wikis-index th:nth-child(2),
|
||||
#wikis-index td:nth-child(2){
|
||||
padding: 7px 10px 7px 7px;
|
||||
}
|
||||
|
||||
#wikis-index th:nth-child(3),
|
||||
#wikis-index td:nth-child(3){
|
||||
padding: 7px 10px 7px 7px;
|
||||
}
|
||||
|
||||
.wikis-index-tool {
|
||||
padding: 7px 10px;
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
[region=aside]
|
||||
[widget=wiki_list][/widget]
|
||||
[widget=vcard][/widget]
|
||||
[widget=wiki_pages][/widget]
|
||||
[/region]
|
||||
|
@ -1649,6 +1649,7 @@ main.fullscreen .section-content-wrapper-np {
|
||||
|
||||
.atoken-index-row:hover td,
|
||||
.chatroom-index-row:hover td,
|
||||
.wikis-index-row:hover td,
|
||||
.locs-index-row:hover td,
|
||||
[id^="cloud-index-"]:hover td,
|
||||
.cloud-index-active {
|
||||
|
@ -1,16 +1,3 @@
|
||||
<style type="text/css" media="screen">
|
||||
#ace-editor {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 500px;
|
||||
}
|
||||
.fade.in {
|
||||
-webkit-transition: opacity 0.5s 0.5s ease;
|
||||
-moz-transition: opacity 0.5s 0.5s ease;
|
||||
-o-transition: opacity 0.5s 0.5s ease;
|
||||
transition: opacity 0.5s 0.5s ease;
|
||||
}
|
||||
</style>
|
||||
{{if $hideEditor}}
|
||||
<div>
|
||||
<p class="lead text-center">{{$chooseWikiMessage}}</p>
|
||||
@ -222,27 +209,6 @@
|
||||
ev.preventDefault();
|
||||
});
|
||||
|
||||
function wiki_delete_wiki(wikiHtmlName, resource_id) {
|
||||
if(!confirm('Are you sure you want to delete the entire wiki: ' + JSON.stringify(wikiHtmlName))) {
|
||||
return;
|
||||
}
|
||||
$.post("wiki/{{$channel}}/delete/wiki", {resource_id: resource_id}, function (data) {
|
||||
if (data.success) {
|
||||
window.console.log('Wiki deleted');
|
||||
// Refresh list and redirect page as necessary
|
||||
window.location = 'wiki/{{$channel}}';
|
||||
} else {
|
||||
alert('Error deleting wiki!');
|
||||
window.console.log('Error deleting wiki.');
|
||||
}
|
||||
}, 'json');
|
||||
}
|
||||
|
||||
|
||||
function wiki_download_wiki(resource_id) {
|
||||
window.location = "wiki/{{$channel}}/download/wiki/" + resource_id;
|
||||
}
|
||||
|
||||
function wiki_refresh_page_list() {
|
||||
if (window.wiki_resource_id === '') {
|
||||
return false;
|
||||
@ -466,14 +432,6 @@
|
||||
'json');
|
||||
};
|
||||
|
||||
function wiki_show_new_wiki_form() {
|
||||
$('div[id^=\'edit-wiki-form-wrapper\']').hide();
|
||||
$('#new-page-form-wrapper').hide();
|
||||
$('#edit-wiki-form-wrapper').hide();
|
||||
$('#new-wiki-form-wrapper').toggle();
|
||||
return false;
|
||||
}
|
||||
|
||||
function wiki_show_new_page_form() {
|
||||
$('div[id^=\'edit-wiki-form-wrapper\']').hide();
|
||||
$('#edit-wiki-form-wrapper').hide();
|
||||
|
@ -1,45 +1,68 @@
|
||||
<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>
|
||||
<div class="generic-content-wrapper">
|
||||
<div class="section-title-wrapper">
|
||||
{{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> Delete Wiki</button>
|
||||
<button type="button" class="btn btn-success btn-xs pull-right acl-form-trigger" onclick="openClose('new-wiki-form-wrapper');" data-form_id="new-wiki-form"><i class="fa fa-plus-circle"></i> {{$create}}</button>
|
||||
{{/if}}
|
||||
<h2>{{$header}}</h2>
|
||||
</div>
|
||||
</form>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
{{/if}}
|
||||
</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> {{$addnew}}</a></li>
|
||||
{{/if}}
|
||||
</ul>
|
||||
{{if $owner}}
|
||||
<div id="new-wiki-form-wrapper" class="sub-menu" style="display:none;">
|
||||
<div id="new-wiki-form-wrapper" class="section-content-tools-wrapper">
|
||||
<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">
|
||||
<div class="btn-group pull-right">
|
||||
<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}}
|
||||
<i id="jot-perms-icon" class="fa fa-{{$lockstate}} jot-icons"></i>
|
||||
</button>
|
||||
<button id="new-wiki-submit" class="btn btn-primary btn-sm" type="submit" name="submit" >{{$create}}</button>
|
||||
<button id="new-wiki-submit" class="btn btn-primary btn-sm" type="submit" name="submit" >{{$submit}}</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
{{$acl}}
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
{{/if}}
|
||||
<div class="section-content-wrapper-np">
|
||||
<table id="wikis-index">
|
||||
<tr>
|
||||
<th width="98%">{{$name}}</th>
|
||||
<th width="1%" class="wikis-index-tool"></th>
|
||||
{{if $owner}}
|
||||
<th width="1%"></th>
|
||||
{{/if}}
|
||||
</tr>
|
||||
{{foreach $wikis as $wiki}}
|
||||
<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 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>
|
||||
{{/if}}
|
||||
</tr>
|
||||
{{/foreach}}
|
||||
</table>
|
||||
</div>
|
||||
{{$acl}}
|
||||
</div>
|
||||
<script>
|
||||
{{if $owner}}
|
||||
function wiki_delete_wiki(wikiHtmlName, resource_id) {
|
||||
if(!confirm('Are you sure you want to delete the entire wiki: ' + JSON.stringify(wikiHtmlName))) {
|
||||
return;
|
||||
}
|
||||
$.post("wiki/{{$channel}}/delete/wiki", {resource_id: resource_id}, function (data) {
|
||||
if (data.success) {
|
||||
window.console.log('Wiki deleted');
|
||||
// Refresh list and redirect page as necessary
|
||||
window.location = 'wiki/{{$channel}}';
|
||||
} else {
|
||||
alert('Error deleting wiki!');
|
||||
window.console.log('Error deleting wiki.');
|
||||
}
|
||||
}, 'json');
|
||||
}
|
||||
{{/if}}
|
||||
function wiki_download_wiki(resource_id) {
|
||||
window.location = "wiki/{{$channel}}/download/wiki/" + resource_id;
|
||||
}
|
||||
</script>
|
||||
|
45
view/tpl/wikilist_widget.tpl
Normal file
45
view/tpl/wikilist_widget.tpl
Normal file
@ -0,0 +1,45 @@
|
||||
<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> Delete Wiki</button>
|
||||
</div>
|
||||
</form>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
{{/if}}
|
||||
</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> {{$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}}
|
Reference in New Issue
Block a user