Merge pull request #872 from marcelklehr/feature/connectivity-toolbar

Nice popups instead of modals
This commit is contained in:
0ip 2012-08-01 11:37:15 -07:00
commit c9bdd1196d
10 changed files with 197 additions and 322 deletions

View file

@ -3237,7 +3237,7 @@ function Ace2Inner(){
}
//hide the dropdownso
if(window.parent.parent.padeditbar){ // required in case its in an iframe should probably use parent.. See Issue 327 https://github.com/Pita/etherpad-lite/issues/327
window.parent.parent.padeditbar.toogleDropDown("none");
window.parent.parent.padeditbar.toggleDropDown("none");
}
}

View file

@ -155,9 +155,7 @@ function loadBroadcastSliderJS(fireWhenAllScriptsAreLoaded)
function showReconnectUI()
{
var cls = 'modaldialog cboxdisconnected cboxdisconnected_unknown';
$("#connectionbox").get(0).className = cls;
padmodals.showModal("#connectionbox", 500);
padmodals.showModal("disconnected");
}
var fixPadHeight = _.throttle(function(){

View file

@ -21,6 +21,7 @@
*/
var padmodals = require('./pad_modals').padmodals;
var padeditbar = require('./pad_editbar').padeditbar;
var padconnectionstatus = (function()
{
@ -42,15 +43,18 @@ var padconnectionstatus = (function()
status = {
what: 'connected'
};
padmodals.hideModal(500);
padmodals.showModal('connected');
padmodals.hideOverlay(500);
},
reconnecting: function()
{
status = {
what: 'reconnecting'
};
$("#connectionbox").get(0).className = 'modaldialog cboxreconnecting';
padmodals.showModal("#connectionbox", 500);
padmodals.showModal('reconnecting');
padmodals.showOverlay(500);
},
disconnected: function(msg)
{
@ -61,20 +65,15 @@ var padconnectionstatus = (function()
what: 'disconnected',
why: msg
};
var k = String(msg).toLowerCase(); // known reason why
if (!(k == 'userdup' || k == 'deleted' || k == 'looping' || k == 'slowcommit' || k == 'initsocketfail' || k == 'unauth'))
{
k = 'unknown';
k = 'disconnected';
}
var cls = 'modaldialog cboxdisconnected cboxdisconnected_' + k;
$("#connectionbox").get(0).className = cls;
padmodals.showModal("#connectionbox", 500);
$('button#forcereconnect').click(function()
{
window.location.reload();
});
padmodals.showModal(k);
padmodals.showOverlay(500);
},
isFullyConnected: function()
{

View file

@ -122,21 +122,25 @@ var padeditbar = (function()
{
if(cmd == "showusers")
{
self.toogleDropDown("users");
self.toggleDropDown("users");
}
else if (cmd == 'settings')
{
self.toogleDropDown("settings");
self.toggleDropDown("settings");
}
else if (cmd == 'connectivity')
{
self.toggleDropDown("connectivity");
}
else if (cmd == 'embed')
{
self.setEmbedLinks();
$('#linkinput').focus().select();
self.toogleDropDown("embed");
self.toggleDropDown("embed");
}
else if (cmd == 'import_export')
{
self.toogleDropDown("importexport");
self.toggleDropDown("importexport");
}
else if (cmd == 'savedRevision')
{
@ -182,13 +186,14 @@ var padeditbar = (function()
}
if(padeditor.ace) padeditor.ace.focus();
},
toogleDropDown: function(moduleName)
toggleDropDown: function(moduleName, cb)
{
var modules = ["settings", "importexport", "embed", "users"];
var modules = ["settings", "connectivity", "importexport", "embed", "users"];
// hide all modules and remove highlighting of all buttons
if(moduleName == "none")
{
var returned = false
for(var i=0;i<modules.length;i++)
{
//skip the userlist
@ -200,9 +205,11 @@ var padeditbar = (function()
if(module.css('display') != "none")
{
$("#" + modules[i] + "link").removeClass("selected");
module.slideUp("fast");
module.slideUp("fast", cb);
returned = true;
}
}
if(!returned && cb) return cb();
}
else
{
@ -220,7 +227,7 @@ var padeditbar = (function()
else if(modules[i]==moduleName)
{
$("#" + modules[i] + "link").addClass("selected");
module.slideDown("fast");
module.slideDown("fast", cb);
}
}
}

View file

@ -21,6 +21,7 @@
*/
var padutils = require('./pad_utils').padutils;
var padeditbar = require('./pad_editbar').padeditbar;
var padmodals = (function()
{
@ -30,17 +31,16 @@ var padmodals = (function()
{
pad = _pad;
},
showModal: function(modalId, duration)
showModal: function(messageId)
{
$(".modaldialog").hide();
$(modalId).show().css(
{
'opacity': 0
}).animate(
{
'opacity': 1
}, duration);
$("#modaloverlay").show().css(
padeditbar.toggleDropDown("none", function() {
$("#connectivity .visible").removeClass('visible');
$("#connectivity ."+messageId).addClass('visible');
padeditbar.toggleDropDown("connectivity");
});
},
showOverlay: function(duration) {
$("#overlay").show().css(
{
'opacity': 0
}).animate(
@ -48,19 +48,8 @@ var padmodals = (function()
'opacity': 1
}, duration);
},
hideModal: function(duration)
{
padutils.cancelActions('hide-feedbackbox');
padutils.cancelActions('hide-sharebox');
$("#sharebox-response").hide();
$(".modaldialog").animate(
{
'opacity': 0
}, duration, function()
{
$("#modaloverlay").hide();
});
$("#modaloverlay").animate(
hideOverlay: function(duration) {
$("#overlay").animate(
{
'opacity': 0
}, duration, function()