first commit for sharing dialog

This commit is contained in:
Vinzenz
2016-06-01 23:35:32 +02:00
parent 65f56144c0
commit 8d2864a2c0
5 changed files with 49 additions and 2 deletions

View File

@@ -7,6 +7,7 @@ return [
'routes' => [
['name' => 'page#index', 'url' => '/', 'verb' => 'GET'],
['name' => 'note_api#preflighted_cors', 'url' => '/api/0.1/{path}',
'verb' => 'OPTIONS', 'requirements' => ['path' => '.+']]
'verb' => 'OPTIONS', 'requirements' => ['path' => '.+']],
['name' => 'note#get_user_groups_and_users', 'url' => '/api/0.1/getusergroups', 'verb' => 'GET']
]
];
];

View File

@@ -14,6 +14,7 @@ namespace OCA\QuickNotes\Controller;
use OCP\IRequest;
use OCP\AppFramework\Http;
use OCP\AppFramework\Http\DataResponse;
use OCP\AppFramework\Http\JSONResponse;
use OCP\AppFramework\Controller;
use OCA\QuickNotes\Db\Note;
@@ -190,4 +191,24 @@ class NoteController extends Controller {
return new DataResponse($note);
}
/**
* @NoAdminRequired
*/
public function getUserGroupsAndUsers() {
$userMgr = \OC::$server->getUserManager();
$grpMgr = \OC::$server->getGroupManager();
$igroups = $grpMgr->getUserGroups($userMgr->get($this->userId));
$users = array();
$groups = array();
foreach($igroups as $g) {
$iusers = $g->getUsers();
foreach($iusers as $u) {
$users[] = $u->getUID();
}
$groups[] = $g->getGID();
}
$params = array('groups' => $groups, 'users' => array_unique($users));
return new JSONResponse($params);
}
}

View File

@@ -31,6 +31,10 @@
top: 6px;
}
.save-button #unshare-button {
display: none;
}
#div-content .save-button {
float: right;
padding-right: 8px;

View File

@@ -162,6 +162,13 @@ View.prototype = {
var modalnote = $("#modal-note-div .quicknote");
var note = $('.notes-grid [data-id=' + id + ']').parent();
if($('.notes-grid [data-id=' + id + ']').hasClass('shareowner')) {
$('.save-button #unshare-button').show();
$('.save-button #share-button').hide();
} else {
$('.save-button #unshare-button').hide();
$('.save-button #share-button').show();
}
var title = note.find("#title-editable").html();
var content = note.find("#content-editable").html();
@@ -336,6 +343,16 @@ View.prototype = {
modalnote.css("background-color", color);
});
// handle share editing notes.
$('#modal-note-div #share-button').click(function (event) {
$.get(OC.generateUrl('/apps/quicknotes/api/0.1/getusergroups'), function(data) {
var groups = data.groups;
var users = data.users;
alert('groups: ' + groups.toSource());
alert('users: ' + users.toSource());
});
});
// handle cancel editing notes.
$('#modal-note-div #cancel-button').click(function (event) {
self.cancelEdit();

View File

@@ -5,6 +5,7 @@
<div contenteditable="true" id='content-editable' class='note-content' data-placeholder="No content"></div>
<div class="note-options">
<div class="save-button">
<button id='unshare-button'><?php p($l->t('Unshare'));?></button>
<button id='share-button'><?php p($l->t('Share'));?></button>
<button id='cancel-button'><?php p($l->t('Cancel')); ?></button>
<button id='save-button'><?php p($l->t('Save')); ?></button>
@@ -21,6 +22,9 @@
<a href="#" class="circle-toolbar" style="background-color: #C1D756"></a>
<a href="#" class="circle-toolbar" style="background-color: #CECECE"></a>
</div>
<div id="note-share-options">
</div>
</div>
</div>
</div>