kopia lustrzana https://github.com/c9/core
commit
53f6132c0e
|
@ -7,17 +7,12 @@ if (typeof define === "undefined") {
|
||||||
define(function(require, exports, module) {
|
define(function(require, exports, module) {
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
var _ = require("lodash");
|
|
||||||
|
|
||||||
var internalDomain = ['c9.io', 'cloud9beta.com'];
|
var internalDomain = ['c9.io', 'cloud9beta.com'];
|
||||||
|
|
||||||
function hasInternalDomain(email) {
|
function hasInternalDomain(email) {
|
||||||
if (!email) return false;
|
if (!email) return false;
|
||||||
|
var emailDomain = email.split("@").pop();
|
||||||
var emailElements = email.split("@");
|
return internalDomain.indexOf(emailDomain) != -1;
|
||||||
var emailDomain = emailElements[emailElements.length - 1];
|
|
||||||
|
|
||||||
return _.contains(internalDomain, emailDomain);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = hasInternalDomain;
|
module.exports = hasInternalDomain;
|
||||||
|
|
|
@ -15,7 +15,6 @@ define(function(require, exports, module) {
|
||||||
var api = imports.api;
|
var api = imports.api;
|
||||||
var info = imports.info;
|
var info = imports.info;
|
||||||
var util = imports.util;
|
var util = imports.util;
|
||||||
var _ = require("lodash");
|
|
||||||
|
|
||||||
var join = require("path").join;
|
var join = require("path").join;
|
||||||
|
|
||||||
|
@ -346,17 +345,14 @@ define(function(require, exports, module) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function update(type, json, ud) {
|
function update(type, json, ud) {
|
||||||
// Do nothing if they are the same
|
|
||||||
if (_.isEqual(model[type], json))
|
|
||||||
return;
|
|
||||||
|
|
||||||
userData = ud;
|
userData = ud;
|
||||||
|
|
||||||
// Compare key/values (assume source has same keys as target)
|
// Compare key/values (assume source has same keys as target)
|
||||||
(function recur(source, target, base) {
|
(function recur(source, target, base) {
|
||||||
for (var prop in source) {
|
for (var prop in source) {
|
||||||
if (prop == "json()") {
|
if (prop == "json()") {
|
||||||
setJson(base, source[prop]);
|
if (!target || !isEqual(source[prop], target[prop]))
|
||||||
|
setJson(base, source[prop]);
|
||||||
}
|
}
|
||||||
else if (typeof source[prop] == "object") {
|
else if (typeof source[prop] == "object") {
|
||||||
if (!target[prop]) target[prop] = {};
|
if (!target[prop]) target[prop] = {};
|
||||||
|
@ -371,6 +367,30 @@ define(function(require, exports, module) {
|
||||||
userData = null;
|
userData = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function isEqual(a, b) {
|
||||||
|
var typeA = typeof a;
|
||||||
|
var typeB = typeof b;
|
||||||
|
if (typeA != typeB) return false;
|
||||||
|
if (!a || typeA !== "object")
|
||||||
|
return a == b;
|
||||||
|
if (Array.isArray(a)) {
|
||||||
|
if (!Array.isArray(b)) return false;
|
||||||
|
if (a.length != b.length) return false;
|
||||||
|
for (var i = 0; i < a.length; i++) {
|
||||||
|
if (!isEqual(a[i], b[i])) return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
var aKeys = Object.keys(a);
|
||||||
|
var bKeys = Object.keys(b);
|
||||||
|
if (aKeys.length != bKeys.length) return false;
|
||||||
|
for (var i = 0; i < aKeys.length; i++) {
|
||||||
|
if (!isEqual(a[aKeys[i]], b[aKeys[i]])) return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
function setNode(query, value) {
|
function setNode(query, value) {
|
||||||
return set(query, value, true);
|
return set(query, value, true);
|
||||||
}
|
}
|
||||||
|
|
Ładowanie…
Reference in New Issue