More on joining session

pull/1/head
Victor Dubiniuk 11 years ago committed by Tobias Hintze
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 {

@ -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…
Cancel
Save