it('verify get single config value', function(callback) { var AuthenticationConfig = ConfigAPI.config('oae-authentication'); var PrincipalsConfig = ConfigAPI.config('oae-principals'); // Retrieve a non-existing value assert.equal(AuthenticationConfig.getValue(global.oaeTests.tenants.cam.alias, 'sso', 'enabled'), null); // Retrieve a boolean value assert.equal(AuthenticationConfig.getValue(global.oaeTests.tenants.cam.alias, 'twitter', 'enabled'), true); // Retrieve a string value assert.equal(PrincipalsConfig.getValue(global.oaeTests.tenants.cam.alias, 'user', 'defaultLanguage'), 'en_GB'); // Retrieve a suppressed value assert.equal(PrincipalsConfig.getValue(global.oaeTests.tenants.cam.alias, 'recaptcha', 'privateKey'), '6LcFWdYSAAAAANrHjt2Y5VJXoICHa95PFDarVcGs'); callback(); });
it('verify validation', function(callback) { // Verify that initializing a config factory needs a module name. This should throw an error assert.throws(function() { ConfigAPI.config(); }); // Verify that a feature needs to be provided when getting a config value var AuthenticationConfig = ConfigAPI.config('oae-authentication'); assert.equal(AuthenticationConfig.getValue(global.oaeTests.tenants.cam.alias), null); // Verify that an element needs to be provided when getting a config value assert.equal(AuthenticationConfig.getValue(global.oaeTests.tenants.cam.alias, 'twitter'), null); callback(); });
var Validator = require('validator').Validator; var Cassandra = require('oae-util/lib/cassandra'); var ConfigAPI = require('oae-config'); var Context = require('oae-context').Context; var OaeServer = require('oae-util/lib/server'); var PrincipalsAPI = require('oae-principals'); var Redis = require('oae-util/lib/redis'); var Signature = require('oae-util/lib/signature'); var TenantsAPI = require('oae-tenants'); var TenantsUtil = require('oae-tenants/lib/util'); var TZ = require('oae-util/lib/tz'); var User = require('oae-principals/lib/model').User; var log = require('oae-logger').logger('oae-authentication'); var AuthenticationConfig = ConfigAPI.config('oae-authentication'); var AuthenticationConstants = require('oae-authentication/lib/constants').AuthenticationConstants; var AuthenticationUtil = require('oae-authentication/lib/util'); var CasStrategy = require('oae-authentication/lib/strategies/cas'); var LoginId = require('oae-authentication/lib/model').LoginId; var SignedStrategy = require('oae-authentication/lib/strategies/signed'); var Token = require('oae-authentication/lib/model').Token; var globalTenantAlias; // The path to the java JAR that can be used to decrypt SAML messages. var _SAMLParserJarPath; // Holds the strategies for each tenant. var strategies = {};
*/ var _ = require('underscore'); var request = require('request'); var ActivityAPI = require('oae-activity'); var ActivityConstants = require('oae-activity/lib/constants').ActivityConstants; var AuthzUtil = require('oae-authz/lib/util'); var ConfigAPI = require('oae-config'); var log = require('oae-logger').logger('oae-doc'); var TenantsAPI = require('oae-tenants'); var TenantsUtil = require('oae-tenants/lib/util'); var TinCanAPIConstants = require('./constants').TinCanAPIConstants; var TinCanModel = require('./model'); var TinCanConfig = ConfigAPI.config('oae-tincanapi'); var config = null; /** * Initializes the TinCan API integration. * This will listen for OAE activities and will convert these into TinCan statements that can be posted to a Learning Record Store. * * @param {Object} config Configuration for the TinCan API module * @param {Function} callback Standard callback function */ var initializeTinCanAPI = module.exports.initializeTinCanAPI = function(_config, callback) { // Store the configuration values config = _config;
assert.throws(function() { ConfigAPI.config(); });
* or implied. See the License for the specific language governing * permissions and limitations under the License. */ var _ = require('underscore'); var querystring = require('querystring'); var request = require('request'); var url = require('url'); var util = require('util'); var xml2js = require('xml2js'); var ConfigAPI = require('oae-config'); var log = require('oae-logger').logger('oae-orcid'); var Validator = require('oae-authz/lib/validator').Validator; var OrcidConfig = ConfigAPI.config('oae-orcid'); var OrcidDAO = require('./internal/dao'); var OrcidRecord = require('./model'); // Object that stores the ORCID access tokens var tokens = {}; /** * ORCID (Open Researcher and Contributor ID) is a nonproprietary alphanumeric code to uniquely identify scientific and other academic authors. * It would provide for humans a persistent identity, similar to that created for content-related entities on digital networks by digital object identifiers (DOIs). * @see http://orcid.org * * Public API: http://pub.orcid.org/ * Public Sandbox API: http://pub.sandbox-1.orcid.org/ * * Member API: https://api.orcid.org/
var path = require('path'); var PropertiesParser = require('properties-parser'); var readdirp = require('readdirp'); var url = require('url'); var util = require('util'); var watch = require('watch'); var ConfigAPI = require('oae-config'); var Sanitization = require('oae-util/lib/sanitization'); var Validator = require('oae-util/lib/validator').Validator; var log = require('oae-logger').logger('oae-ui'); var UIConstants = require('./constants').UIConstants; // The Config object for the UI module. var uiConfig = ConfigAPI.config('oae-ui'); // The cached skin variables var cachedSkinVariables = null; // The cached skins per tenant. var cachedSkins = {}; // Path to the 3akai-ux repository var uiDirectory = null; // A mapping object that maps pre-optimized paths to post-optimized paths in the UI var hashes = null; // A dictionary that will hold the content for each file. This will be lazy filled. The first // time a particular file is requested, it will be cached. After that, the cached version will // be used
var util = require('util'); var AuthenticationConstants = require('oae-authentication/lib/constants').AuthenticationConstants; var AuthzConstants = require('oae-authz/lib/constants').AuthzConstants; var AuthzUtil = require('oae-authz/lib/util'); var Cassandra = require('oae-util/lib/cassandra'); var ConfigAPI = require('oae-config'); var Context = require('oae-context').Context; var log = require('oae-logger').logger('oae-principals'); var Redis = require('oae-util/lib/redis'); var Validator = require('oae-util/lib/validator').Validator; var TenantsAPI = require('oae-tenants'); var TZ = require('oae-util/lib/tz'); var Validator = require('oae-util/lib/validator').Validator; var PrincipalsConfig = ConfigAPI.config('oae-principals'); var PrincipalsConstants = require('./constants').PrincipalsConstants; var PrincipalsDAO = require('./internal/dao'); var PrincipalsEmitter = require('./internal/emitter'); var PrincipalsModel = require('./model'); var PrincipalsTermsAndConditionsAPI = require('./api.termsAndConditions'); var PrincipalsUtil = require('./util'); var fullUserProfileDecorators = {}; /** * Register a decorator for the full user profile. A decorator will, at read time, provide additional data about the user * that will be returned to the client * * @param {String} namespace The unique namespace for this decorator. This will be used as the actual property name on the full user profile object. If this namespace collides with an existing user profile property, it will be silently ignored * @param {Function} decorator The function that will provide additional data for the user profile
* * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an "AS IS" * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express * or implied. See the License for the specific language governing * permissions and limitations under the License. */ var _ = require('underscore'); var crypto = require('crypto'); var req = require('request'); var ConfigAPI = require('oae-config'); var LibrarySearchModel = require('./model'); var LibrarySearchConfig = ConfigAPI.config('oae-librarysearch'); /** * Perform a search using the Summon API * * @param {String} tenantAlias The tenantAlias * @param {String} query The query that will be passed to the Summon API * @param {Function} callback Invoked when the process completes * @param {Object} callback.err An error that occurred, if any * @param {Object} callback.results The search result object */ var getSummonResults = module.exports.getSummonResults = function(tenantAlias, query, callback) { // Create the header object that will be sent to the Summon API var header = { 'Accept': 'application/json',