moved module dependencies
This commit is contained in:
parent
9e9e738dbd
commit
bfecf9d525
|
@ -35,22 +35,23 @@ if (Common === undefined)
|
|||
|
||||
Common.component = Common.component || {};
|
||||
|
||||
Common.Analytics = Common.component.Analytics = new(function() {
|
||||
var _category;
|
||||
define(['jquery'], function($){
|
||||
Common.Analytics = Common.component.Analytics = new(function() {
|
||||
var _category;
|
||||
|
||||
return {
|
||||
initialize: function(id, category) {
|
||||
return {
|
||||
initialize: function(id, category) {
|
||||
|
||||
if (typeof id === 'undefined')
|
||||
throw 'Analytics: invalid id.';
|
||||
if (typeof id === 'undefined')
|
||||
throw 'Analytics: invalid id.';
|
||||
|
||||
if (typeof category === 'undefined' || Object.prototype.toString.apply(category) !== '[object String]')
|
||||
throw 'Analytics: invalid category type.';
|
||||
if (typeof category === 'undefined' || Object.prototype.toString.apply(category) !== '[object String]')
|
||||
throw 'Analytics: invalid category type.';
|
||||
|
||||
_category = category;
|
||||
_category = category;
|
||||
|
||||
$('head').append(
|
||||
'<script type="text/javascript">' +
|
||||
$('head').append(
|
||||
'<script type="text/javascript">' +
|
||||
'var _gaq = _gaq || [];' +
|
||||
'_gaq.push(["_setAccount", "' + id + '"]);' +
|
||||
'_gaq.push(["_trackPageview"]);' +
|
||||
|
@ -60,27 +61,28 @@ Common.Analytics = Common.component.Analytics = new(function() {
|
|||
'var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(ga, s);' +
|
||||
'})();' +
|
||||
'</script>'
|
||||
);
|
||||
},
|
||||
);
|
||||
},
|
||||
|
||||
trackEvent: function(action, label, value) {
|
||||
trackEvent: function(action, label, value) {
|
||||
|
||||
if (typeof action !== 'undefined' && Object.prototype.toString.apply(action) !== '[object String]')
|
||||
throw 'Analytics: invalid action type.';
|
||||
if (typeof action !== 'undefined' && Object.prototype.toString.apply(action) !== '[object String]')
|
||||
throw 'Analytics: invalid action type.';
|
||||
|
||||
if (typeof label !== 'undefined' && Object.prototype.toString.apply(label) !== '[object String]')
|
||||
throw 'Analytics: invalid label type.';
|
||||
if (typeof label !== 'undefined' && Object.prototype.toString.apply(label) !== '[object String]')
|
||||
throw 'Analytics: invalid label type.';
|
||||
|
||||
if (typeof value !== 'undefined' && !(Object.prototype.toString.apply(value) === '[object Number]' && isFinite(value)))
|
||||
throw 'Analytics: invalid value type.';
|
||||
if (typeof value !== 'undefined' && !(Object.prototype.toString.apply(value) === '[object Number]' && isFinite(value)))
|
||||
throw 'Analytics: invalid value type.';
|
||||
|
||||
if (typeof _gaq === 'undefined')
|
||||
return;
|
||||
if (typeof _gaq === 'undefined')
|
||||
return;
|
||||
|
||||
if (_category === 'undefined')
|
||||
throw 'Analytics is not initialized.';
|
||||
if (_category === 'undefined')
|
||||
throw 'Analytics is not initialized.';
|
||||
|
||||
_gaq.push(['_trackEvent', _category, action, label, value]);
|
||||
_gaq.push(['_trackEvent', _category, action, label, value]);
|
||||
}
|
||||
}
|
||||
}
|
||||
})();
|
||||
})();
|
||||
});
|
||||
|
|
|
@ -30,224 +30,227 @@
|
|||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
|
||||
if (Common === undefined) {
|
||||
var Common = {};
|
||||
}
|
||||
|
||||
Common.Gateway = new(function() {
|
||||
var me = this,
|
||||
$me = $(me);
|
||||
define(['jquery'], function ($) {
|
||||
Common.Gateway = new(function() {
|
||||
var me = this,
|
||||
$me = $(me);
|
||||
|
||||
var commandMap = {
|
||||
'init': function(data) {
|
||||
$me.trigger('init', data);
|
||||
},
|
||||
var commandMap = {
|
||||
'init': function(data) {
|
||||
$me.trigger('init', data);
|
||||
},
|
||||
|
||||
'openDocument': function(data) {
|
||||
$me.trigger('opendocument', data);
|
||||
},
|
||||
'openDocument': function(data) {
|
||||
$me.trigger('opendocument', data);
|
||||
},
|
||||
|
||||
'showMessage': function(data) {
|
||||
$me.trigger('showmessage', data);
|
||||
},
|
||||
'showMessage': function(data) {
|
||||
$me.trigger('showmessage', data);
|
||||
},
|
||||
|
||||
'applyEditRights': function(data) {
|
||||
$me.trigger('applyeditrights', data);
|
||||
},
|
||||
'applyEditRights': function(data) {
|
||||
$me.trigger('applyeditrights', data);
|
||||
},
|
||||
|
||||
'processSaveResult': function(data) {
|
||||
$me.trigger('processsaveresult', data);
|
||||
},
|
||||
'processSaveResult': function(data) {
|
||||
$me.trigger('processsaveresult', data);
|
||||
},
|
||||
|
||||
'processRightsChange': function(data) {
|
||||
$me.trigger('processrightschange', data);
|
||||
},
|
||||
'processRightsChange': function(data) {
|
||||
$me.trigger('processrightschange', data);
|
||||
},
|
||||
|
||||
'refreshHistory': function(data) {
|
||||
$me.trigger('refreshhistory', data);
|
||||
},
|
||||
'refreshHistory': function(data) {
|
||||
$me.trigger('refreshhistory', data);
|
||||
},
|
||||
|
||||
'setHistoryData': function(data) {
|
||||
$me.trigger('sethistorydata', data);
|
||||
},
|
||||
'setHistoryData': function(data) {
|
||||
$me.trigger('sethistorydata', data);
|
||||
},
|
||||
|
||||
'setEmailAddresses': function(data) {
|
||||
$me.trigger('setemailaddresses', data);
|
||||
},
|
||||
'setEmailAddresses': function(data) {
|
||||
$me.trigger('setemailaddresses', data);
|
||||
},
|
||||
|
||||
'processMailMerge': function(data) {
|
||||
$me.trigger('processmailmerge', data);
|
||||
},
|
||||
'processMailMerge': function(data) {
|
||||
$me.trigger('processmailmerge', data);
|
||||
},
|
||||
|
||||
'downloadAs': function() {
|
||||
$me.trigger('downloadas');
|
||||
},
|
||||
'downloadAs': function() {
|
||||
$me.trigger('downloadas');
|
||||
},
|
||||
|
||||
'processMouse': function(data) {
|
||||
$me.trigger('processmouse', data);
|
||||
},
|
||||
'processMouse': function(data) {
|
||||
$me.trigger('processmouse', data);
|
||||
},
|
||||
|
||||
'internalCommand': function(data) {
|
||||
$me.trigger('internalcommand', data);
|
||||
},
|
||||
'internalCommand': function(data) {
|
||||
$me.trigger('internalcommand', data);
|
||||
},
|
||||
|
||||
'resetFocus': function(data) {
|
||||
$me.trigger('resetfocus', data);
|
||||
}
|
||||
};
|
||||
'resetFocus': function(data) {
|
||||
$me.trigger('resetfocus', data);
|
||||
}
|
||||
};
|
||||
|
||||
var _postMessage = function(msg) {
|
||||
// TODO: specify explicit origin
|
||||
if (window.parent && window.JSON) {
|
||||
window.parent.postMessage(window.JSON.stringify(msg), "*");
|
||||
}
|
||||
};
|
||||
var _postMessage = function(msg) {
|
||||
// TODO: specify explicit origin
|
||||
if (window.parent && window.JSON) {
|
||||
window.parent.postMessage(window.JSON.stringify(msg), "*");
|
||||
}
|
||||
};
|
||||
|
||||
var _onMessage = function(msg) {
|
||||
// TODO: check message origin
|
||||
var data = msg.data;
|
||||
if (Object.prototype.toString.apply(data) !== '[object String]' || !window.JSON) {
|
||||
return;
|
||||
var _onMessage = function(msg) {
|
||||
// TODO: check message origin
|
||||
var data = msg.data;
|
||||
if (Object.prototype.toString.apply(data) !== '[object String]' || !window.JSON) {
|
||||
return;
|
||||
}
|
||||
|
||||
var cmd, handler;
|
||||
|
||||
try {
|
||||
cmd = window.JSON.parse(data)
|
||||
} catch(e) {
|
||||
cmd = '';
|
||||
}
|
||||
|
||||
if (cmd) {
|
||||
handler = commandMap[cmd.command];
|
||||
if (handler) {
|
||||
handler.call(this, cmd.data);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
var fn = function(e) { _onMessage(e); };
|
||||
|
||||
if (window.attachEvent) {
|
||||
window.attachEvent('onmessage', fn);
|
||||
} else {
|
||||
window.addEventListener('message', fn, false);
|
||||
}
|
||||
|
||||
var cmd, handler;
|
||||
return {
|
||||
|
||||
try {
|
||||
cmd = window.JSON.parse(data)
|
||||
} catch(e) {
|
||||
cmd = '';
|
||||
}
|
||||
ready: function() {
|
||||
_postMessage({ event: 'onReady' });
|
||||
},
|
||||
|
||||
if (cmd) {
|
||||
handler = commandMap[cmd.command];
|
||||
if (handler) {
|
||||
handler.call(this, cmd.data);
|
||||
save: function(url) {
|
||||
_postMessage({
|
||||
event: 'onSave',
|
||||
data: url
|
||||
});
|
||||
},
|
||||
|
||||
requestEditRights: function() {
|
||||
_postMessage({ event: 'onRequestEditRights' });
|
||||
},
|
||||
|
||||
requestHistory: function() {
|
||||
_postMessage({ event: 'onRequestHistory' });
|
||||
},
|
||||
|
||||
requestHistoryData: function(revision) {
|
||||
_postMessage({
|
||||
event: 'onRequestHistoryData',
|
||||
data: revision
|
||||
});
|
||||
},
|
||||
|
||||
requestRestore: function(version, url) {
|
||||
_postMessage({
|
||||
event: 'onRequestRestore',
|
||||
data: {
|
||||
version: version,
|
||||
url: url
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
requestEmailAddresses: function() {
|
||||
_postMessage({ event: 'onRequestEmailAddresses' });
|
||||
},
|
||||
|
||||
requestStartMailMerge: function() {
|
||||
_postMessage({event: 'onRequestStartMailMerge'});
|
||||
},
|
||||
|
||||
requestHistoryClose: function(revision) {
|
||||
_postMessage({event: 'onRequestHistoryClose'});
|
||||
},
|
||||
|
||||
reportError: function(code, description) {
|
||||
_postMessage({
|
||||
event: 'onError',
|
||||
data: {
|
||||
errorCode: code,
|
||||
errorDescription: description
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
sendInfo: function(info) {
|
||||
_postMessage({
|
||||
event: 'onInfo',
|
||||
data: info
|
||||
});
|
||||
},
|
||||
|
||||
setDocumentModified: function(modified) {
|
||||
_postMessage({
|
||||
event: 'onDocumentStateChange',
|
||||
data: modified
|
||||
});
|
||||
},
|
||||
|
||||
internalMessage: function(type, data) {
|
||||
_postMessage({
|
||||
event: 'onInternalMessage',
|
||||
data: {
|
||||
type: type,
|
||||
data: data
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
updateVersion: function() {
|
||||
_postMessage({ event: 'onOutdatedVersion' });
|
||||
},
|
||||
|
||||
downloadAs: function(url) {
|
||||
_postMessage({
|
||||
event: 'onDownloadAs',
|
||||
data: url
|
||||
});
|
||||
},
|
||||
|
||||
collaborativeChanges: function() {
|
||||
_postMessage({event: 'onCollaborativeChanges'});
|
||||
},
|
||||
|
||||
requestRename: function(title) {
|
||||
_postMessage({event: 'onRequestRename', data: title});
|
||||
},
|
||||
|
||||
metaChange: function(meta) {
|
||||
_postMessage({event: 'onMetaChange', data: meta});
|
||||
},
|
||||
|
||||
on: function(event, handler){
|
||||
var localHandler = function(event, data){
|
||||
handler.call(me, data)
|
||||
};
|
||||
|
||||
$me.on(event, localHandler);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
var fn = function(e) { _onMessage(e); };
|
||||
|
||||
if (window.attachEvent) {
|
||||
window.attachEvent('onmessage', fn);
|
||||
} else {
|
||||
window.addEventListener('message', fn, false);
|
||||
}
|
||||
|
||||
return {
|
||||
|
||||
ready: function() {
|
||||
_postMessage({ event: 'onReady' });
|
||||
},
|
||||
|
||||
save: function(url) {
|
||||
_postMessage({
|
||||
event: 'onSave',
|
||||
data: url
|
||||
});
|
||||
},
|
||||
|
||||
requestEditRights: function() {
|
||||
_postMessage({ event: 'onRequestEditRights' });
|
||||
},
|
||||
|
||||
requestHistory: function() {
|
||||
_postMessage({ event: 'onRequestHistory' });
|
||||
},
|
||||
|
||||
requestHistoryData: function(revision) {
|
||||
_postMessage({
|
||||
event: 'onRequestHistoryData',
|
||||
data: revision
|
||||
});
|
||||
},
|
||||
|
||||
requestRestore: function(version, url) {
|
||||
_postMessage({
|
||||
event: 'onRequestRestore',
|
||||
data: {
|
||||
version: version,
|
||||
url: url
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
requestEmailAddresses: function() {
|
||||
_postMessage({ event: 'onRequestEmailAddresses' });
|
||||
},
|
||||
|
||||
requestStartMailMerge: function() {
|
||||
_postMessage({event: 'onRequestStartMailMerge'});
|
||||
},
|
||||
|
||||
requestHistoryClose: function(revision) {
|
||||
_postMessage({event: 'onRequestHistoryClose'});
|
||||
},
|
||||
|
||||
reportError: function(code, description) {
|
||||
_postMessage({
|
||||
event: 'onError',
|
||||
data: {
|
||||
errorCode: code,
|
||||
errorDescription: description
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
sendInfo: function(info) {
|
||||
_postMessage({
|
||||
event: 'onInfo',
|
||||
data: info
|
||||
});
|
||||
},
|
||||
|
||||
setDocumentModified: function(modified) {
|
||||
_postMessage({
|
||||
event: 'onDocumentStateChange',
|
||||
data: modified
|
||||
});
|
||||
},
|
||||
|
||||
internalMessage: function(type, data) {
|
||||
_postMessage({
|
||||
event: 'onInternalMessage',
|
||||
data: {
|
||||
type: type,
|
||||
data: data
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
updateVersion: function() {
|
||||
_postMessage({ event: 'onOutdatedVersion' });
|
||||
},
|
||||
|
||||
downloadAs: function(url) {
|
||||
_postMessage({
|
||||
event: 'onDownloadAs',
|
||||
data: url
|
||||
});
|
||||
},
|
||||
|
||||
collaborativeChanges: function() {
|
||||
_postMessage({event: 'onCollaborativeChanges'});
|
||||
},
|
||||
|
||||
requestRename: function(title) {
|
||||
_postMessage({event: 'onRequestRename', data: title});
|
||||
},
|
||||
|
||||
metaChange: function(meta) {
|
||||
_postMessage({event: 'onMetaChange', data: meta});
|
||||
},
|
||||
|
||||
on: function(event, handler){
|
||||
var localHandler = function(event, data){
|
||||
handler.call(me, data)
|
||||
};
|
||||
|
||||
$me.on(event, localHandler);
|
||||
}
|
||||
}
|
||||
|
||||
})();
|
||||
})();
|
||||
});
|
||||
|
|
|
@ -39,44 +39,45 @@
|
|||
*
|
||||
*/
|
||||
|
||||
(function() {
|
||||
|
||||
//Extend jQuery functions
|
||||
jQuery.fn.extend( {
|
||||
single: function(types, selector, data, fn) {
|
||||
return this.off(types, fn).on(types, selector, data, fn);
|
||||
}
|
||||
});
|
||||
|
||||
//Extend Dom7 functions
|
||||
var methods = ['addClass', 'toggleClass', 'removeClass'];
|
||||
|
||||
_.each(methods, function (method, index) {
|
||||
var originalMethod = Dom7.fn[method];
|
||||
|
||||
Dom7.fn[method] = function(className) {
|
||||
var result = originalMethod.apply(this, arguments);
|
||||
this.trigger(method, className);
|
||||
return result;
|
||||
};
|
||||
});
|
||||
|
||||
//Extend Underscope functions
|
||||
_.buffered = function(func, buffer, scope, args) {
|
||||
var timerId;
|
||||
|
||||
return function() {
|
||||
var callArgs = args || Array.prototype.slice.call(arguments, 0),
|
||||
me = scope || this;
|
||||
|
||||
if (timerId) {
|
||||
clearTimeout(timerId);
|
||||
define(
|
||||
['jquery','underscore','framework7'],
|
||||
function () {
|
||||
//Extend jQuery functions
|
||||
jQuery.fn.extend( {
|
||||
single: function(types, selector, data, fn) {
|
||||
return this.off(types, fn).on(types, selector, data, fn);
|
||||
}
|
||||
});
|
||||
|
||||
timerId = setTimeout(function(){
|
||||
func.apply(me, callArgs);
|
||||
}, buffer);
|
||||
//Extend Dom7 functions
|
||||
var methods = ['addClass', 'toggleClass', 'removeClass'];
|
||||
|
||||
_.each(methods, function (method, index) {
|
||||
var originalMethod = Dom7.fn[method];
|
||||
|
||||
Dom7.fn[method] = function(className) {
|
||||
var result = originalMethod.apply(this, arguments);
|
||||
this.trigger(method, className);
|
||||
return result;
|
||||
};
|
||||
});
|
||||
|
||||
//Extend Underscope functions
|
||||
_.buffered = function(func, buffer, scope, args) {
|
||||
var timerId;
|
||||
|
||||
return function() {
|
||||
var callArgs = args || Array.prototype.slice.call(arguments, 0),
|
||||
me = scope || this;
|
||||
|
||||
if (timerId) {
|
||||
clearTimeout(timerId);
|
||||
}
|
||||
|
||||
timerId = setTimeout(function(){
|
||||
func.apply(me, callArgs);
|
||||
}, buffer);
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
})();
|
||||
}
|
||||
);
|
||||
|
|
Loading…
Reference in a new issue