Invitations. Ugly but works
This commit is contained in:
parent
128edd8dee
commit
c1c01c364c
@ -14,6 +14,10 @@ namespace OCA\Office;
|
||||
|
||||
class Controller {
|
||||
|
||||
/**
|
||||
* Process partial/complete file download
|
||||
* @param type $args - array containing session id as anelement with a key es_id
|
||||
*/
|
||||
public static function serve($args){
|
||||
\OCP\JSON::checkLoggedIn();
|
||||
|
||||
@ -24,6 +28,63 @@ class Controller {
|
||||
$download->sendResponse();
|
||||
}
|
||||
|
||||
/**
|
||||
* Search users according to the pattern
|
||||
*/
|
||||
public static function search(){
|
||||
$uid = self::getUser();
|
||||
if (@$_GET['search']){
|
||||
$found = array();
|
||||
$users = array();
|
||||
$count = 0;
|
||||
$limit = 0;
|
||||
$offset = 0;
|
||||
while ($count < 15 && count($users) == $limit) {
|
||||
$limit = 15 - $count;
|
||||
$users = \OC_User::getDisplayNames($_GET['search'], $limit, $offset);
|
||||
$offset += $limit;
|
||||
foreach ($users as $userid => $displayName) {
|
||||
$found[] = array(
|
||||
'label' => $displayName,
|
||||
'value' => $userid
|
||||
);
|
||||
$count++;
|
||||
}
|
||||
}
|
||||
\OCP\JSON::success(array('data'=>$found));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Invite users to the editing session
|
||||
*/
|
||||
public static function invite(){
|
||||
self::getUser();
|
||||
$invitees = @$_POST['users'];
|
||||
|
||||
if (is_array($invitees)){
|
||||
$invitees = array_unique($invitees);
|
||||
|
||||
$esId = @$_POST['esId'];
|
||||
foreach ($invitees as $userId){
|
||||
try {
|
||||
Invite::add($esId, $userId);
|
||||
} catch (\Exception $e) {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
\OCP\JSON::success();
|
||||
}
|
||||
|
||||
public static function sendAvatar(){
|
||||
$uid = self::getUser();
|
||||
$image = new \OC_Image('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');
|
||||
\OC_Util::obEnd();
|
||||
|
||||
echo $image->show();
|
||||
}
|
||||
|
||||
public static function startSession($args){
|
||||
$uid = self::getUser();
|
||||
$path = @$_POST['path'];
|
||||
@ -56,14 +117,6 @@ class Controller {
|
||||
exit();
|
||||
}
|
||||
|
||||
public static function sendAvatar(){
|
||||
$uid = self::getUser();
|
||||
$image = new \OC_Image('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');
|
||||
\OC_Util::obEnd();
|
||||
|
||||
echo $image->show();
|
||||
}
|
||||
|
||||
public static function joinSession($args){
|
||||
$esId = @$args['es_id'];
|
||||
\OCP\JSON::checkLoggedIn();
|
||||
|
@ -52,7 +52,7 @@ try{
|
||||
$x['display_name'] = \OCP\User::getDisplayName($x['uid']);
|
||||
|
||||
// Stub
|
||||
$x['avatar_url'] = \OCP\Util::linkToRoute('office_avatar');
|
||||
$x['avatar_url'] = \OCP\Util::linkToRoute('office_user_avatar');
|
||||
return $x;
|
||||
},
|
||||
$members
|
||||
|
@ -54,7 +54,18 @@ $this->create('office_session_join', 'ajax/session/join/{es_id}')
|
||||
->action('\OCA\Office\Controller', 'joinSession')
|
||||
;
|
||||
|
||||
$this->create('office_avatar', 'ajax/avatar')
|
||||
|
||||
$this->create('office_user_avatar', 'ajax/user/avatar')
|
||||
->get()
|
||||
->action('\OCA\Office\Controller', 'sendAvatar')
|
||||
;
|
||||
|
||||
$this->create('office_user_invite', 'ajax/user/invite')
|
||||
->post()
|
||||
->action('\OCA\Office\Controller', 'invite')
|
||||
;
|
||||
|
||||
$this->create('office_user_search', 'ajax/user/search')
|
||||
->get()
|
||||
->action('\OCA\Office\Controller', 'search')
|
||||
;
|
||||
|
@ -7,6 +7,10 @@
|
||||
#office-content{
|
||||
padding-left:160px;
|
||||
}
|
||||
#office-content.wide{
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
#editing-sessions{
|
||||
position:absolute;
|
||||
left:0;
|
||||
@ -28,6 +32,10 @@ position:relative;top:3em;width: 100%;
|
||||
float:left;
|
||||
}
|
||||
|
||||
#odf_invite{
|
||||
float:right;
|
||||
}
|
||||
|
||||
#editor-content #mainContainer{
|
||||
background-color: transparent;
|
||||
}
|
||||
@ -39,3 +47,12 @@ float:left;
|
||||
#memberList{
|
||||
padding-top: 5px;
|
||||
}
|
||||
|
||||
#invite-block{
|
||||
position: absolute;
|
||||
top:3em;
|
||||
margin-top:-3px;
|
||||
right:72px;
|
||||
padding: 10px;
|
||||
background-color: #ddd;
|
||||
}
|
95
js/office.js
95
js/office.js
@ -5,12 +5,12 @@ var officeMain = {
|
||||
OC.addScript('office', 'webodf_bootstrap', function() {
|
||||
OC.addScript('office', 'webodf-debug').done(function() {
|
||||
require({}, ["dojo/ready"], function(ready) {
|
||||
ready(function(){
|
||||
ready(function() {
|
||||
require({}, ["webodf/editor/Editor"], function(Editor) {
|
||||
if (Editor && typeof(Editor) === 'function') {
|
||||
officeMain.initialized = 1;
|
||||
} else {
|
||||
alert("initialization of webodf/editor/Editor\n"+
|
||||
alert("initialization of webodf/editor/Editor\n" +
|
||||
"failed somehow...");
|
||||
}
|
||||
});
|
||||
@ -27,8 +27,8 @@ var officeMain = {
|
||||
OC.addScript('office', 'editor/boot_editor').done(function() {
|
||||
var doclocation = response.es_id;
|
||||
|
||||
// fade out files menu and add odf menu
|
||||
$('.documentslist, #emptyfolder').fadeOut('slow').promise().done(function() {
|
||||
// fade out file list and show WebODF canvas
|
||||
$('.documentslist, #emptyfolder, #editing-sessions').fadeOut('slow').promise().done(function() {
|
||||
// odf action toolbar
|
||||
var odfToolbarHtml =
|
||||
'<div id="odf-toolbar">'
|
||||
@ -41,25 +41,23 @@ var officeMain = {
|
||||
+ '<span id="toolbar" class="claro"></span>'
|
||||
+ '</div>';
|
||||
$('#controls').append(odfToolbarHtml);
|
||||
});
|
||||
|
||||
// fade out file list and show WebODF canvas
|
||||
$('.documentslist, #emptyfolder').fadeOut('slow').promise().done(function() {
|
||||
$('#office-content').addClass('wide');
|
||||
var memberId, odfelement, odfcanvas, canvashtml =
|
||||
'<div id = "mainContainer" class="claro" style="">'+
|
||||
'<div id = "editor">'+
|
||||
'<div id = "container">'+
|
||||
'<div id="canvas"></div>'+
|
||||
'</div>'+
|
||||
'</div>'+
|
||||
'<div id = "collaboration">'+
|
||||
'<div id = "collabContainer">'+
|
||||
'<div id = "people">'+
|
||||
'<div id = "inviteButton"></div>'+
|
||||
'<div id = "memberList"></div>'+
|
||||
'</div>'+
|
||||
'</div>'+
|
||||
'</div>'+
|
||||
'<div id = "mainContainer" class="claro" style="">' +
|
||||
'<div id = "editor">' +
|
||||
'<div id = "container">' +
|
||||
'<div id="canvas"></div>' +
|
||||
'</div>' +
|
||||
'</div>' +
|
||||
'<div id = "collaboration">' +
|
||||
'<div id = "collabContainer">' +
|
||||
'<div id = "people">' +
|
||||
'<div id = "inviteButton"></div>' +
|
||||
'<div id = "memberList"></div>' +
|
||||
'</div>' +
|
||||
'</div>' +
|
||||
'</div>' +
|
||||
'</div>';
|
||||
$(document.body).addClass("claro");
|
||||
$('.documentslist, #emptyfolder').after(canvashtml);
|
||||
@ -86,7 +84,7 @@ var officeMain = {
|
||||
});
|
||||
});
|
||||
},
|
||||
startSession : function(filepath){
|
||||
startSession: function(filepath) {
|
||||
"use strict";
|
||||
if (officeMain.initialized === undefined) {
|
||||
alert("WebODF Editor not yet initialized...");
|
||||
@ -94,29 +92,37 @@ var officeMain = {
|
||||
}
|
||||
|
||||
$.post(OC.Router.generate('office_session_start'),
|
||||
{ 'path' : filepath },
|
||||
{'path': filepath},
|
||||
officeMain.initSession
|
||||
);
|
||||
},
|
||||
joinSession : function (esId){
|
||||
joinSession: function(esId) {
|
||||
$.post(OC.Router.generate('office_session_join') + '/' + esId,
|
||||
{},
|
||||
officeMain.initSession
|
||||
);
|
||||
},
|
||||
updateSessions : function(){
|
||||
updateSessions: function() {
|
||||
$('#editing-sessions').load(OC.Router.generate('office_session_listhtml'), {}, officeMain.onSessions);
|
||||
},
|
||||
|
||||
onSessions : function(){
|
||||
onSessions: function() {
|
||||
$('#editing-sessions a').click(
|
||||
function(event){
|
||||
function(event) {
|
||||
event.preventDefault();
|
||||
officeMain.joinSession($(this).attr('data-esid'));
|
||||
}
|
||||
);
|
||||
},
|
||||
|
||||
onInvite: function() {
|
||||
$('#invite-block').toggle();
|
||||
},
|
||||
sendInvite: function() {
|
||||
var users = [];
|
||||
$('input[name=invitee\\[\\]]').each(function(i, e) {
|
||||
users.push($(e).val());
|
||||
});
|
||||
$.post(OC.Router.generate('office_user_invite'), {users: users});
|
||||
},
|
||||
onClose: function() {
|
||||
"use strict";
|
||||
|
||||
@ -127,8 +133,9 @@ var officeMain = {
|
||||
$('#mainContainer').remove();
|
||||
$('#odf-canvas').remove();
|
||||
$('.actions,#file_access_panel').fadeIn('slow');
|
||||
$('.documentslist, #emptyfolder').fadeIn('slow');
|
||||
$('.documentslist, #emptyfolder, #editing-sessions').fadeIn('slow');
|
||||
$(document.body).removeClass('claro');
|
||||
$('#office-content').removeClass('wide');
|
||||
webodfEditor.shutdown();
|
||||
});
|
||||
}
|
||||
@ -141,6 +148,32 @@ $(document).ready(function() {
|
||||
});
|
||||
$('#odf_close').live('click', officeMain.onClose);
|
||||
$('#odf_invite').live('click', officeMain.onInvite);
|
||||
$('#session-list').click(officeMain.showSessions);
|
||||
$('#invite-send').live('click', officeMain.sendInvite);
|
||||
|
||||
$('#inivite-input').autocomplete({
|
||||
minLength: 1,
|
||||
source: function(search, response) {
|
||||
$.get(OC.Router.generate('office_user_search'), {search: $('#inivite-input').val()},
|
||||
function(result) {
|
||||
if (result.status == 'success' && result.data.length > 0) {
|
||||
response(result.data);
|
||||
} else {
|
||||
response([t('core', 'No people found')]);
|
||||
}
|
||||
});
|
||||
},
|
||||
select: function(event, el) {
|
||||
var item = $(
|
||||
'<li>'
|
||||
+ el.item.label
|
||||
+ '<input type="hidden" name="invitee[]" value="'
|
||||
+ el.item.value
|
||||
+ '" />'
|
||||
+ '</li>'
|
||||
);
|
||||
$('#invitee-list').append(item);
|
||||
}
|
||||
});
|
||||
|
||||
OC.addScript('office', 'dojo-amalgamation', officeMain.onStartup);
|
||||
});
|
||||
|
@ -1,4 +1,10 @@
|
||||
<div id="controls"></div>
|
||||
<div id="controls">
|
||||
<div id="invite-block" style="display:none">
|
||||
<input id="inivite-input" type="text" />
|
||||
<div id="invitee-list"></div>
|
||||
<button id="invite-send"><?php p('Send Invitation') ?></button>
|
||||
</div>
|
||||
</div>
|
||||
<div id="office-content">
|
||||
<div id="editing-sessions">
|
||||
</div>
|
||||
|
@ -2,5 +2,5 @@
|
||||
<div><a href="" data-esid="<?php p($invite['es_id']); ?>"><?php p($invite['es_id']); ?></a></div>
|
||||
<?php } ?>
|
||||
<?php foreach ($_['sessions'] as $session){ ?>
|
||||
<div><a href="" data-esid="<?php p($session['es_id']); ?>"><?php p($session['es_id']); ?></a></div>
|
||||
<div><a href="" data-esid="<?php p($session['es_id']); ?>"><?php p($session['document_path']); ?></a></div>
|
||||
<?php } ?>
|
||||
|
Loading…
x
Reference in New Issue
Block a user