More on joining session
This commit is contained in:
parent
37a767ad48
commit
267901aa0b
@ -59,22 +59,23 @@ try{
|
|||||||
);
|
);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case 'session-list':
|
case 'session_list':
|
||||||
OCA\Office\Controller::listSessions();
|
OCA\Office\Controller::listSessions();
|
||||||
exit();
|
exit();
|
||||||
break;
|
break;
|
||||||
case 'join-session':
|
case 'join_session':
|
||||||
|
// should fail when session is non-existent
|
||||||
|
break;
|
||||||
OCA\Office\Controller::joinSession(array(
|
OCA\Office\Controller::joinSession(array(
|
||||||
'es_id' => $request->getParam('args/es_id')
|
'es_id' => $request->getParam('args/es_id')
|
||||||
));
|
));
|
||||||
exit();
|
exit();
|
||||||
break;
|
break;
|
||||||
case 'user-list':
|
case 'user_list':
|
||||||
$members = OCA\Office\Member::getMembersByEsId(
|
$members = OCA\Office\Member::getMembersByEsId(
|
||||||
$request->getParam('args/es_id')
|
$request->getParam('args/es_id')
|
||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
case 'sync-ops':
|
|
||||||
case 'sync_ops':
|
case 'sync_ops':
|
||||||
$seqHead = $request->getParam('args/seq_head');
|
$seqHead = $request->getParam('args/seq_head');
|
||||||
if (!is_null($seqHead)){
|
if (!is_null($seqHead)){
|
||||||
@ -93,16 +94,16 @@ try{
|
|||||||
// Add incoming ops, respond with a new head
|
// Add incoming ops, respond with a new head
|
||||||
$newHead = OCA\Office\Op::addOpsArray($esId, $memberId, $ops);
|
$newHead = OCA\Office\Op::addOpsArray($esId, $memberId, $ops);
|
||||||
$response["result"] = 'added';
|
$response["result"] = 'added';
|
||||||
$response["headSeq"] = $newHead ? $newHead : $currentHead;
|
$response["head_seq"] = $newHead ? $newHead : $currentHead;
|
||||||
} else {
|
} else {
|
||||||
// no incoming ops (just checking for new ops...)
|
// no incoming ops (just checking for new ops...)
|
||||||
$response["result"] = 'newOps';
|
$response["result"] = 'new_ops';
|
||||||
$response["ops"] = array();
|
$response["ops"] = array();
|
||||||
$response["headSeq"] = $currentHead;
|
$response["head_seq"] = $currentHead;
|
||||||
}
|
}
|
||||||
} else { // HEADs do not match
|
} else { // HEADs do not match
|
||||||
$response["ops"] = OCA\Office\Op::getOpsAfterJson($esId, $seqHead);
|
$response["ops"] = OCA\Office\Op::getOpsAfterJson($esId, $seqHead);
|
||||||
$response["headSeq"] = $currentHead;
|
$response["head_seq"] = $currentHead;
|
||||||
$response["result"] = $hasOps ? 'conflict' : 'newOps';
|
$response["result"] = $hasOps ? 'conflict' : 'newOps';
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
17
js/office.js
17
js/office.js
@ -19,7 +19,7 @@ var officeMain = {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
joinSession: function(response) {
|
initSession: function(response) {
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
OC.addScript('office', 'editor/boot_editor').done(function() {
|
OC.addScript('office', 'editor/boot_editor').done(function() {
|
||||||
@ -69,7 +69,7 @@ var officeMain = {
|
|||||||
loginProcedure: function(cb) {
|
loginProcedure: function(cb) {
|
||||||
cb(response.es_id, OC.currentUser, "token");
|
cb(response.es_id, OC.currentUser, "token");
|
||||||
},
|
},
|
||||||
joinSession: function(userId, sessionId, cb) {
|
initSession: function(userId, sessionId, cb) {
|
||||||
cb(memberId);
|
cb(memberId);
|
||||||
},
|
},
|
||||||
callback: function() {
|
callback: function() {
|
||||||
@ -89,10 +89,15 @@ var officeMain = {
|
|||||||
|
|
||||||
$.post(OC.Router.generate('office_session_start'),
|
$.post(OC.Router.generate('office_session_start'),
|
||||||
{ 'path' : filepath },
|
{ 'path' : filepath },
|
||||||
officeMain.joinSession
|
officeMain.initSession
|
||||||
|
);
|
||||||
|
},
|
||||||
|
joinSession : function (esId){
|
||||||
|
$.post(OC.Router.generate('office_session_join') + '/' + esId,
|
||||||
|
{},
|
||||||
|
officeMain.initSession
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
|
||||||
showSessions : function(){
|
showSessions : function(){
|
||||||
if ($('#allsessions').length){
|
if ($('#allsessions').length){
|
||||||
$('#allsessions').remove();
|
$('#allsessions').remove();
|
||||||
@ -102,7 +107,7 @@ var officeMain = {
|
|||||||
},
|
},
|
||||||
onSessions : function(response){
|
onSessions : function(response){
|
||||||
if (response && response.session_list){
|
if (response && response.session_list){
|
||||||
$(response.session_list).each( function(i, s){ officeMain.addSession(s) } );
|
$(response.session_list).each( function(i, s){ officeMain.addSession(s); } );
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
addSession : function(s){
|
addSession : function(s){
|
||||||
@ -112,7 +117,7 @@ var officeMain = {
|
|||||||
$('<div><a href="">'+s+ '</a></div>').appendTo('#allsessions').click(
|
$('<div><a href="">'+s+ '</a></div>').appendTo('#allsessions').click(
|
||||||
function(event){
|
function(event){
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
officeMain.joinSession({es_id : s});
|
officeMain.joinSession(s);
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
Loading…
x
Reference in New Issue
Block a user