2014-07-09 19:10:42 +00:00
|
|
|
// Includes code that should be run on every single page of the site
|
2014-07-09 22:20:20 +00:00
|
|
|
// !!!! Keep white space after last require !!!!
|
|
|
|
|
//
|
|
|
|
|
//= require fakeJamClient
|
|
|
|
|
//= require fakeJamClientMessages
|
|
|
|
|
//= require fakeJamClientRecordings
|
|
|
|
|
//= require backend_alerts
|
2014-07-09 19:10:42 +00:00
|
|
|
|
|
|
|
|
(function (context, $) {
|
|
|
|
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
|
|
|
|
context.JK = context.JK || {};
|
|
|
|
|
|
2014-08-29 02:11:25 +00:00
|
|
|
var ALERT_NAMES = context.JK.ALERT_NAMES;
|
|
|
|
|
|
|
|
|
|
$(document).on('JAMKAZAM_CONSTRUCTED', function(e, data) {
|
|
|
|
|
|
|
|
|
|
var app = data.app;
|
|
|
|
|
if(!app) throw "app not found";
|
|
|
|
|
|
|
|
|
|
// makes window.jamClient / context.jamClient set to something non-null very early on
|
|
|
|
|
context.JK.initJamClient(app);
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
$(document).on('JAMKAZAM_READY', function() {
|
|
|
|
|
// this event is fired when context.app is initialized
|
|
|
|
|
|
|
|
|
|
var app = context.JK.app;
|
|
|
|
|
|
|
|
|
|
if(!app) throw "app not found"
|
|
|
|
|
|
|
|
|
|
initializeDialogs(app);
|
|
|
|
|
|
|
|
|
|
checkAudioStopped();
|
|
|
|
|
|
2014-08-31 15:30:59 +00:00
|
|
|
checkMacOSXInstalledCorrectly()
|
|
|
|
|
|
2014-08-29 02:11:25 +00:00
|
|
|
context.JK.onBackendEvent(ALERT_NAMES.SHOW_PREFERENCES, 'everywhere', function() {
|
|
|
|
|
app.layout.showDialog('client-preferences-dialog')
|
|
|
|
|
});
|
|
|
|
|
});
|
2014-07-09 19:10:42 +00:00
|
|
|
|
2014-08-31 15:30:59 +00:00
|
|
|
function checkMacOSXInstalledCorrectly() {
|
|
|
|
|
var os = context.jamClient.GetOSAsString();
|
|
|
|
|
// check if method exists at all for migration purposes
|
|
|
|
|
if(context.jamClient.IsAppInWritableVolume && os == "MacOSX" && !context.jamClient.IsAppInWritableVolume()) {
|
|
|
|
|
context.JK.Banner.showAlert(
|
|
|
|
|
{ title: "JamKazam Needs Moving!",
|
|
|
|
|
buttons: [{name: 'SHUTDOWN APPLICATION', click: function() {context.jamClient.ShutdownApplication()}} ],
|
|
|
|
|
html: $('#template-app-in-read-only-volume').html()});
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2014-07-09 22:20:20 +00:00
|
|
|
function initializeDialogs(app) {
|
|
|
|
|
|
|
|
|
|
var backendAlerts = new JK.BackendAlerts(app);
|
|
|
|
|
backendAlerts.initialize();
|
2014-07-09 19:10:42 +00:00
|
|
|
|
2014-07-09 22:20:20 +00:00
|
|
|
JK.Banner.initialize();
|
2014-07-09 19:10:42 +00:00
|
|
|
|
|
|
|
|
var shutdownDialog = new JK.ShutdownDialog(app);
|
|
|
|
|
shutdownDialog.initialize();
|
2014-07-09 22:20:20 +00:00
|
|
|
|
2014-08-14 15:09:33 +00:00
|
|
|
var googleHelper = new JK.GoogleHelper(app);
|
|
|
|
|
JK.GoogleHelperInstance = googleHelper;
|
|
|
|
|
googleHelper.initialize();
|
|
|
|
|
|
|
|
|
|
var twitterHelper = new JK.TwitterHelper(app);
|
|
|
|
|
JK.TwitterHelperInstance = twitterHelper;
|
|
|
|
|
twitterHelper.initialize(gon.global.twitter_public_account);
|
|
|
|
|
|
2014-07-09 22:20:20 +00:00
|
|
|
var facebookHelper = new JK.FacebookHelper(app);
|
|
|
|
|
JK.FacebookHelperInstance = facebookHelper;
|
|
|
|
|
facebookHelper.initialize(gon.global.facebook_app_id);
|
|
|
|
|
|
|
|
|
|
var invitationDialog = new JK.InvitationDialog(app);
|
|
|
|
|
JK.InvitationDialogInstance = invitationDialog;
|
|
|
|
|
invitationDialog.initialize(facebookHelper);
|
|
|
|
|
|
|
|
|
|
var textMessageDialog = new JK.TextMessageDialog(app);
|
|
|
|
|
JK.TextMessageDialogInstance = textMessageDialog;
|
|
|
|
|
textMessageDialog.initialize();
|
|
|
|
|
|
|
|
|
|
var friendSelectorDialog = new JK.FriendSelectorDialog(app);
|
|
|
|
|
JK.FriendSelectorDialogInstance = friendSelectorDialog;
|
|
|
|
|
friendSelectorDialog.initialize();
|
|
|
|
|
|
|
|
|
|
var launchAppDialog = new JK.LaunchAppDialog(app);
|
|
|
|
|
launchAppDialog.initialize();
|
|
|
|
|
|
|
|
|
|
var userDropdown = new JK.UserDropdown(app);
|
|
|
|
|
JK.UserDropdown = userDropdown;
|
|
|
|
|
userDropdown.initialize(invitationDialog);
|
|
|
|
|
|
|
|
|
|
var whatsNextDialog = new JK.WhatsNextDialog(app);
|
|
|
|
|
whatsNextDialog.initialize(invitationDialog);
|
|
|
|
|
|
|
|
|
|
var videoDialog = new JK.VideoDialog(app);
|
|
|
|
|
videoDialog.initialize();
|
|
|
|
|
|
2014-08-29 02:11:25 +00:00
|
|
|
var clientPreferencesDialog = new JK.ClientPreferencesDialog(app);
|
|
|
|
|
clientPreferencesDialog.initialize();
|
|
|
|
|
}
|
2014-07-09 22:20:20 +00:00
|
|
|
|
2014-08-29 02:11:25 +00:00
|
|
|
// wait 10 seconds
|
|
|
|
|
function checkAudioStopped() {
|
2014-07-09 22:20:20 +00:00
|
|
|
|
2014-08-29 14:59:12 +00:00
|
|
|
if(context.jamClient.ResetPageCounters) {
|
|
|
|
|
// upgrade concern
|
|
|
|
|
context.jamClient.ResetPageCounters();
|
|
|
|
|
|
|
|
|
|
context.JK.AudioStopTimeout = setTimeout(function() {
|
|
|
|
|
|
|
|
|
|
if(context.jamClient.IsAudioStarted()) {
|
|
|
|
|
logger.debug("checkAudioStopped: stopping audio ...")
|
|
|
|
|
context.jamClient.StopAudio();
|
|
|
|
|
}
|
|
|
|
|
}, 10000);
|
|
|
|
|
}
|
2014-08-29 02:11:25 +00:00
|
|
|
}
|
2014-07-09 22:20:20 +00:00
|
|
|
|
2014-07-09 19:10:42 +00:00
|
|
|
})(window, jQuery);
|