diff --git a/.gitignore b/.gitignore
new file mode 100644
index 00000000..bb85398e
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,10 @@
+/.idea/
+*.iml
+node_modules
+npm.log
+npm-debug.log
+*.iml
+.idea
+Web.config
+**/.DS_Store
+.DS_Store
\ No newline at end of file
diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 00000000..15b50a3b
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,57 @@
+[submodule "submodules/fenix-ui-dashboard"]
+ path = submodules/fenix-ui-dashboard
+ url = https://github.com/FENIX-Platform/fenix-ui-dashboard
+[submodule "submodules/fenix-ui-DSDEditor"]
+ path = submodules/fenix-ui-DSDEditor
+ url = https://github.com/FENIX-Platform/fenix-ui-DSDEditor
+[submodule "submodules/fenix-ui-DataEditor"]
+ path = submodules/fenix-ui-DataEditor
+ url = https://github.com/FENIX-Platform/fenix-ui-DataEditor
+[submodule "submodules/fenix-ui-metadata-editor"]
+ path = submodules/fenix-ui-metadata-editor
+ url = https://github.com/FENIX-Platform/fenix-ui-metadata-editor
+[submodule "submodules/fenix-ui-map-creator"]
+ path = submodules/fenix-ui-map-creator
+ url = https://github.com/FENIX-Platform/fenix-ui-map-creator
+[submodule "submodules/fenix-ui-chart-creator"]
+ path = submodules/fenix-ui-chart-creator
+ url = https://github.com/FENIX-Platform/fenix-ui-chart-creator
+[submodule "submodules/fenix-ui-dataUpload"]
+ path = submodules/fenix-ui-dataUpload
+ url = https://github.com/FENIX-Platform/fenix-ui-dataUpload
+[submodule "submodules/fenix-ui-data-management"]
+ path = submodules/fenix-ui-data-management
+ url = https://github.com/FENIX-Platform/fenix-ui-data-management
+[submodule "submodules/fenix-ui-filter"]
+ path = submodules/fenix-ui-filter
+ url = https://github.com/FENIX-Platform/fenix-ui-filter
+[submodule "submodules/fenix-ui-metadata-viewer"]
+ path = submodules/fenix-ui-metadata-viewer
+ url = https://github.com/FENIX-Platform/fenix-ui-metadata-viewer
+[submodule "submodules/fenix-ui-common"]
+ path = submodules/fenix-ui-common
+ url = https://github.com/FENIX-Platform/fenix-ui-common
+[submodule "submodules/fenix-ui-catalog"]
+ path = submodules/fenix-ui-catalog
+ url = https://github.com/FENIX-Platform/fenix-ui-catalog
+[submodule "submodules/fenix-ui-reports"]
+ path = submodules/fenix-ui-reports
+ url = https://github.com/FENIX-Platform/fenix-ui-reports
+[submodule "submodules/fenix-ui-menu"]
+ path = submodules/fenix-ui-menu
+ url = https://github.com/FENIX-Platform/fenix-ui-menu
+[submodule "submodules/fenix-ui-map"]
+ path = submodules/fenix-ui-map
+ url = https://github.com/FENIX-Platform/fenix-ui-map
+[submodule "submodules/fenix-ui-table-creator"]
+ path = submodules/fenix-ui-table-creator
+ url = https://github.com/FENIX-Platform/fenix-ui-table-creator
+[submodule "submodules/fenix-ui-analysis"]
+ path = submodules/fenix-ui-analysis
+ url = https://github.com/FENIX-Platform/fenix-ui-analysis.git
+[submodule "submodules/fenix-ui-visualization-box"]
+ path = submodules/fenix-ui-visualization-box
+ url = https://github.com/FENIX-Platform/fenix-ui-visualization-box.git
+[submodule "submodules/fenix-ui-datamanagement-commons"]
+ path = submodules/fenix-ui-datamanagement-commons
+ url = https://github.com/FENIX-Platform/fenix-ui-datamanagement-commons.git
diff --git a/chaplin.js b/chaplin.js
new file mode 100644
index 00000000..16fbe388
--- /dev/null
+++ b/chaplin.js
@@ -0,0 +1,3148 @@
+/*!
+ * Chaplin 1.1.1
+ *
+ * Chaplin may be freely distributed under the MIT license.
+ * For all details and documentation:
+ * http://chaplinjs.org
+ */
+
+(function(){
+
+ var loader = (function() {
+ var modules = {};
+ var cache = {};
+
+ var dummy = function() {return function() {};};
+ var initModule = function(name, definition) {
+ var module = {id: name, exports: {}};
+ definition(module.exports, dummy(), module);
+ var exports = cache[name] = module.exports;
+ return exports;
+ };
+
+ var loader = function(path) {
+ if (cache.hasOwnProperty(path)) return cache[path];
+ if (modules.hasOwnProperty(path)) return initModule(path, modules[path]);
+ throw new Error('Cannot find module "' + path + '"');
+ };
+
+ loader.register = function(bundle, fn) {
+ modules[bundle] = fn;
+ };
+ return loader;
+ })();
+
+ loader.register('chaplin/application', function(e, r, module) {
+ 'use strict';
+ var Application, Backbone, Composer, Dispatcher, EventBroker, Layout, Router, mediator, _;
+
+ _ = loader('underscore');
+
+ Backbone = loader('backbone');
+
+ Dispatcher = loader('chaplin/dispatcher');
+
+ Layout = loader('chaplin/views/layout');
+
+ Composer = loader('chaplin/composer');
+
+ Router = loader('chaplin/lib/router');
+
+ EventBroker = loader('chaplin/lib/event_broker');
+
+ mediator = loader('chaplin/mediator');
+
+ module.exports = Application = (function() {
+ Application.extend = Backbone.Model.extend;
+
+ _.extend(Application.prototype, EventBroker);
+
+ Application.prototype.title = '';
+
+ Application.prototype.dispatcher = null;
+
+ Application.prototype.layout = null;
+
+ Application.prototype.router = null;
+
+ Application.prototype.composer = null;
+
+ Application.prototype.started = false;
+
+ function Application(options) {
+ if (options == null) {
+ options = {};
+ }
+ this.initialize(options);
+ }
+
+ Application.prototype.initialize = function(options) {
+ if (options == null) {
+ options = {};
+ }
+ if (this.started) {
+ throw new Error('Application#initialize: App was already started');
+ }
+ this.initRouter(options.routes, options);
+ this.initDispatcher(options);
+ this.initLayout(options);
+ this.initComposer(options);
+ this.initMediator();
+ return this.start();
+ };
+
+ Application.prototype.initDispatcher = function(options) {
+ return this.dispatcher = new Dispatcher(options);
+ };
+
+ Application.prototype.initLayout = function(options) {
+ if (options == null) {
+ options = {};
+ }
+ if (options.title == null) {
+ options.title = this.title;
+ }
+ return this.layout = new Layout(options);
+ };
+
+ Application.prototype.initComposer = function(options) {
+ if (options == null) {
+ options = {};
+ }
+ return this.composer = new Composer(options);
+ };
+
+ Application.prototype.initMediator = function() {
+ return mediator.seal();
+ };
+
+ Application.prototype.initRouter = function(routes, options) {
+ this.router = new Router(options);
+ return typeof routes === "function" ? routes(this.router.match) : void 0;
+ };
+
+ Application.prototype.start = function() {
+ this.router.startHistory();
+ this.started = true;
+ return typeof Object.freeze === "function" ? Object.freeze(this) : void 0;
+ };
+
+ Application.prototype.disposed = false;
+
+ Application.prototype.dispose = function() {
+ var prop, properties, _i, _len;
+ if (this.disposed) {
+ return;
+ }
+ properties = ['dispatcher', 'layout', 'router', 'composer'];
+ for (_i = 0, _len = properties.length; _i < _len; _i++) {
+ prop = properties[_i];
+ if (this[prop] != null) {
+ this[prop].dispose();
+ }
+ }
+ this.disposed = true;
+ return typeof Object.freeze === "function" ? Object.freeze(this) : void 0;
+ };
+
+ return Application;
+
+ })();
+
+//# sourceMappingURL=application.js.map
+
+ });;loader.register('chaplin/mediator', function(e, r, module) {
+ 'use strict';
+ var Backbone, handlers, mediator, support, utils, _,
+ __slice = [].slice;
+
+ Backbone = loader('backbone');
+
+ _ = loader('underscore');
+
+ support = loader('chaplin/lib/support');
+
+ utils = loader('chaplin/lib/utils');
+
+ mediator = {};
+
+ mediator.subscribe = mediator.on = Backbone.Events.on;
+
+ mediator.subscribeOnce = mediator.once = Backbone.Events.once;
+
+ mediator.unsubscribe = mediator.off = Backbone.Events.off;
+
+ mediator.publish = mediator.trigger = Backbone.Events.trigger;
+
+ mediator._callbacks = null;
+
+ handlers = mediator._handlers = {};
+
+ mediator.setHandler = function(name, method, instance) {
+ return handlers[name] = {
+ instance: instance,
+ method: method
+ };
+ };
+
+ mediator.execute = function() {
+ var args, handler, name, nameOrObj, silent;
+ nameOrObj = arguments[0], args = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
+ silent = false;
+ if (typeof nameOrObj === 'object') {
+ silent = nameOrObj.silent;
+ name = nameOrObj.name;
+ } else {
+ name = nameOrObj;
+ }
+ handler = handlers[name];
+ if (handler) {
+ return handler.method.apply(handler.instance, args);
+ } else if (!silent) {
+ throw new Error("mediator.execute: " + name + " handler is not defined");
+ }
+ };
+
+ mediator.removeHandlers = function(instanceOrNames) {
+ var handler, name, _i, _len;
+ if (!instanceOrNames) {
+ mediator._handlers = {};
+ }
+ if (utils.isArray(instanceOrNames)) {
+ for (_i = 0, _len = instanceOrNames.length; _i < _len; _i++) {
+ name = instanceOrNames[_i];
+ delete handlers[name];
+ }
+ } else {
+ for (name in handlers) {
+ handler = handlers[name];
+ if (handler.instance === instanceOrNames) {
+ delete handlers[name];
+ }
+ }
+ }
+ };
+
+ utils.readonly(mediator, 'subscribe', 'subscribeOnce', 'unsubscribe', 'publish', 'setHandler', 'execute', 'removeHandlers');
+
+ mediator.seal = function() {
+ if (support.propertyDescriptors && Object.seal) {
+ return Object.seal(mediator);
+ }
+ };
+
+ utils.readonly(mediator, 'seal');
+
+ module.exports = mediator;
+
+//# sourceMappingURL=mediator.js.map
+
+ });;loader.register('chaplin/dispatcher', function(e, r, module) {
+ 'use strict';
+ var Backbone, Dispatcher, EventBroker, mediator, utils, _;
+
+ _ = loader('underscore');
+
+ Backbone = loader('backbone');
+
+ mediator = loader('chaplin/mediator');
+
+ utils = loader('chaplin/lib/utils');
+
+ EventBroker = loader('chaplin/lib/event_broker');
+
+ module.exports = Dispatcher = (function() {
+ Dispatcher.extend = Backbone.Model.extend;
+
+ _.extend(Dispatcher.prototype, EventBroker);
+
+ Dispatcher.prototype.previousRoute = null;
+
+ Dispatcher.prototype.currentController = null;
+
+ Dispatcher.prototype.currentRoute = null;
+
+ Dispatcher.prototype.currentParams = null;
+
+ Dispatcher.prototype.currentQuery = null;
+
+ function Dispatcher() {
+ this.initialize.apply(this, arguments);
+ }
+
+ Dispatcher.prototype.initialize = function(options) {
+ if (options == null) {
+ options = {};
+ }
+ this.settings = _.defaults(options, {
+ controllerPath: 'controllers/',
+ controllerSuffix: '_controller'
+ });
+ return this.subscribeEvent('router:match', this.dispatch);
+ };
+
+ Dispatcher.prototype.dispatch = function(route, params, options) {
+ var _ref, _ref1;
+ params = params ? _.extend({}, params) : {};
+ options = options ? _.extend({}, options) : {};
+ if (options.query == null) {
+ options.query = {};
+ }
+ if (options.forceStartup !== true) {
+ options.forceStartup = false;
+ }
+ if (!options.forceStartup && ((_ref = this.currentRoute) != null ? _ref.controller : void 0) === route.controller && ((_ref1 = this.currentRoute) != null ? _ref1.action : void 0) === route.action && _.isEqual(this.currentParams, params) && _.isEqual(this.currentQuery, options.query)) {
+ return;
+ }
+ return this.loadController(route.controller, (function(_this) {
+ return function(Controller) {
+ return _this.controllerLoaded(route, params, options, Controller);
+ };
+ })(this));
+ };
+
+ Dispatcher.prototype.loadController = function(name, handler) {
+ var fileName, moduleName;
+ if (name && typeof name === 'object') {
+ return handler(name);
+ }
+ fileName = name + this.settings.controllerSuffix;
+ moduleName = this.settings.controllerPath + fileName;
+ if (typeof define !== "undefined" && define !== null ? define.amd : void 0) {
+ return require([moduleName], handler);
+ } else {
+ return setTimeout((function(_this) {
+ return function() {
+ return handler(require(moduleName));
+ };
+ })(this), 0);
+ }
+ };
+
+ Dispatcher.prototype.controllerLoaded = function(route, params, options, Controller) {
+ var controller, prev, previous;
+ if (this.nextPreviousRoute = this.currentRoute) {
+ previous = _.extend({}, this.nextPreviousRoute);
+ if (this.currentParams != null) {
+ previous.params = this.currentParams;
+ }
+ if (previous.previous) {
+ delete previous.previous;
+ }
+ prev = {
+ previous: previous
+ };
+ }
+ this.nextCurrentRoute = _.extend({}, route, prev);
+ controller = new Controller(params, this.nextCurrentRoute, options);
+ return this.executeBeforeAction(controller, this.nextCurrentRoute, params, options);
+ };
+
+ Dispatcher.prototype.executeAction = function(controller, route, params, options) {
+ if (this.currentController) {
+ this.publishEvent('beforeControllerDispose', this.currentController);
+ this.currentController.dispose(params, route, options);
+ }
+ this.currentController = controller;
+ this.currentParams = _.extend({}, params);
+ this.currentQuery = _.extend({}, options.query);
+ controller[route.action](params, route, options);
+ if (controller.redirected) {
+ return;
+ }
+ return this.publishEvent('dispatcher:dispatch', this.currentController, params, route, options);
+ };
+
+ Dispatcher.prototype.executeBeforeAction = function(controller, route, params, options) {
+ var before, executeAction, promise;
+ before = controller.beforeAction;
+ executeAction = (function(_this) {
+ return function() {
+ if (controller.redirected || _this.currentRoute && route === _this.currentRoute) {
+ _this.nextPreviousRoute = _this.nextCurrentRoute = null;
+ controller.dispose();
+ return;
+ }
+ _this.previousRoute = _this.nextPreviousRoute;
+ _this.currentRoute = _this.nextCurrentRoute;
+ _this.nextPreviousRoute = _this.nextCurrentRoute = null;
+ return _this.executeAction(controller, route, params, options);
+ };
+ })(this);
+ if (!before) {
+ executeAction();
+ return;
+ }
+ if (typeof before !== 'function') {
+ throw new TypeError('Controller#beforeAction: function expected. ' + 'Old object-like form is not supported.');
+ }
+ promise = controller.beforeAction(params, route, options);
+ if (promise && promise.then) {
+ return promise.then(executeAction);
+ } else {
+ return executeAction();
+ }
+ };
+
+ Dispatcher.prototype.disposed = false;
+
+ Dispatcher.prototype.dispose = function() {
+ if (this.disposed) {
+ return;
+ }
+ this.unsubscribeAllEvents();
+ this.disposed = true;
+ return typeof Object.freeze === "function" ? Object.freeze(this) : void 0;
+ };
+
+ return Dispatcher;
+
+ })();
+
+//# sourceMappingURL=dispatcher.js.map
+
+ });;loader.register('chaplin/composer', function(e, r, module) {
+ 'use strict';
+ var Backbone, Composer, Composition, EventBroker, mediator, utils, _;
+
+ _ = loader('underscore');
+
+ Backbone = loader('backbone');
+
+ mediator = loader('chaplin/mediator');
+
+ utils = loader('chaplin/lib/utils');
+
+ Composition = loader('chaplin/lib/composition');
+
+ EventBroker = loader('chaplin/lib/event_broker');
+
+ module.exports = Composer = (function() {
+ Composer.extend = Backbone.Model.extend;
+
+ _.extend(Composer.prototype, EventBroker);
+
+ Composer.prototype.compositions = null;
+
+ function Composer() {
+ this.initialize.apply(this, arguments);
+ }
+
+ Composer.prototype.initialize = function(options) {
+ if (options == null) {
+ options = {};
+ }
+ this.compositions = {};
+ mediator.setHandler('composer:compose', this.compose, this);
+ mediator.setHandler('composer:retrieve', this.retrieve, this);
+ return this.subscribeEvent('dispatcher:dispatch', this.cleanup);
+ };
+
+ Composer.prototype.compose = function(name, second, third) {
+ if (typeof second === 'function') {
+ if (third || second.prototype.dispose) {
+ if (second.prototype instanceof Composition) {
+ return this._compose(name, {
+ composition: second,
+ options: third
+ });
+ } else {
+ return this._compose(name, {
+ options: third,
+ compose: function() {
+ var autoRender, disabledAutoRender;
+ if (second.prototype instanceof Backbone.Model || second.prototype instanceof Backbone.Collection) {
+ this.item = new second(null, this.options);
+ } else {
+ this.item = new second(this.options);
+ }
+ autoRender = this.item.autoRender;
+ disabledAutoRender = autoRender === void 0 || !autoRender;
+ if (disabledAutoRender && typeof this.item.render === 'function') {
+ return this.item.render();
+ }
+ }
+ });
+ }
+ }
+ return this._compose(name, {
+ compose: second
+ });
+ }
+ if (typeof third === 'function') {
+ return this._compose(name, {
+ compose: third,
+ options: second
+ });
+ }
+ return this._compose(name, second);
+ };
+
+ Composer.prototype._compose = function(name, options) {
+ var composition, current, isPromise, returned;
+ if (typeof options.compose !== 'function' && (options.composition == null)) {
+ throw new Error('Composer#compose was used incorrectly');
+ }
+ if (options.composition != null) {
+ composition = new options.composition(options.options);
+ } else {
+ composition = new Composition(options.options);
+ composition.compose = options.compose;
+ if (options.check) {
+ composition.check = options.check;
+ }
+ }
+ current = this.compositions[name];
+ isPromise = false;
+ if (current && current.check(composition.options)) {
+ current.stale(false);
+ } else {
+ if (current) {
+ current.dispose();
+ }
+ returned = composition.compose(composition.options);
+ isPromise = typeof (returned != null ? returned.then : void 0) === 'function';
+ composition.stale(false);
+ this.compositions[name] = composition;
+ }
+ if (isPromise) {
+ return returned;
+ } else {
+ return this.compositions[name].item;
+ }
+ };
+
+ Composer.prototype.retrieve = function(name) {
+ var active;
+ active = this.compositions[name];
+ if (active && !active.stale()) {
+ return active.item;
+ } else {
+ return void 0;
+ }
+ };
+
+ Composer.prototype.cleanup = function() {
+ var composition, name, _ref;
+ _ref = this.compositions;
+ for (name in _ref) {
+ composition = _ref[name];
+ if (composition.stale()) {
+ composition.dispose();
+ delete this.compositions[name];
+ } else {
+ composition.stale(true);
+ }
+ }
+ };
+
+ Composer.prototype.dispose = function() {
+ var composition, name, _ref;
+ if (this.disposed) {
+ return;
+ }
+ this.unsubscribeAllEvents();
+ mediator.removeHandlers(this);
+ _ref = this.compositions;
+ for (name in _ref) {
+ composition = _ref[name];
+ composition.dispose();
+ }
+ delete this.compositions;
+ this.disposed = true;
+ return typeof Object.freeze === "function" ? Object.freeze(this) : void 0;
+ };
+
+ return Composer;
+
+ })();
+
+//# sourceMappingURL=composer.js.map
+
+ });;loader.register('chaplin/controllers/controller', function(e, r, module) {
+ 'use strict';
+ var Backbone, Controller, EventBroker, mediator, utils, _,
+ __slice = [].slice,
+ __hasProp = {}.hasOwnProperty;
+
+ _ = loader('underscore');
+
+ Backbone = loader('backbone');
+
+ EventBroker = loader('chaplin/lib/event_broker');
+
+ utils = loader('chaplin/lib/utils');
+
+ mediator = loader('chaplin/mediator');
+
+ module.exports = Controller = (function() {
+ Controller.extend = Backbone.Model.extend;
+
+ _.extend(Controller.prototype, Backbone.Events);
+
+ _.extend(Controller.prototype, EventBroker);
+
+ Controller.prototype.view = null;
+
+ Controller.prototype.redirected = false;
+
+ function Controller() {
+ this.initialize.apply(this, arguments);
+ }
+
+ Controller.prototype.initialize = function() {};
+
+ Controller.prototype.beforeAction = function() {};
+
+ Controller.prototype.adjustTitle = function(subtitle) {
+ return mediator.execute('adjustTitle', subtitle);
+ };
+
+ Controller.prototype.reuse = function(name) {
+ var method;
+ method = arguments.length === 1 ? 'retrieve' : 'compose';
+ return mediator.execute.apply(mediator, ["composer:" + method].concat(__slice.call(arguments)));
+ };
+
+ Controller.prototype.compose = function() {
+ throw new Error('Controller#compose was moved to Controller#reuse');
+ };
+
+ Controller.prototype.redirectTo = function(pathDesc, params, options) {
+ this.redirected = true;
+ return utils.redirectTo(pathDesc, params, options);
+ };
+
+ Controller.prototype.disposed = false;
+
+ Controller.prototype.dispose = function() {
+ var obj, prop;
+ if (this.disposed) {
+ return;
+ }
+ for (prop in this) {
+ if (!__hasProp.call(this, prop)) continue;
+ obj = this[prop];
+ if (!(obj && typeof obj.dispose === 'function')) {
+ continue;
+ }
+ obj.dispose();
+ delete this[prop];
+ }
+ this.unsubscribeAllEvents();
+ this.stopListening();
+ this.disposed = true;
+ return typeof Object.freeze === "function" ? Object.freeze(this) : void 0;
+ };
+
+ return Controller;
+
+ })();
+
+//# sourceMappingURL=controller.js.map
+
+ });;loader.register('chaplin/models/collection', function(e, r, module) {
+ 'use strict';
+ var Backbone, Collection, EventBroker, Model, utils, _,
+ __hasProp = {}.hasOwnProperty,
+ __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
+
+ _ = loader('underscore');
+
+ Backbone = loader('backbone');
+
+ EventBroker = loader('chaplin/lib/event_broker');
+
+ Model = loader('chaplin/models/model');
+
+ utils = loader('chaplin/lib/utils');
+
+ module.exports = Collection = (function(_super) {
+ __extends(Collection, _super);
+
+ function Collection() {
+ return Collection.__super__.constructor.apply(this, arguments);
+ }
+
+ _.extend(Collection.prototype, EventBroker);
+
+ Collection.prototype.model = Model;
+
+ Collection.prototype.serialize = function() {
+ return this.map(utils.serialize);
+ };
+
+ Collection.prototype.disposed = false;
+
+ Collection.prototype.dispose = function() {
+ var prop, properties, _i, _len;
+ if (this.disposed) {
+ return;
+ }
+ this.trigger('dispose', this);
+ this.reset([], {
+ silent: true
+ });
+ this.unsubscribeAllEvents();
+ this.stopListening();
+ this.off();
+ properties = ['model', 'models', '_byId', '_byCid', '_callbacks'];
+ for (_i = 0, _len = properties.length; _i < _len; _i++) {
+ prop = properties[_i];
+ delete this[prop];
+ }
+ this.disposed = true;
+ return typeof Object.freeze === "function" ? Object.freeze(this) : void 0;
+ };
+
+ return Collection;
+
+ })(Backbone.Collection);
+
+//# sourceMappingURL=collection.js.map
+
+ });;loader.register('chaplin/models/model', function(e, r, module) {
+ 'use strict';
+ var Backbone, EventBroker, Model, serializeAttributes, serializeModelAttributes, utils, _,
+ __hasProp = {}.hasOwnProperty,
+ __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
+
+ _ = loader('underscore');
+
+ Backbone = loader('backbone');
+
+ utils = loader('chaplin/lib/utils');
+
+ EventBroker = loader('chaplin/lib/event_broker');
+
+ serializeAttributes = function(model, attributes, modelStack) {
+ var delegator, key, otherModel, serializedModels, value, _i, _len, _ref;
+ delegator = utils.beget(attributes);
+ if (modelStack == null) {
+ modelStack = {};
+ }
+ modelStack[model.cid] = true;
+ for (key in attributes) {
+ value = attributes[key];
+ if (value instanceof Backbone.Model) {
+ delegator[key] = serializeModelAttributes(value, model, modelStack);
+ } else if (value instanceof Backbone.Collection) {
+ serializedModels = [];
+ _ref = value.models;
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ otherModel = _ref[_i];
+ serializedModels.push(serializeModelAttributes(otherModel, model, modelStack));
+ }
+ delegator[key] = serializedModels;
+ }
+ }
+ delete modelStack[model.cid];
+ return delegator;
+ };
+
+ serializeModelAttributes = function(model, currentModel, modelStack) {
+ var attributes;
+ if (model === currentModel || model.cid in modelStack) {
+ return null;
+ }
+ attributes = typeof model.getAttributes === 'function' ? model.getAttributes() : model.attributes;
+ return serializeAttributes(model, attributes, modelStack);
+ };
+
+ module.exports = Model = (function(_super) {
+ __extends(Model, _super);
+
+ function Model() {
+ return Model.__super__.constructor.apply(this, arguments);
+ }
+
+ _.extend(Model.prototype, EventBroker);
+
+ Model.prototype.getAttributes = function() {
+ return this.attributes;
+ };
+
+ Model.prototype.serialize = function() {
+ return serializeAttributes(this, this.getAttributes());
+ };
+
+ Model.prototype.disposed = false;
+
+ Model.prototype.dispose = function() {
+ var prop, properties, _i, _len, _ref;
+ if (this.disposed) {
+ return;
+ }
+ this.trigger('dispose', this);
+ if ((_ref = this.collection) != null) {
+ if (typeof _ref.remove === "function") {
+ _ref.remove(this, {
+ silent: true
+ });
+ }
+ }
+ this.unsubscribeAllEvents();
+ this.stopListening();
+ this.off();
+ properties = ['collection', 'attributes', 'changed', 'defaults', '_escapedAttributes', '_previousAttributes', '_silent', '_pending', '_callbacks'];
+ for (_i = 0, _len = properties.length; _i < _len; _i++) {
+ prop = properties[_i];
+ delete this[prop];
+ }
+ this.disposed = true;
+ return typeof Object.freeze === "function" ? Object.freeze(this) : void 0;
+ };
+
+ return Model;
+
+ })(Backbone.Model);
+
+//# sourceMappingURL=model.js.map
+
+ });;loader.register('chaplin/views/layout', function(e, r, module) {
+ 'use strict';
+ var $, Backbone, EventBroker, Layout, View, mediator, utils, _,
+ __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },
+ __hasProp = {}.hasOwnProperty,
+ __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
+
+ _ = loader('underscore');
+
+ Backbone = loader('backbone');
+
+ mediator = loader('chaplin/mediator');
+
+ utils = loader('chaplin/lib/utils');
+
+ EventBroker = loader('chaplin/lib/event_broker');
+
+ View = loader('chaplin/views/view');
+
+ $ = Backbone.$;
+
+ module.exports = Layout = (function(_super) {
+ __extends(Layout, _super);
+
+ Layout.prototype.el = 'body';
+
+ Layout.prototype.keepElement = true;
+
+ Layout.prototype.title = '';
+
+ Layout.prototype.globalRegions = null;
+
+ Layout.prototype.listen = {
+ 'beforeControllerDispose mediator': 'scroll'
+ };
+
+ function Layout(options) {
+ if (options == null) {
+ options = {};
+ }
+ this.openLink = __bind(this.openLink, this);
+ this.globalRegions = [];
+ this.title = options.title;
+ if (options.regions) {
+ this.regions = options.regions;
+ }
+ this.settings = _.defaults(options, {
+ titleTemplate: function(data) {
+ var st;
+ st = data.subtitle ? "" + data.subtitle + " \u2013 " : '';
+ return st + data.title;
+ },
+ openExternalToBlank: false,
+ routeLinks: 'a, .go-to',
+ skipRouting: '.noscript',
+ scrollTo: [0, 0]
+ });
+ mediator.setHandler('region:show', this.showRegion, this);
+ mediator.setHandler('region:register', this.registerRegionHandler, this);
+ mediator.setHandler('region:unregister', this.unregisterRegionHandler, this);
+ mediator.setHandler('region:find', this.regionByName, this);
+ mediator.setHandler('adjustTitle', this.adjustTitle, this);
+ Layout.__super__.constructor.apply(this, arguments);
+ if (this.settings.routeLinks) {
+ this.startLinkRouting();
+ }
+ }
+
+ Layout.prototype.scroll = function() {
+ var position;
+ position = this.settings.scrollTo;
+ if (position) {
+ return window.scrollTo(position[0], position[1]);
+ }
+ };
+
+ Layout.prototype.adjustTitle = function(subtitle) {
+ var title;
+ if (subtitle == null) {
+ subtitle = '';
+ }
+ title = this.settings.titleTemplate({
+ title: this.title,
+ subtitle: subtitle
+ });
+ setTimeout((function(_this) {
+ return function() {
+ document.title = title;
+ return _this.publishEvent('adjustTitle', subtitle, title);
+ };
+ })(this), 50);
+ return title;
+ };
+
+ Layout.prototype.startLinkRouting = function() {
+ var route;
+ route = this.settings.routeLinks;
+ if (!route) {
+ return;
+ }
+ if ($) {
+ return this.$el.on('click', route, this.openLink);
+ } else {
+ return this.delegate('click', route, this.openLink);
+ }
+ };
+
+ Layout.prototype.stopLinkRouting = function() {
+ var route;
+ route = this.settings.routeLinks;
+ if ($) {
+ if (route) {
+ return this.$el.off('click', route);
+ }
+ } else {
+ return this.undelegate('click', route, this.openLink);
+ }
+ };
+
+ Layout.prototype.isExternalLink = function(link) {
+ var _ref, _ref1;
+ return link.target === '_blank' || link.rel === 'external' || ((_ref = link.protocol) !== 'http:' && _ref !== 'https:' && _ref !== 'file:' && _ref !== 'ms-appx:') || ((_ref1 = link.hostname) !== location.hostname && _ref1 !== '');
+ };
+
+ Layout.prototype.openLink = function(event) {
+ var el, external, href, isAnchor, skipRouting, type;
+ if (utils.modifierKeyPressed(event)) {
+ return;
+ }
+ el = $ ? event.currentTarget : event.delegateTarget;
+ isAnchor = el.nodeName === 'A';
+ href = el.getAttribute('href') || el.getAttribute('data-href') || null;
+ if ((href == null) || href === '' || href.charAt(0) === '#') {
+ return;
+ }
+ skipRouting = this.settings.skipRouting;
+ type = typeof skipRouting;
+ if (type === 'function' && !skipRouting(href, el) || type === 'string' && ($ ? $(el).is(skipRouting) : Backbone.utils.matchesSelector(el, skipRouting))) {
+ return;
+ }
+ external = isAnchor && this.isExternalLink(el);
+ if (external) {
+ if (this.settings.openExternalToBlank) {
+ event.preventDefault();
+ this.openWindow(href, el);
+ }
+ return;
+ }
+ utils.redirectTo({
+ url: href
+ });
+ event.preventDefault();
+ };
+
+ Layout.prototype.openWindow = function(href, el) {
+ return window.open(href);
+ };
+
+ Layout.prototype.registerRegionHandler = function(instance, name, selector) {
+ if (name != null) {
+ return this.registerGlobalRegion(instance, name, selector);
+ } else {
+ return this.registerGlobalRegions(instance);
+ }
+ };
+
+ Layout.prototype.registerGlobalRegion = function(instance, name, selector) {
+ this.unregisterGlobalRegion(instance, name);
+ return this.globalRegions.unshift({
+ instance: instance,
+ name: name,
+ selector: selector
+ });
+ };
+
+ Layout.prototype.registerGlobalRegions = function(instance) {
+ var name, selector, version, _i, _len, _ref;
+ _ref = utils.getAllPropertyVersions(instance, 'regions');
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ version = _ref[_i];
+ for (name in version) {
+ selector = version[name];
+ this.registerGlobalRegion(instance, name, selector);
+ }
+ }
+ };
+
+ Layout.prototype.unregisterRegionHandler = function(instance, name) {
+ if (name != null) {
+ return this.unregisterGlobalRegion(instance, name);
+ } else {
+ return this.unregisterGlobalRegions(instance);
+ }
+ };
+
+ Layout.prototype.unregisterGlobalRegion = function(instance, name) {
+ var cid, region;
+ cid = instance.cid;
+ return this.globalRegions = (function() {
+ var _i, _len, _ref, _results;
+ _ref = this.globalRegions;
+ _results = [];
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ region = _ref[_i];
+ if (region.instance.cid !== cid || region.name !== name) {
+ _results.push(region);
+ }
+ }
+ return _results;
+ }).call(this);
+ };
+
+ Layout.prototype.unregisterGlobalRegions = function(instance) {
+ var region;
+ return this.globalRegions = (function() {
+ var _i, _len, _ref, _results;
+ _ref = this.globalRegions;
+ _results = [];
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ region = _ref[_i];
+ if (region.instance.cid !== instance.cid) {
+ _results.push(region);
+ }
+ }
+ return _results;
+ }).call(this);
+ };
+
+ Layout.prototype.regionByName = function(name) {
+ var reg, _i, _len, _ref;
+ _ref = this.globalRegions;
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ reg = _ref[_i];
+ if (reg.name === name && !reg.instance.stale) {
+ return reg;
+ }
+ }
+ };
+
+ Layout.prototype.showRegion = function(name, instance) {
+ var region;
+ region = this.regionByName(name);
+ if (!region) {
+ throw new Error("No region registered under " + name);
+ }
+ return instance.container = region.selector === '' ? $ ? region.instance.$el : region.instance.el : region.instance.noWrap ? $ ? $(region.instance.container).find(region.selector) : region.instance.container.querySelector(region.selector) : region.instance[$ ? '$' : 'find'](region.selector);
+ };
+
+ Layout.prototype.dispose = function() {
+ var prop, _i, _len, _ref;
+ if (this.disposed) {
+ return;
+ }
+ this.stopLinkRouting();
+ _ref = ['globalRegions', 'title', 'route'];
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ prop = _ref[_i];
+ delete this[prop];
+ }
+ mediator.removeHandlers(this);
+ return Layout.__super__.dispose.apply(this, arguments);
+ };
+
+ return Layout;
+
+ })(View);
+
+//# sourceMappingURL=layout.js.map
+
+ });;loader.register('chaplin/views/view', function(e, r, module) {
+ 'use strict';
+ var $, Backbone, EventBroker, View, attach, bind, mediator, setHTML, utils, _,
+ __hasProp = {}.hasOwnProperty,
+ __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
+ __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; };
+
+ _ = loader('underscore');
+
+ Backbone = loader('backbone');
+
+ mediator = loader('chaplin/mediator');
+
+ EventBroker = loader('chaplin/lib/event_broker');
+
+ utils = loader('chaplin/lib/utils');
+
+ $ = Backbone.$;
+
+ bind = (function() {
+ if (Function.prototype.bind) {
+ return function(item, ctx) {
+ return item.bind(ctx);
+ };
+ } else if (_.bind) {
+ return _.bind;
+ }
+ })();
+
+ setHTML = (function() {
+ if ($) {
+ return function(elem, html) {
+ elem.empty();
+ elem.append(html);
+ return html;
+ };
+ } else {
+ return function(elem, html) {
+ return elem.innerHTML = html;
+ };
+ }
+ })();
+
+ attach = (function() {
+ if ($) {
+ return function(view) {
+ var actual;
+ actual = $(view.container);
+ if (typeof view.containerMethod === 'function') {
+ return view.containerMethod(actual, view.el);
+ } else {
+ return actual[view.containerMethod](view.el);
+ }
+ };
+ } else {
+ return function(view) {
+ var actual;
+ actual = typeof view.container === 'string' ? document.querySelector(view.container) : view.container;
+ if (typeof view.containerMethod === 'function') {
+ return view.containerMethod(actual, view.el);
+ } else {
+ return actual[view.containerMethod](view.el);
+ }
+ };
+ }
+ })();
+
+ module.exports = View = (function(_super) {
+ __extends(View, _super);
+
+ _.extend(View.prototype, EventBroker);
+
+ View.prototype.autoRender = false;
+
+ View.prototype.autoAttach = true;
+
+ View.prototype.container = null;
+
+ View.prototype.containerMethod = $ ? 'append' : 'appendChild';
+
+ View.prototype.regions = null;
+
+ View.prototype.region = null;
+
+ View.prototype.stale = false;
+
+ View.prototype.noWrap = false;
+
+ View.prototype.keepElement = false;
+
+ View.prototype.subviews = null;
+
+ View.prototype.subviewsByName = null;
+
+ View.prototype.optionNames = ['autoAttach', 'autoRender', 'container', 'containerMethod', 'region', 'regions', 'noWrap'];
+
+ function View(options) {
+ var optName, optValue, region, render;
+ if (options) {
+ for (optName in options) {
+ optValue = options[optName];
+ if (__indexOf.call(this.optionNames, optName) >= 0) {
+ this[optName] = optValue;
+ }
+ }
+ }
+ render = this.render;
+ this.render = (function(_this) {
+ return function() {
+ var returnValue;
+ if (_this.disposed) {
+ return false;
+ }
+ returnValue = render.apply(_this, arguments);
+ if (_this.autoAttach) {
+ _this.attach.apply(_this, arguments);
+ }
+ return returnValue;
+ };
+ })(this);
+ this.subviews = [];
+ this.subviewsByName = {};
+ if (this.noWrap) {
+ if (this.region) {
+ region = mediator.execute('region:find', this.region);
+ if (region != null) {
+ this.el = region.instance.container != null ? region.instance.region != null ? $(region.instance.container).find(region.selector) : region.instance.container : region.instance.$(region.selector);
+ }
+ }
+ if (this.container) {
+ this.el = this.container;
+ }
+ }
+ View.__super__.constructor.apply(this, arguments);
+ this.delegateListeners();
+ if (this.model) {
+ this.listenTo(this.model, 'dispose', this.dispose);
+ }
+ if (this.collection) {
+ this.listenTo(this.collection, 'dispose', (function(_this) {
+ return function(subject) {
+ if (!subject || subject === _this.collection) {
+ return _this.dispose();
+ }
+ };
+ })(this));
+ }
+ if (this.regions != null) {
+ mediator.execute('region:register', this);
+ }
+ if (this.autoRender) {
+ this.render();
+ }
+ }
+
+ View.prototype.delegate = function(eventName, second, third) {
+ var bound, event, events, handler, list, selector, _ref;
+ if (Backbone.utils && ((_ref = Backbone.utils) != null ? _ref.delegate : void 0)) {
+ return Backbone.utils.delegate(this, eventName, second, third);
+ }
+ if (typeof eventName !== 'string') {
+ throw new TypeError('View#delegate: first argument must be a string');
+ }
+ if (arguments.length === 2) {
+ handler = second;
+ } else if (arguments.length === 3) {
+ selector = second;
+ if (typeof selector !== 'string') {
+ throw new TypeError('View#delegate: ' + 'second argument must be a string');
+ }
+ handler = third;
+ } else {
+ throw new TypeError('View#delegate: ' + 'only two or three arguments are allowed');
+ }
+ if (typeof handler !== 'function') {
+ throw new TypeError('View#delegate: ' + 'handler argument must be function');
+ }
+ list = (function() {
+ var _i, _len, _ref1, _results;
+ _ref1 = eventName.split(' ');
+ _results = [];
+ for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
+ event = _ref1[_i];
+ _results.push("" + event + ".delegate" + this.cid);
+ }
+ return _results;
+ }).call(this);
+ events = list.join(' ');
+ bound = bind(handler, this);
+ this.$el.on(events, selector || null, bound);
+ return bound;
+ };
+
+ View.prototype._delegateEvents = function(events) {
+ var bound, eventName, handler, key, match, selector, value;
+ if (Backbone.View.prototype.delegateEvents.length === 2) {
+ return Backbone.View.prototype.delegateEvents.call(this, events, true);
+ }
+ for (key in events) {
+ value = events[key];
+ handler = typeof value === 'function' ? value : this[value];
+ if (!handler) {
+ throw new Error("Method '" + value + "' does not exist");
+ }
+ match = key.match(/^(\S+)\s*(.*)$/);
+ eventName = "" + match[1] + ".delegateEvents" + this.cid;
+ selector = match[2];
+ bound = bind(handler, this);
+ this.$el.on(eventName, selector || null, bound);
+ }
+ };
+
+ View.prototype.delegateEvents = function(events, keepOld) {
+ var classEvents, _i, _len, _ref;
+ if (!keepOld) {
+ this.undelegateEvents();
+ }
+ if (events) {
+ return this._delegateEvents(events);
+ }
+ _ref = utils.getAllPropertyVersions(this, 'events');
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ classEvents = _ref[_i];
+ if (typeof classEvents === 'function') {
+ classEvents = classEvents.call(this);
+ }
+ this._delegateEvents(classEvents);
+ }
+ };
+
+ View.prototype.undelegate = function(eventName, second, third) {
+ var event, events, handler, list, selector, _ref;
+ if (Backbone.utils && ((_ref = Backbone.utils) != null ? _ref.undelegate : void 0)) {
+ return Backbone.utils.undelegate(this, eventName, second, third);
+ }
+ if (eventName) {
+ if (typeof eventName !== 'string') {
+ throw new TypeError('View#undelegate: first argument must be a string');
+ }
+ if (arguments.length === 2) {
+ if (typeof second === 'string') {
+ selector = second;
+ } else {
+ handler = second;
+ }
+ } else if (arguments.length === 3) {
+ selector = second;
+ if (typeof selector !== 'string') {
+ throw new TypeError('View#undelegate: ' + 'second argument must be a string');
+ }
+ handler = third;
+ }
+ list = (function() {
+ var _i, _len, _ref1, _results;
+ _ref1 = eventName.split(' ');
+ _results = [];
+ for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
+ event = _ref1[_i];
+ _results.push("" + event + ".delegate" + this.cid);
+ }
+ return _results;
+ }).call(this);
+ events = list.join(' ');
+ return this.$el.off(events, selector || null);
+ } else {
+ return this.$el.off(".delegate" + this.cid);
+ }
+ };
+
+ View.prototype.delegateListeners = function() {
+ var eventName, key, method, target, version, _i, _len, _ref, _ref1;
+ if (!this.listen) {
+ return;
+ }
+ _ref = utils.getAllPropertyVersions(this, 'listen');
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ version = _ref[_i];
+ if (typeof version === 'function') {
+ version = version.call(this);
+ }
+ for (key in version) {
+ method = version[key];
+ if (typeof method !== 'function') {
+ method = this[method];
+ }
+ if (typeof method !== 'function') {
+ throw new Error('View#delegateListeners: ' + ("listener for \"" + key + "\" must be function"));
+ }
+ _ref1 = key.split(' '), eventName = _ref1[0], target = _ref1[1];
+ this.delegateListener(eventName, target, method);
+ }
+ }
+ };
+
+ View.prototype.delegateListener = function(eventName, target, callback) {
+ var prop;
+ if (target === 'model' || target === 'collection') {
+ prop = this[target];
+ if (prop) {
+ this.listenTo(prop, eventName, callback);
+ }
+ } else if (target === 'mediator') {
+ this.subscribeEvent(eventName, callback);
+ } else if (!target) {
+ this.on(eventName, callback, this);
+ }
+ };
+
+ View.prototype.registerRegion = function(name, selector) {
+ return mediator.execute('region:register', this, name, selector);
+ };
+
+ View.prototype.unregisterRegion = function(name) {
+ return mediator.execute('region:unregister', this, name);
+ };
+
+ View.prototype.unregisterAllRegions = function() {
+ return mediator.execute({
+ name: 'region:unregister',
+ silent: true
+ }, this);
+ };
+
+ View.prototype.subview = function(name, view) {
+ var byName, subviews;
+ subviews = this.subviews;
+ byName = this.subviewsByName;
+ if (name && view) {
+ this.removeSubview(name);
+ subviews.push(view);
+ byName[name] = view;
+ return view;
+ } else if (name) {
+ console.log(name);
+ return byName[name];
+ }
+ };
+
+ View.prototype.removeSubview = function(nameOrView) {
+ var byName, index, name, otherName, otherView, subviews, view;
+ if (!nameOrView) {
+ return;
+ }
+ subviews = this.subviews;
+ byName = this.subviewsByName;
+ if (typeof nameOrView === 'string') {
+ name = nameOrView;
+ view = byName[name];
+ } else {
+ view = nameOrView;
+ for (otherName in byName) {
+ otherView = byName[otherName];
+ if (!(otherView === view)) {
+ continue;
+ }
+ name = otherName;
+ break;
+ }
+ }
+ if (!(name && view && view.dispose)) {
+ return;
+ }
+ view.dispose();
+ index = utils.indexOf(subviews, view);
+ if (index !== -1) {
+ subviews.splice(index, 1);
+ }
+ return delete byName[name];
+ };
+
+ View.prototype.getTemplateData = function() {
+ var data, source;
+ data = this.model ? utils.serialize(this.model) : this.collection ? {
+ items: utils.serialize(this.collection),
+ length: this.collection.length
+ } : {};
+ source = this.model || this.collection;
+ if (source) {
+ if (typeof source.isSynced === 'function' && !('synced' in data)) {
+ data.synced = source.isSynced();
+ }
+ }
+ return data;
+ };
+
+ View.prototype.getTemplateFunction = function() {
+ throw new Error('View#getTemplateFunction must be overridden');
+ };
+
+ View.prototype.render = function() {
+ var el, html, templateFunc;
+ if (this.disposed) {
+ return false;
+ }
+ templateFunc = this.getTemplateFunction();
+ if (typeof templateFunc === 'function') {
+ html = templateFunc(this.getTemplateData());
+ if (this.noWrap) {
+ el = document.createElement('div');
+ el.innerHTML = html;
+ if (el.children.length > 1) {
+ throw new Error('There must be a single top-level element when ' + 'using `noWrap`.');
+ }
+ this.undelegateEvents();
+ this.setElement(el.firstChild, true);
+ } else {
+ setHTML(($ ? this.$el : this.el), html);
+ }
+ }
+ return this;
+ };
+
+ View.prototype.attach = function() {
+ if (this.region != null) {
+ mediator.execute('region:show', this.region, this);
+ }
+ if (this.container && !document.body.contains(this.el)) {
+ attach(this);
+ return this.trigger('addedToDOM');
+ }
+ };
+
+ View.prototype.disposed = false;
+
+ View.prototype.dispose = function() {
+ var prop, properties, subview, _i, _j, _len, _len1, _ref;
+ if (this.disposed) {
+ return;
+ }
+ this.unregisterAllRegions();
+ _ref = this.subviews;
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ subview = _ref[_i];
+ subview.dispose();
+ }
+ this.unsubscribeAllEvents();
+ this.off();
+ if (this.keepElement) {
+ this.undelegateEvents();
+ this.undelegate();
+ this.stopListening();
+ } else {
+ this.remove();
+ }
+ properties = ['el', '$el', 'options', 'model', 'collection', 'subviews', 'subviewsByName', '_callbacks'];
+ for (_j = 0, _len1 = properties.length; _j < _len1; _j++) {
+ prop = properties[_j];
+ delete this[prop];
+ }
+ this.disposed = true;
+ return typeof Object.freeze === "function" ? Object.freeze(this) : void 0;
+ };
+
+ return View;
+
+ })(Backbone.View);
+
+//# sourceMappingURL=view.js.map
+
+ });;loader.register('chaplin/views/collection_view', function(e, r, module) {
+ 'use strict';
+ var $, Backbone, CollectionView, View, addClass, endAnimation, filterChildren, insertView, startAnimation, toggleElement, utils, _,
+ __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },
+ __hasProp = {}.hasOwnProperty,
+ __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
+
+ _ = loader('underscore');
+
+ Backbone = loader('backbone');
+
+ View = loader('chaplin/views/view');
+
+ utils = loader('chaplin/lib/utils');
+
+ $ = Backbone.$;
+
+ filterChildren = function(nodeList, selector) {
+ var node, _i, _len, _results;
+ if (!selector) {
+ return nodeList;
+ }
+ _results = [];
+ for (_i = 0, _len = nodeList.length; _i < _len; _i++) {
+ node = nodeList[_i];
+ if (Backbone.utils.matchesSelector(node, selector)) {
+ _results.push(node);
+ }
+ }
+ return _results;
+ };
+
+ toggleElement = (function() {
+ if ($) {
+ return function(elem, visible) {
+ return elem.toggle(visible);
+ };
+ } else {
+ return function(elem, visible) {
+ return elem.style.display = (visible ? '' : 'none');
+ };
+ }
+ })();
+
+ addClass = (function() {
+ if ($) {
+ return function(elem, cls) {
+ return elem.addClass(cls);
+ };
+ } else {
+ return function(elem, cls) {
+ return elem.classList.add(cls);
+ };
+ }
+ })();
+
+ startAnimation = (function() {
+ if ($) {
+ return function(elem, useCssAnimation, cls) {
+ if (useCssAnimation) {
+ return addClass(elem, cls);
+ } else {
+ return elem.css('opacity', 0);
+ }
+ };
+ } else {
+ return function(elem, useCssAnimation, cls) {
+ if (useCssAnimation) {
+ return addClass(elem, cls);
+ } else {
+ return elem.style.opacity = 0;
+ }
+ };
+ }
+ })();
+
+ endAnimation = (function() {
+ if ($) {
+ return function(elem, duration) {
+ return elem.animate({
+ opacity: 1
+ }, duration);
+ };
+ } else {
+ return function(elem, duration) {
+ elem.style.transition = "opacity " + (duration / 1000) + "s";
+ return elem.style.opacity = 1;
+ };
+ }
+ })();
+
+ insertView = (function() {
+ if ($) {
+ return function(list, viewEl, position, length, itemSelector) {
+ var children, childrenLength, insertInMiddle, isEnd, method;
+ insertInMiddle = (0 < position && position < length);
+ isEnd = function(length) {
+ return length === 0 || position >= length;
+ };
+ if (insertInMiddle || itemSelector) {
+ children = list.children(itemSelector);
+ childrenLength = children.length;
+ if (children[position] !== viewEl) {
+ if (isEnd(childrenLength)) {
+ return list.append(viewEl);
+ } else {
+ if (position === 0) {
+ return children.eq(position).before(viewEl);
+ } else {
+ return children.eq(position - 1).after(viewEl);
+ }
+ }
+ }
+ } else {
+ method = isEnd(length) ? 'append' : 'prepend';
+ return list[method](viewEl);
+ }
+ };
+ } else {
+ return function(list, viewEl, position, length, itemSelector) {
+ var children, childrenLength, insertInMiddle, isEnd, last;
+ insertInMiddle = (0 < position && position < length);
+ isEnd = function(length) {
+ return length === 0 || position === length;
+ };
+ if (insertInMiddle || itemSelector) {
+ children = filterChildren(list.children, itemSelector);
+ childrenLength = children.length;
+ if (children[position] !== viewEl) {
+ if (isEnd(childrenLength)) {
+ return list.appendChild(viewEl);
+ } else if (position === 0) {
+ return list.insertBefore(viewEl, children[position]);
+ } else {
+ last = children[position - 1];
+ if (list.lastChild === last) {
+ return list.appendChild(viewEl);
+ } else {
+ return list.insertBefore(viewEl, last.nextElementSibling);
+ }
+ }
+ }
+ } else if (isEnd(length)) {
+ return list.appendChild(viewEl);
+ } else {
+ return list.insertBefore(viewEl, list.firstChild);
+ }
+ };
+ }
+ })();
+
+ module.exports = CollectionView = (function(_super) {
+ __extends(CollectionView, _super);
+
+ CollectionView.prototype.itemView = null;
+
+ CollectionView.prototype.autoRender = true;
+
+ CollectionView.prototype.renderItems = true;
+
+ CollectionView.prototype.animationDuration = 500;
+
+ CollectionView.prototype.useCssAnimation = false;
+
+ CollectionView.prototype.animationStartClass = 'animated-item-view';
+
+ CollectionView.prototype.animationEndClass = 'animated-item-view-end';
+
+ CollectionView.prototype.listSelector = null;
+
+ CollectionView.prototype.$list = null;
+
+ CollectionView.prototype.fallbackSelector = null;
+
+ CollectionView.prototype.$fallback = null;
+
+ CollectionView.prototype.loadingSelector = null;
+
+ CollectionView.prototype.$loading = null;
+
+ CollectionView.prototype.itemSelector = null;
+
+ CollectionView.prototype.filterer = null;
+
+ CollectionView.prototype.filterCallback = function(view, included) {
+ if ($) {
+ view.$el.stop(true, true);
+ }
+ return toggleElement(($ ? view.$el : view.el), included);
+ };
+
+ CollectionView.prototype.visibleItems = null;
+
+ CollectionView.prototype.optionNames = View.prototype.optionNames.concat(['renderItems', 'itemView']);
+
+ function CollectionView(options) {
+ this.renderAllItems = __bind(this.renderAllItems, this);
+ this.toggleFallback = __bind(this.toggleFallback, this);
+ this.itemsReset = __bind(this.itemsReset, this);
+ this.itemRemoved = __bind(this.itemRemoved, this);
+ this.itemAdded = __bind(this.itemAdded, this);
+ this.visibleItems = [];
+ CollectionView.__super__.constructor.apply(this, arguments);
+ }
+
+ CollectionView.prototype.initialize = function(options) {
+ if (options == null) {
+ options = {};
+ }
+ this.addCollectionListeners();
+ if (options.filterer != null) {
+ return this.filter(options.filterer);
+ }
+ };
+
+ CollectionView.prototype.addCollectionListeners = function() {
+ this.listenTo(this.collection, 'add', this.itemAdded);
+ this.listenTo(this.collection, 'remove', this.itemRemoved);
+ return this.listenTo(this.collection, 'reset sort', this.itemsReset);
+ };
+
+ CollectionView.prototype.getTemplateData = function() {
+ var templateData;
+ templateData = {
+ length: this.collection.length
+ };
+ if (typeof this.collection.isSynced === 'function') {
+ templateData.synced = this.collection.isSynced();
+ }
+ return templateData;
+ };
+
+ CollectionView.prototype.getTemplateFunction = function() {};
+
+ CollectionView.prototype.render = function() {
+ var listSelector;
+ CollectionView.__super__.render.apply(this, arguments);
+ listSelector = typeof this.listSelector === 'function' ? this.listSelector() : this.listSelector;
+ if ($) {
+ this.$list = listSelector ? this.$(listSelector) : this.$el;
+ } else {
+ this.list = listSelector ? this.find(this.listSelector) : this.el;
+ }
+ this.initFallback();
+ this.initLoadingIndicator();
+ if (this.renderItems) {
+ return this.renderAllItems();
+ }
+ };
+
+ CollectionView.prototype.itemAdded = function(item, collection, options) {
+ return this.insertView(item, this.renderItem(item), options.at);
+ };
+
+ CollectionView.prototype.itemRemoved = function(item) {
+ return this.removeViewForItem(item);
+ };
+
+ CollectionView.prototype.itemsReset = function() {
+ return this.renderAllItems();
+ };
+
+ CollectionView.prototype.initFallback = function() {
+ if (!this.fallbackSelector) {
+ return;
+ }
+ if ($) {
+ this.$fallback = this.$(this.fallbackSelector);
+ } else {
+ this.fallback = this.find(this.fallbackSelector);
+ }
+ this.on('visibilityChange', this.toggleFallback);
+ this.listenTo(this.collection, 'syncStateChange', this.toggleFallback);
+ return this.toggleFallback();
+ };
+
+ CollectionView.prototype.toggleFallback = function() {
+ var visible;
+ visible = this.visibleItems.length === 0 && (typeof this.collection.isSynced === 'function' ? this.collection.isSynced() : true);
+ return toggleElement(($ ? this.$fallback : this.fallback), visible);
+ };
+
+ CollectionView.prototype.initLoadingIndicator = function() {
+ if (!(this.loadingSelector && typeof this.collection.isSyncing === 'function')) {
+ return;
+ }
+ if ($) {
+ this.$loading = this.$(this.loadingSelector);
+ } else {
+ this.loading = this.find(this.loadingSelector);
+ }
+ this.listenTo(this.collection, 'syncStateChange', this.toggleLoadingIndicator);
+ return this.toggleLoadingIndicator();
+ };
+
+ CollectionView.prototype.toggleLoadingIndicator = function() {
+ var visible;
+ visible = this.collection.length === 0 && this.collection.isSyncing();
+ return toggleElement(($ ? this.$loading : this.loading), visible);
+ };
+
+ CollectionView.prototype.getItemViews = function() {
+ var itemViews, name, view, _ref;
+ itemViews = {};
+ if (this.subviews.length > 0) {
+ _ref = this.subviewsByName;
+ for (name in _ref) {
+ view = _ref[name];
+ if (name.slice(0, 9) === 'itemView:') {
+ itemViews[name.slice(9)] = view;
+ }
+ }
+ }
+ return itemViews;
+ };
+
+ CollectionView.prototype.filter = function(filterer, filterCallback) {
+ var hasItemViews, included, index, item, view, _i, _len, _ref;
+ if (typeof filterer === 'function' || filterer === null) {
+ this.filterer = filterer;
+ }
+ if (typeof filterCallback === 'function' || filterCallback === null) {
+ this.filterCallback = filterCallback;
+ }
+ hasItemViews = (function(_this) {
+ return function() {
+ var name;
+ if (_this.subviews.length > 0) {
+ for (name in _this.subviewsByName) {
+ if (name.slice(0, 9) === 'itemView:') {
+ return true;
+ }
+ }
+ }
+ return false;
+ };
+ })(this)();
+ if (hasItemViews) {
+ _ref = this.collection.models;
+ for (index = _i = 0, _len = _ref.length; _i < _len; index = ++_i) {
+ item = _ref[index];
+ included = typeof this.filterer === 'function' ? this.filterer(item, index) : true;
+ view = this.subview("itemView:" + item.cid);
+ if (!view) {
+ throw new Error('CollectionView#filter: ' + ("no view found for " + item.cid));
+ }
+ this.filterCallback(view, included);
+ this.updateVisibleItems(view.model, included, false);
+ }
+ }
+ return this.trigger('visibilityChange', this.visibleItems);
+ };
+
+ CollectionView.prototype.renderAllItems = function() {
+ var cid, index, item, items, remainingViewsByCid, view, _i, _j, _len, _len1, _ref;
+ items = this.collection.models;
+ this.visibleItems = [];
+ remainingViewsByCid = {};
+ for (_i = 0, _len = items.length; _i < _len; _i++) {
+ item = items[_i];
+ view = this.subview("itemView:" + item.cid);
+ if (view) {
+ remainingViewsByCid[item.cid] = view;
+ }
+ }
+ _ref = this.getItemViews();
+ for (cid in _ref) {
+ if (!__hasProp.call(_ref, cid)) continue;
+ view = _ref[cid];
+ if (!(cid in remainingViewsByCid)) {
+ this.removeSubview("itemView:" + cid);
+ }
+ }
+ for (index = _j = 0, _len1 = items.length; _j < _len1; index = ++_j) {
+ item = items[index];
+ view = this.subview("itemView:" + item.cid);
+ if (view) {
+ this.insertView(item, view, index, false);
+ } else {
+ this.insertView(item, this.renderItem(item), index);
+ }
+ }
+ if (items.length === 0) {
+ return this.trigger('visibilityChange', this.visibleItems);
+ }
+ };
+
+ CollectionView.prototype.renderItem = function(item) {
+ var view;
+ view = this.subview("itemView:" + item.cid);
+ if (!view) {
+ view = this.initItemView(item);
+ this.subview("itemView:" + item.cid, view);
+ }
+ view.render();
+ return view;
+ };
+
+ CollectionView.prototype.initItemView = function(model) {
+ if (this.itemView) {
+ return new this.itemView({
+ autoRender: false,
+ model: model
+ });
+ } else {
+ throw new Error('The CollectionView#itemView property ' + 'must be defined or the initItemView() must be overridden.');
+ }
+ };
+
+ CollectionView.prototype.insertView = function(item, view, position, enableAnimation) {
+ var elem, included, length, list;
+ if (enableAnimation == null) {
+ enableAnimation = true;
+ }
+ if (this.animationDuration === 0) {
+ enableAnimation = false;
+ }
+ if (typeof position !== 'number') {
+ position = this.collection.indexOf(item);
+ }
+ included = typeof this.filterer === 'function' ? this.filterer(item, position) : true;
+ elem = $ ? view.$el : view.el;
+ if (included && enableAnimation) {
+ startAnimation(elem, this.useCssAnimation, this.animationStartClass);
+ }
+ if (this.filterer) {
+ this.filterCallback(view, included);
+ }
+ length = this.collection.length;
+ list = $ ? this.$list : this.list;
+ if (included) {
+ insertView(list, elem, position, length, this.itemSelector);
+ view.trigger('addedToParent');
+ }
+ this.updateVisibleItems(item, included);
+ if (included && enableAnimation) {
+ if (this.useCssAnimation) {
+ setTimeout(((function(_this) {
+ return function() {
+ return addClass(elem, _this.animationEndClass);
+ };
+ })(this)), 0);
+ } else {
+ endAnimation(elem, this.animationDuration);
+ }
+ }
+ return view;
+ };
+
+ CollectionView.prototype.removeViewForItem = function(item) {
+ this.updateVisibleItems(item, false);
+ return this.removeSubview("itemView:" + item.cid);
+ };
+
+ CollectionView.prototype.updateVisibleItems = function(item, includedInFilter, triggerEvent) {
+ var includedInVisibleItems, visibilityChanged, visibleItemsIndex;
+ if (triggerEvent == null) {
+ triggerEvent = true;
+ }
+ visibilityChanged = false;
+ visibleItemsIndex = utils.indexOf(this.visibleItems, item);
+ includedInVisibleItems = visibleItemsIndex !== -1;
+ if (includedInFilter && !includedInVisibleItems) {
+ this.visibleItems.push(item);
+ visibilityChanged = true;
+ } else if (!includedInFilter && includedInVisibleItems) {
+ this.visibleItems.splice(visibleItemsIndex, 1);
+ visibilityChanged = true;
+ }
+ if (visibilityChanged && triggerEvent) {
+ this.trigger('visibilityChange', this.visibleItems);
+ }
+ return visibilityChanged;
+ };
+
+ CollectionView.prototype.dispose = function() {
+ var prop, properties, _i, _len;
+ if (this.disposed) {
+ return;
+ }
+ properties = ['$list', '$fallback', '$loading', 'visibleItems'];
+ for (_i = 0, _len = properties.length; _i < _len; _i++) {
+ prop = properties[_i];
+ delete this[prop];
+ }
+ return CollectionView.__super__.dispose.apply(this, arguments);
+ };
+
+ return CollectionView;
+
+ })(View);
+
+//# sourceMappingURL=collection_view.js.map
+
+ });;loader.register('chaplin/lib/route', function(e, r, module) {
+ 'use strict';
+ var Backbone, Controller, EventBroker, Route, isEmpty, utils, _,
+ __hasProp = {}.hasOwnProperty,
+ __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; };
+
+ _ = loader('underscore');
+
+ Backbone = loader('backbone');
+
+ EventBroker = loader('chaplin/lib/event_broker');
+
+ Controller = loader('chaplin/controllers/controller');
+
+ utils = loader('chaplin/lib/utils');
+
+ isEmpty = function(object) {
+ var key, value;
+ for (key in object) {
+ if (!__hasProp.call(object, key)) continue;
+ value = object[key];
+ return false;
+ }
+ return true;
+ };
+
+ module.exports = Route = (function() {
+ var escapeRegExp, optionalRegExp, paramRegExp, processTrailingSlash;
+
+ Route.extend = Backbone.Model.extend;
+
+ _.extend(Route.prototype, EventBroker);
+
+ escapeRegExp = /[\-{}\[\]+?.,\\\^$|#\s]/g;
+
+ optionalRegExp = /\((.*?)\)/g;
+
+ paramRegExp = /(?::|\*)(\w+)/g;
+
+ processTrailingSlash = function(path, trailing) {
+ switch (trailing) {
+ case true:
+ if (path.slice(-1) !== '/') {
+ path += '/';
+ }
+ break;
+ case false:
+ if (path.slice(-1) === '/') {
+ path = path.slice(0, -1);
+ }
+ }
+ return path;
+ };
+
+ function Route(pattern, controller, action, options) {
+ this.pattern = pattern;
+ this.controller = controller;
+ this.action = action;
+ this.handler = __bind(this.handler, this);
+ this.replaceParams = __bind(this.replaceParams, this);
+ this.parseOptionalPortion = __bind(this.parseOptionalPortion, this);
+ if (typeof this.pattern !== 'string') {
+ throw new Error('Route: RegExps are not supported. Use strings with :names and `constraints` option of route');
+ }
+ this.options = options ? _.extend({}, options) : {};
+ if (this.options.paramsInQS !== false) {
+ this.options.paramsInQS = true;
+ }
+ if (this.options.name != null) {
+ this.name = this.options.name;
+ }
+ if (this.name && this.name.indexOf('#') !== -1) {
+ throw new Error('Route: "#" cannot be used in name');
+ }
+ if (this.name == null) {
+ this.name = this.controller + '#' + this.action;
+ }
+ this.allParams = [];
+ this.requiredParams = [];
+ this.optionalParams = [];
+ if (this.action in Controller.prototype) {
+ throw new Error('Route: You should not use existing controller ' + 'properties as action names');
+ }
+ this.createRegExp();
+ if (typeof Object.freeze === "function") {
+ Object.freeze(this);
+ }
+ }
+
+ Route.prototype.matches = function(criteria) {
+ var invalidParamsCount, name, propertiesCount, property, _i, _len, _ref;
+ if (typeof criteria === 'string') {
+ return criteria === this.name;
+ } else {
+ propertiesCount = 0;
+ _ref = ['name', 'action', 'controller'];
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ name = _ref[_i];
+ propertiesCount++;
+ property = criteria[name];
+ if (property && property !== this[name]) {
+ return false;
+ }
+ }
+ invalidParamsCount = propertiesCount === 1 && (name === 'action' || name === 'controller');
+ return !invalidParamsCount;
+ }
+ };
+
+ Route.prototype.reverse = function(params, query) {
+ var name, raw, remainingParams, url, value, _i, _j, _len, _len1, _ref, _ref1;
+ params = this.normalizeParams(params);
+ remainingParams = _.extend({}, params);
+ if (params === false) {
+ return false;
+ }
+ url = this.pattern;
+ _ref = this.requiredParams;
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ name = _ref[_i];
+ value = params[name];
+ url = url.replace(RegExp("[:*]" + name, "g"), value);
+ delete remainingParams[name];
+ }
+ _ref1 = this.optionalParams;
+ for (_j = 0, _len1 = _ref1.length; _j < _len1; _j++) {
+ name = _ref1[_j];
+ if (value = params[name]) {
+ url = url.replace(RegExp("[:*]" + name, "g"), value);
+ delete remainingParams[name];
+ }
+ }
+ raw = url.replace(optionalRegExp, function(match, portion) {
+ if (portion.match(/[:*]/g)) {
+ return "";
+ } else {
+ return portion;
+ }
+ });
+ url = processTrailingSlash(raw, this.options.trailing);
+ if (typeof query !== 'object') {
+ query = utils.queryParams.parse(query);
+ }
+ if (this.options.paramsInQS !== false) {
+ _.extend(query, remainingParams);
+ }
+ if (!isEmpty(query)) {
+ url += '?' + utils.queryParams.stringify(query);
+ }
+ return url;
+ };
+
+ Route.prototype.normalizeParams = function(params) {
+ var paramIndex, paramName, paramsHash, routeParams, _i, _ref;
+ if (utils.isArray(params)) {
+ if (params.length < this.requiredParams.length) {
+ return false;
+ }
+ paramsHash = {};
+ routeParams = this.requiredParams.concat(this.optionalParams);
+ for (paramIndex = _i = 0, _ref = params.length - 1; _i <= _ref; paramIndex = _i += 1) {
+ paramName = routeParams[paramIndex];
+ paramsHash[paramName] = params[paramIndex];
+ }
+ if (!this.testConstraints(paramsHash)) {
+ return false;
+ }
+ params = paramsHash;
+ } else {
+ if (params == null) {
+ params = {};
+ }
+ if (!this.testParams(params)) {
+ return false;
+ }
+ }
+ return params;
+ };
+
+ Route.prototype.testConstraints = function(params) {
+ var constraint, constraints, name;
+ constraints = this.options.constraints;
+ if (constraints) {
+ for (name in constraints) {
+ if (!__hasProp.call(constraints, name)) continue;
+ constraint = constraints[name];
+ if (!constraint.test(params[name])) {
+ return false;
+ }
+ }
+ }
+ return true;
+ };
+
+ Route.prototype.testParams = function(params) {
+ var paramName, _i, _len, _ref;
+ _ref = this.requiredParams;
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ paramName = _ref[_i];
+ if (params[paramName] === void 0) {
+ return false;
+ }
+ }
+ return this.testConstraints(params);
+ };
+
+ Route.prototype.createRegExp = function() {
+ var pattern;
+ pattern = this.pattern;
+ pattern = pattern.replace(escapeRegExp, '\\$&');
+ this.replaceParams(pattern, (function(_this) {
+ return function(match, param) {
+ return _this.allParams.push(param);
+ };
+ })(this));
+ pattern = pattern.replace(optionalRegExp, this.parseOptionalPortion);
+ pattern = this.replaceParams(pattern, (function(_this) {
+ return function(match, param) {
+ _this.requiredParams.push(param);
+ return _this.paramCapturePattern(match);
+ };
+ })(this));
+ return this.regExp = RegExp("^" + pattern + "(?=/*(?=\\?|$))");
+ };
+
+ Route.prototype.parseOptionalPortion = function(match, optionalPortion) {
+ var portion;
+ portion = this.replaceParams(optionalPortion, (function(_this) {
+ return function(match, param) {
+ _this.optionalParams.push(param);
+ return _this.paramCapturePattern(match);
+ };
+ })(this));
+ return "(?:" + portion + ")?";
+ };
+
+ Route.prototype.replaceParams = function(s, callback) {
+ return s.replace(paramRegExp, callback);
+ };
+
+ Route.prototype.paramCapturePattern = function(param) {
+ if (param.charAt(0) === ':') {
+ return '([^\/\?]+)';
+ } else {
+ return '(.*?)';
+ }
+ };
+
+ Route.prototype.test = function(path) {
+ var constraints, matched;
+ matched = this.regExp.test(path);
+ if (!matched) {
+ return false;
+ }
+ constraints = this.options.constraints;
+ if (constraints) {
+ return this.testConstraints(this.extractParams(path));
+ }
+ return true;
+ };
+
+ Route.prototype.handler = function(pathParams, options) {
+ var actionParams, params, path, query, route, _ref;
+ options = options ? _.extend({}, options) : {};
+ if (typeof pathParams === 'object') {
+ query = utils.queryParams.stringify(options.query);
+ params = pathParams;
+ path = this.reverse(params);
+ } else {
+ _ref = pathParams.split('?'), path = _ref[0], query = _ref[1];
+ if (query == null) {
+ query = '';
+ } else {
+ options.query = utils.queryParams.parse(query);
+ }
+ params = this.extractParams(path);
+ path = processTrailingSlash(path, this.options.trailing);
+ }
+ actionParams = _.extend({}, params, this.options.params);
+ route = {
+ path: path,
+ action: this.action,
+ controller: this.controller,
+ name: this.name,
+ query: query
+ };
+ return this.publishEvent('router:match', route, actionParams, options);
+ };
+
+ Route.prototype.extractParams = function(path) {
+ var index, match, matches, paramName, params, _i, _len, _ref;
+ params = {};
+ matches = this.regExp.exec(path);
+ _ref = matches.slice(1);
+ for (index = _i = 0, _len = _ref.length; _i < _len; index = ++_i) {
+ match = _ref[index];
+ paramName = this.allParams.length ? this.allParams[index] : index;
+ params[paramName] = match;
+ }
+ return params;
+ };
+
+ return Route;
+
+ })();
+
+//# sourceMappingURL=route.js.map
+
+ });;loader.register('chaplin/lib/router', function(e, r, module) {
+ 'use strict';
+ var Backbone, EventBroker, History, Route, Router, mediator, utils, _,
+ __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; };
+
+ _ = loader('underscore');
+
+ Backbone = loader('backbone');
+
+ mediator = loader('chaplin/mediator');
+
+ EventBroker = loader('chaplin/lib/event_broker');
+
+ History = loader('chaplin/lib/history');
+
+ Route = loader('chaplin/lib/route');
+
+ utils = loader('chaplin/lib/utils');
+
+ module.exports = Router = (function() {
+ Router.extend = Backbone.Model.extend;
+
+ _.extend(Router.prototype, EventBroker);
+
+ function Router(options) {
+ var isWebFile;
+ this.options = options != null ? options : {};
+ this.match = __bind(this.match, this);
+ isWebFile = window.location.protocol !== 'file:';
+ _.defaults(this.options, {
+ pushState: isWebFile,
+ root: '/',
+ trailing: false
+ });
+ this.removeRoot = new RegExp('^' + utils.escapeRegExp(this.options.root) + '(#)?');
+ this.subscribeEvent('!router:route', this.oldEventError);
+ this.subscribeEvent('!router:routeByName', this.oldEventError);
+ this.subscribeEvent('!router:changeURL', this.oldURLEventError);
+ this.subscribeEvent('dispatcher:dispatch', this.changeURL);
+ mediator.setHandler('router:route', this.route, this);
+ mediator.setHandler('router:reverse', this.reverse, this);
+ this.createHistory();
+ }
+
+ Router.prototype.oldEventError = function() {
+ throw new Error('!router:route and !router:routeByName events were removed. Use `Chaplin.utils.redirectTo`');
+ };
+
+ Router.prototype.oldURLEventError = function() {
+ throw new Error('!router:changeURL event was removed.');
+ };
+
+ Router.prototype.createHistory = function() {
+ return Backbone.history = new History();
+ };
+
+ Router.prototype.startHistory = function() {
+ return Backbone.history.start(this.options);
+ };
+
+ Router.prototype.stopHistory = function() {
+ if (Backbone.History.started) {
+ return Backbone.history.stop();
+ }
+ };
+
+ Router.prototype.findHandler = function(predicate) {
+ var handler, _i, _len, _ref;
+ _ref = Backbone.history.handlers;
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ handler = _ref[_i];
+ if (predicate(handler)) {
+ return handler;
+ }
+ }
+ };
+
+ Router.prototype.match = function(pattern, target, options) {
+ var action, controller, route, _ref;
+ if (options == null) {
+ options = {};
+ }
+ if (arguments.length === 2 && typeof target === 'object') {
+ options = target;
+ controller = options.controller, action = options.action;
+ if (!(controller && action)) {
+ throw new Error('Router#match must receive either target or ' + 'options.controller & options.action');
+ }
+ } else {
+ controller = options.controller, action = options.action;
+ if (controller || action) {
+ throw new Error('Router#match cannot use both target and ' + 'options.controller / options.action');
+ }
+ _ref = target.split('#'), controller = _ref[0], action = _ref[1];
+ }
+ _.defaults(options, {
+ trailing: this.options.trailing
+ });
+ route = new Route(pattern, controller, action, options);
+ Backbone.history.handlers.push({
+ route: route,
+ callback: route.handler
+ });
+ return route;
+ };
+
+ Router.prototype.route = function(pathDesc, params, options) {
+ var handler, path, pathParams;
+ if (typeof pathDesc === 'object') {
+ path = pathDesc.url;
+ if (!params && pathDesc.params) {
+ params = pathDesc.params;
+ }
+ }
+ params = params ? utils.isArray(params) ? params.slice() : _.extend({}, params) : {};
+ if (path != null) {
+ path = path.replace(this.removeRoot, '');
+ handler = this.findHandler(function(handler) {
+ return handler.route.test(path);
+ });
+ options = params;
+ params = null;
+ } else {
+ options = options ? _.extend({}, options) : {};
+ handler = this.findHandler(function(handler) {
+ if (handler.route.matches(pathDesc)) {
+ params = handler.route.normalizeParams(params);
+ if (params) {
+ return true;
+ }
+ }
+ return false;
+ });
+ }
+ if (handler) {
+ _.defaults(options, {
+ changeURL: true
+ });
+ pathParams = path != null ? path : params;
+ handler.callback(pathParams, options);
+ return true;
+ } else {
+ throw new Error('Router#route: request was not routed');
+ }
+ };
+
+ Router.prototype.reverse = function(criteria, params, query) {
+ var handler, handlers, reversed, root, url, _i, _len;
+ root = this.options.root;
+ if ((params != null) && typeof params !== 'object') {
+ throw new TypeError('Router#reverse: params must be an array or an ' + 'object');
+ }
+ handlers = Backbone.history.handlers;
+ for (_i = 0, _len = handlers.length; _i < _len; _i++) {
+ handler = handlers[_i];
+ if (!(handler.route.matches(criteria))) {
+ continue;
+ }
+ reversed = handler.route.reverse(params, query);
+ if (reversed !== false) {
+ url = root ? root + reversed : reversed;
+ return url;
+ }
+ }
+ throw new Error("Router#reverse: invalid route criteria specified: " + (JSON.stringify(criteria)));
+ };
+
+ Router.prototype.changeURL = function(controller, params, route, options) {
+ var navigateOptions, url;
+ if (!((route.path != null) && options.changeURL)) {
+ return;
+ }
+ url = route.path + (route.query ? "?" + route.query : "");
+ navigateOptions = {
+ trigger: options.trigger === true,
+ replace: options.replace === true
+ };
+ return Backbone.history.navigate(url, navigateOptions);
+ };
+
+ Router.prototype.disposed = false;
+
+ Router.prototype.dispose = function() {
+ if (this.disposed) {
+ return;
+ }
+ this.stopHistory();
+ delete Backbone.history;
+ this.unsubscribeAllEvents();
+ mediator.removeHandlers(this);
+ this.disposed = true;
+ return typeof Object.freeze === "function" ? Object.freeze(this) : void 0;
+ };
+
+ return Router;
+
+ })();
+
+//# sourceMappingURL=router.js.map
+
+ });;loader.register('chaplin/lib/history', function(e, r, module) {
+ 'use strict';
+ var Backbone, History, isExplorer, rootStripper, routeStripper, trailingSlash, _,
+ __hasProp = {}.hasOwnProperty,
+ __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
+
+ _ = loader('underscore');
+
+ Backbone = loader('backbone');
+
+ routeStripper = /^[#\/]|\s+$/g;
+
+ rootStripper = /^\/+|\/+$/g;
+
+ isExplorer = /msie [\w.]+/;
+
+ trailingSlash = /\/$/;
+
+ History = (function(_super) {
+ __extends(History, _super);
+
+ function History() {
+ return History.__super__.constructor.apply(this, arguments);
+ }
+
+ History.prototype.getFragment = function(fragment, forcePushState) {
+ var root;
+ if (fragment == null) {
+ if (this._hasPushState || !this._wantsHashChange || forcePushState) {
+ fragment = this.location.pathname + this.location.search;
+ root = this.root.replace(trailingSlash, '');
+ if (!fragment.indexOf(root)) {
+ fragment = fragment.substr(root.length);
+ }
+ } else {
+ fragment = this.getHash();
+ }
+ }
+ return fragment.replace(routeStripper, '');
+ };
+
+ History.prototype.start = function(options) {
+ var atRoot, fragment, loc, _ref, _ref1;
+ if (Backbone.History.started) {
+ throw new Error('Backbone.history has already been started');
+ }
+ Backbone.History.started = true;
+ this.options = _.extend({}, {
+ root: '/'
+ }, this.options, options);
+ this.root = this.options.root;
+ this._wantsHashChange = this.options.hashChange !== false;
+ this._wantsPushState = Boolean(this.options.pushState);
+ this._hasPushState = Boolean(this.options.pushState && this.history && this.history.pushState);
+ fragment = this.getFragment();
+ routeStripper = (_ref = this.options.routeStripper) != null ? _ref : routeStripper;
+ rootStripper = (_ref1 = this.options.rootStripper) != null ? _ref1 : rootStripper;
+ this.root = ('/' + this.root + '/').replace(rootStripper, '/');
+ if (this._hasPushState) {
+ Backbone.$(window).on('popstate', this.checkUrl);
+ } else if (this._wantsHashChange && 'onhashchange' in window) {
+ Backbone.$(window).on('hashchange', this.checkUrl);
+ } else if (this._wantsHashChange) {
+ this._checkUrlInterval = setInterval(this.checkUrl, this.interval);
+ }
+ this.fragment = fragment;
+ loc = this.location;
+ atRoot = loc.pathname.replace(/[^\/]$/, '$&/') === this.root;
+ if (this._wantsHashChange && this._wantsPushState && !this._hasPushState && !atRoot) {
+ this.fragment = this.getFragment(null, true);
+ this.location.replace(this.root + '#' + this.fragment);
+ return true;
+ } else if (this._wantsPushState && this._hasPushState && atRoot && loc.hash) {
+ this.fragment = this.getHash().replace(routeStripper, '');
+ this.history.replaceState({}, document.title, this.root + this.fragment);
+ }
+ if (!this.options.silent) {
+ return this.loadUrl();
+ }
+ };
+
+ History.prototype.navigate = function(fragment, options) {
+ var historyMethod, isSameFragment, url;
+ if (fragment == null) {
+ fragment = '';
+ }
+ if (!Backbone.History.started) {
+ return false;
+ }
+ if (!options || options === true) {
+ options = {
+ trigger: options
+ };
+ }
+ fragment = this.getFragment(fragment);
+ url = this.root + fragment;
+ if (this.fragment === fragment) {
+ return false;
+ }
+ this.fragment = fragment;
+ if (fragment.length === 0 && url !== this.root) {
+ url = url.slice(0, -1);
+ }
+ if (this._hasPushState) {
+ historyMethod = options.replace ? 'replaceState' : 'pushState';
+ this.history[historyMethod]({}, document.title, url);
+ } else if (this._wantsHashChange) {
+ this._updateHash(this.location, fragment, options.replace);
+ isSameFragment = fragment !== this.getFragment(this.getHash(this.iframe));
+ if ((this.iframe != null) && isSameFragment) {
+ if (!options.replace) {
+ this.iframe.document.open().close();
+ }
+ this._updateHash(this.iframe.location, fragment, options.replace);
+ }
+ } else {
+ return this.location.assign(url);
+ }
+ if (options.trigger) {
+ return this.loadUrl(fragment);
+ }
+ };
+
+ return History;
+
+ })(Backbone.History);
+
+ module.exports = Backbone.$ ? History : Backbone.History;
+
+//# sourceMappingURL=history.js.map
+
+ });;loader.register('chaplin/lib/event_broker', function(e, r, module) {
+ 'use strict';
+ var EventBroker, mediator,
+ __slice = [].slice;
+
+ mediator = loader('chaplin/mediator');
+
+ EventBroker = {
+ subscribeEvent: function(type, handler) {
+ if (typeof type !== 'string') {
+ throw new TypeError('EventBroker#subscribeEvent: ' + 'type argument must be a string');
+ }
+ if (typeof handler !== 'function') {
+ throw new TypeError('EventBroker#subscribeEvent: ' + 'handler argument must be a function');
+ }
+ mediator.unsubscribe(type, handler, this);
+ return mediator.subscribe(type, handler, this);
+ },
+ subscribeEventOnce: function(type, handler) {
+ if (typeof type !== 'string') {
+ throw new TypeError('EventBroker#subscribeEventOnce: ' + 'type argument must be a string');
+ }
+ if (typeof handler !== 'function') {
+ throw new TypeError('EventBroker#subscribeEventOnce: ' + 'handler argument must be a function');
+ }
+ mediator.unsubscribe(type, handler, this);
+ return mediator.subscribeOnce(type, handler, this);
+ },
+ unsubscribeEvent: function(type, handler) {
+ if (typeof type !== 'string') {
+ throw new TypeError('EventBroker#unsubscribeEvent: ' + 'type argument must be a string');
+ }
+ if (typeof handler !== 'function') {
+ throw new TypeError('EventBroker#unsubscribeEvent: ' + 'handler argument must be a function');
+ }
+ return mediator.unsubscribe(type, handler);
+ },
+ unsubscribeAllEvents: function() {
+ return mediator.unsubscribe(null, null, this);
+ },
+ publishEvent: function() {
+ var args, type;
+ type = arguments[0], args = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
+ if (typeof type !== 'string') {
+ throw new TypeError('EventBroker#publishEvent: ' + 'type argument must be a string');
+ }
+ return mediator.publish.apply(mediator, [type].concat(__slice.call(args)));
+ }
+ };
+
+ if (typeof Object.freeze === "function") {
+ Object.freeze(EventBroker);
+ }
+
+ module.exports = EventBroker;
+
+//# sourceMappingURL=event_broker.js.map
+
+ });;loader.register('chaplin/lib/support', function(e, r, module) {
+ 'use strict';
+ var support;
+
+ support = {
+ propertyDescriptors: (function() {
+ var error, o;
+ if (!(typeof Object.defineProperty === 'function' && typeof Object.defineProperties === 'function')) {
+ return false;
+ }
+ try {
+ o = {};
+ Object.defineProperty(o, 'foo', {
+ value: 'bar'
+ });
+ return o.foo === 'bar';
+ } catch (_error) {
+ error = _error;
+ return false;
+ }
+ })()
+ };
+
+ module.exports = support;
+
+//# sourceMappingURL=support.js.map
+
+ });;loader.register('chaplin/lib/composition', function(e, r, module) {
+ 'use strict';
+ var Backbone, Composition, EventBroker, has, _,
+ __hasProp = {}.hasOwnProperty;
+
+ _ = loader('underscore');
+
+ Backbone = loader('backbone');
+
+ EventBroker = loader('chaplin/lib/event_broker');
+
+ has = Object.prototype.hasOwnProperty;
+
+ module.exports = Composition = (function() {
+ Composition.extend = Backbone.Model.extend;
+
+ _.extend(Composition.prototype, Backbone.Events);
+
+ _.extend(Composition.prototype, EventBroker);
+
+ Composition.prototype.item = null;
+
+ Composition.prototype.options = null;
+
+ Composition.prototype._stale = false;
+
+ function Composition(options) {
+ if (options != null) {
+ this.options = _.extend({}, options);
+ }
+ this.item = this;
+ this.initialize(this.options);
+ }
+
+ Composition.prototype.initialize = function() {};
+
+ Composition.prototype.compose = function() {};
+
+ Composition.prototype.check = function(options) {
+ return _.isEqual(this.options, options);
+ };
+
+ Composition.prototype.stale = function(value) {
+ var item, name;
+ if (value == null) {
+ return this._stale;
+ }
+ this._stale = value;
+ for (name in this) {
+ item = this[name];
+ if (item && item !== this && typeof item === 'object' && has.call(item, 'stale')) {
+ item.stale = value;
+ }
+ }
+ };
+
+ Composition.prototype.disposed = false;
+
+ Composition.prototype.dispose = function() {
+ var obj, prop, properties, _i, _len;
+ if (this.disposed) {
+ return;
+ }
+ for (prop in this) {
+ if (!__hasProp.call(this, prop)) continue;
+ obj = this[prop];
+ if (obj && typeof obj.dispose === 'function') {
+ if (obj !== this) {
+ obj.dispose();
+ delete this[prop];
+ }
+ }
+ }
+ this.unsubscribeAllEvents();
+ this.stopListening();
+ properties = ['redirected'];
+ for (_i = 0, _len = properties.length; _i < _len; _i++) {
+ prop = properties[_i];
+ delete this[prop];
+ }
+ this.disposed = true;
+ return typeof Object.freeze === "function" ? Object.freeze(this) : void 0;
+ };
+
+ return Composition;
+
+ })();
+
+//# sourceMappingURL=composition.js.map
+
+ });;loader.register('chaplin/lib/sync_machine', function(e, r, module) {
+ 'use strict';
+ var STATE_CHANGE, SYNCED, SYNCING, SyncMachine, UNSYNCED, event, _fn, _i, _len, _ref;
+
+ UNSYNCED = 'unsynced';
+
+ SYNCING = 'syncing';
+
+ SYNCED = 'synced';
+
+ STATE_CHANGE = 'syncStateChange';
+
+ SyncMachine = {
+ _syncState: UNSYNCED,
+ _previousSyncState: null,
+ syncState: function() {
+ return this._syncState;
+ },
+ isUnsynced: function() {
+ return this._syncState === UNSYNCED;
+ },
+ isSynced: function() {
+ return this._syncState === SYNCED;
+ },
+ isSyncing: function() {
+ return this._syncState === SYNCING;
+ },
+ unsync: function() {
+ var _ref;
+ if ((_ref = this._syncState) === SYNCING || _ref === SYNCED) {
+ this._previousSync = this._syncState;
+ this._syncState = UNSYNCED;
+ this.trigger(this._syncState, this, this._syncState);
+ this.trigger(STATE_CHANGE, this, this._syncState);
+ }
+ },
+ beginSync: function() {
+ var _ref;
+ if ((_ref = this._syncState) === UNSYNCED || _ref === SYNCED) {
+ this._previousSync = this._syncState;
+ this._syncState = SYNCING;
+ this.trigger(this._syncState, this, this._syncState);
+ this.trigger(STATE_CHANGE, this, this._syncState);
+ }
+ },
+ finishSync: function() {
+ if (this._syncState === SYNCING) {
+ this._previousSync = this._syncState;
+ this._syncState = SYNCED;
+ this.trigger(this._syncState, this, this._syncState);
+ this.trigger(STATE_CHANGE, this, this._syncState);
+ }
+ },
+ abortSync: function() {
+ if (this._syncState === SYNCING) {
+ this._syncState = this._previousSync;
+ this._previousSync = this._syncState;
+ this.trigger(this._syncState, this, this._syncState);
+ this.trigger(STATE_CHANGE, this, this._syncState);
+ }
+ }
+ };
+
+ _ref = [UNSYNCED, SYNCING, SYNCED, STATE_CHANGE];
+ _fn = function(event) {
+ return SyncMachine[event] = function(callback, context) {
+ if (context == null) {
+ context = this;
+ }
+ this.on(event, callback, context);
+ if (this._syncState === event) {
+ return callback.call(context);
+ }
+ };
+ };
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ event = _ref[_i];
+ _fn(event);
+ }
+
+ if (typeof Object.freeze === "function") {
+ Object.freeze(SyncMachine);
+ }
+
+ module.exports = SyncMachine;
+
+//# sourceMappingURL=sync_machine.js.map
+
+ });;loader.register('chaplin/lib/utils', function(e, r, module) {
+ 'use strict';
+ var support, utils, _,
+ __slice = [].slice,
+ __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; },
+ __hasProp = {}.hasOwnProperty;
+
+ _ = loader('underscore');
+
+ support = loader('chaplin/lib/support');
+
+ utils = {
+ beget: (function() {
+ var ctor;
+ if (typeof Object.create === 'function') {
+ return Object.create;
+ } else {
+ ctor = function() {};
+ return function(obj) {
+ ctor.prototype = obj;
+ return new ctor;
+ };
+ }
+ })(),
+ indexOf: (function() {
+ if (Array.prototype.indexOf) {
+ return function(list, index) {
+ return list.indexOf(index);
+ };
+ } else if (_.indexOf) {
+ return _.indexOf;
+ }
+ })(),
+ isArray: Array.isArray || _.isArray,
+ serialize: function(data) {
+ if (typeof data.serialize === 'function') {
+ return data.serialize();
+ } else if (typeof data.toJSON === 'function') {
+ return data.toJSON();
+ } else {
+ throw new TypeError('utils.serialize: Unknown data was passed');
+ }
+ },
+ readonly: (function() {
+ var readonlyDescriptor;
+ if (support.propertyDescriptors) {
+ readonlyDescriptor = {
+ writable: false,
+ enumerable: true,
+ configurable: false
+ };
+ return function() {
+ var obj, prop, properties, _i, _len;
+ obj = arguments[0], properties = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
+ for (_i = 0, _len = properties.length; _i < _len; _i++) {
+ prop = properties[_i];
+ readonlyDescriptor.value = obj[prop];
+ Object.defineProperty(obj, prop, readonlyDescriptor);
+ }
+ return true;
+ };
+ } else {
+ return function() {
+ return false;
+ };
+ }
+ })(),
+ getPrototypeChain: function(object) {
+ var chain, _ref, _ref1, _ref2, _ref3;
+ chain = [object.constructor.prototype];
+ while (object = (_ref = (_ref1 = object.constructor) != null ? (_ref2 = _ref1.superclass) != null ? _ref2.prototype : void 0 : void 0) != null ? _ref : (_ref3 = object.constructor) != null ? _ref3.__super__ : void 0) {
+ chain.push(object);
+ }
+ return chain.reverse();
+ },
+ getAllPropertyVersions: function(object, property) {
+ var proto, result, value, _i, _len, _ref;
+ result = [];
+ _ref = utils.getPrototypeChain(object);
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ proto = _ref[_i];
+ value = proto[property];
+ if (value && __indexOf.call(result, value) < 0) {
+ result.push(value);
+ }
+ }
+ return result;
+ },
+ upcase: function(str) {
+ return str.charAt(0).toUpperCase() + str.substring(1);
+ },
+ escapeRegExp: function(str) {
+ return String(str || '').replace(/([.*+?^=!:${}()|[\]\/\\])/g, '\\$1');
+ },
+ modifierKeyPressed: function(event) {
+ return event.shiftKey || event.altKey || event.ctrlKey || event.metaKey;
+ },
+ reverse: function(criteria, params, query) {
+ return loader('chaplin/mediator').execute('router:reverse', criteria, params, query);
+ },
+ redirectTo: function(pathDesc, params, options) {
+ return loader('chaplin/mediator').execute('router:route', pathDesc, params, options);
+ },
+ querystring: {
+ stringify: function(queryParams) {
+ var arrParam, encodedKey, key, query, stringifyKeyValuePair, value, _i, _len;
+ query = '';
+ stringifyKeyValuePair = function(encodedKey, value) {
+ if (value != null) {
+ return '&' + encodedKey + '=' + encodeURIComponent(value);
+ } else {
+ return '';
+ }
+ };
+ for (key in queryParams) {
+ if (!__hasProp.call(queryParams, key)) continue;
+ value = queryParams[key];
+ encodedKey = encodeURIComponent(key);
+ if (utils.isArray(value)) {
+ for (_i = 0, _len = value.length; _i < _len; _i++) {
+ arrParam = value[_i];
+ query += stringifyKeyValuePair(encodedKey, arrParam);
+ }
+ } else {
+ query += stringifyKeyValuePair(encodedKey, value);
+ }
+ }
+ return query && query.substring(1);
+ },
+ parse: function(queryString) {
+ var current, field, pair, pairs, params, value, _i, _len, _ref;
+ params = {};
+ if (!queryString) {
+ return params;
+ }
+ queryString = queryString.slice(queryString.indexOf('?') + 1);
+ pairs = queryString.split('&');
+ for (_i = 0, _len = pairs.length; _i < _len; _i++) {
+ pair = pairs[_i];
+ if (!pair.length) {
+ continue;
+ }
+ _ref = pair.split('='), field = _ref[0], value = _ref[1];
+ if (!field.length) {
+ continue;
+ }
+ field = decodeURIComponent(field);
+ value = decodeURIComponent(value);
+ current = params[field];
+ if (current) {
+ if (current.push) {
+ current.push(value);
+ } else {
+ params[field] = [current, value];
+ }
+ } else {
+ params[field] = value;
+ }
+ }
+ return params;
+ }
+ }
+ };
+
+ utils.queryParams = utils.querystring;
+
+ if (typeof Object.seal === "function") {
+ Object.seal(utils);
+ }
+
+ module.exports = utils;
+
+//# sourceMappingURL=utils.js.map
+
+ });;loader.register('chaplin', function(e, r, module) {
+ module.exports = {
+ Application: loader('chaplin/application'),
+ mediator: loader('chaplin/mediator'),
+ Dispatcher: loader('chaplin/dispatcher'),
+ Controller: loader('chaplin/controllers/controller'),
+ Composer: loader('chaplin/composer'),
+ Composition: loader('chaplin/lib/composition'),
+ Collection: loader('chaplin/models/collection'),
+ Model: loader('chaplin/models/model'),
+ Layout: loader('chaplin/views/layout'),
+ View: loader('chaplin/views/view'),
+ CollectionView: loader('chaplin/views/collection_view'),
+ Route: loader('chaplin/lib/route'),
+ Router: loader('chaplin/lib/router'),
+ EventBroker: loader('chaplin/lib/event_broker'),
+ support: loader('chaplin/lib/support'),
+ SyncMachine: loader('chaplin/lib/sync_machine'),
+ utils: loader('chaplin/lib/utils')
+ };
+
+//# sourceMappingURL=chaplin.js.map
+
+ });
+ var regDeps = function(Backbone, _) {
+ loader.register('backbone', function(exports, require, module) {
+ module.exports = Backbone;
+ });
+ loader.register('underscore', function(exports, require, module) {
+ module.exports = _;
+ });
+ };
+
+ if (typeof define === 'function' && define.amd) {
+ define(['backbone', 'underscore'], function(Backbone, _) {
+ regDeps(Backbone, _);
+ return loader('chaplin');
+ });
+ } else if (typeof module === 'object' && module && module.exports) {
+ regDeps(require('backbone'), require('underscore'));
+ module.exports = loader('chaplin');
+ } else if (typeof require === 'function') {
+ regDeps(window.Backbone, window._ || window.Backbone.utils);
+ window.Chaplin = loader('chaplin');
+ } else {
+ throw new Error('Chaplin requires Common.js or AMD modules');
+ }
+
+})();
diff --git a/config/Config.js b/config/Config.js
index dacc12a3..5616f006 100644
--- a/config/Config.js
+++ b/config/Config.js
@@ -1,57 +1,72 @@
/*global define*/
define(function () {
- 'use strict';
-
- //var CODELIST_PREFIX = 'http://fenixservices.fao.org/d3s/msd/resources/data/uid/'
- var CODELIST_PREFIX = 'http://fenix.fao.org/d3s/msd/resources/'
-
- return {
-
- //Chaplin JS configuration
- CHAPLINJS_CONTROLLER_SUFFIX: '-controller',
- CHAPLINJS_PROJECT_ROOT: '/fenix/',
- CHAPLINJS_PUSH_STATE: false,
- CHAPLINJS_SCROLL_TO: false,
- CHAPLINJS_APPLICATION_TITLE: "FENIX Web App",
-
- //WDS configuration
- DB_NAME: 'db_name',
- WDS_URL: 'http://hqlprfenixapp2.hq.un.fao.org:10100/wds-5.2.1/rest/crud',
- WDS_OUTPUT_TYPE: 'object',
- WDS_OLAP_OUTPUT_TYPE : 'array',
-
- //Top Menu configuration
- TOP_MENU_CONFIG: 'config/submodules/fx-menu/top_menu.json',
- //TOP_MENU_TEMPLATE: 'fx-menu/templates/side.html',
- TOP_MENU_TEMPLATE: 'fx-menu/templates/blank-fluid.html',
- TOP_MENU_SHOW_BREADCRUMB : true,
- //TOP_MENU_SHOW_BREADCRUMB : false,
- TOP_MENU_SHOW_BREADCRUMB_HOME : true,
- TOP_MENU_SHOW_FOOTER: false,
- TOP_MENU_AUTH_MODE_HIDDEN_ITEMS: ['login'],
- TOP_MENU_PUBLIC_MODE_HIDDEN_ITEMS :['datamgmt', 'logout'],
- //TOP_MENU_PUBLIC_MODE_HIDDEN_ITEMS :['protected', 'logout'],
-
-
- SECURITY_NOT_AUTHORIZED_REDIRECTION_LINK : "login",
-
- // COUNTRIES_CODE_LIST : CODELIST_PREFIX + "UNECA_ISO3",
- COUNTRIES_CODE_LIST : CODELIST_PREFIX + "/crs_donors/2015",
- CODELIST_URL : CODELIST_PREFIX,
- MD_EXPORT_URL : 'http://fenixapps2.fao.org/fenixExport',
- DATA_ENVIROMENT_URL : 'http://fenixservices.fao.org',
-
- SOCIAL_LINK_FACEBOOK : "https://facebook.com",
- SOCIAL_LINK_TWITTER : "https://twitter.com",
- SOCIAL_LINK_YOUTUBE : "https://youtube.com",
-
- DOWNLOAD_FILE_SYSTEM_ROOT : 'http://fenixrepo.fao.org/cdn/data/adam/download/',
-
- SERVER : "http://www.fao.org/fenixrepo/external/lprapp16/"
- //SERVER : "http://fenixrepo.fao.org/external/lprapp16/"
- //SERVER : "http://fenix.fao.org/"
- //SERVER : "http://lprapp16.fao.org/"
-
- };
- });
+ 'use strict';
+
+ var SERVER = 'http://fenix.fao.org/',
+ CODELIST_PREFIX = SERVER+ 'msd/resources/',
+ CODELIST_HIERARCHY_PREFIX = SERVER+ 'msd/codes/hierarchy/';
+
+
+ return {
+
+ SELECTORS: {
+ RECIPIENT_COUNTRY: 'recipientcode',
+ RESOURCE_PARTNER: 'donorcode',
+ SECTOR: 'parentsector_code',
+ SUB_SECTOR: 'purposecode',
+ CHANNELS_SUBCATEGORY: 'channelsubcategory_code',
+ CHANNEL: 'channelcode',
+ ODA: 'oda',
+ YEAR: 'year',
+ YEAR_FROM: 'year-from',
+ YEAR_TO: 'year-to',
+ COUNTRY: 'countrycode'
+ },
+
+ ENVIRONMENT : 'develop',
+ DEFAULT_UID: 'adam_usd_commitment',
+ SERVER: SERVER,
+ CODES_POSTFIX : '/codes/filter',
+ HIERARCHY_CODES_POSTFIX : '/codes/hierarchy',
+ D3P_POSTFIX : "d3s_dev/processes/",
+
+ //Chaplin JS configuration
+ CHAPLINJS_CONTROLLER_SUFFIX: '-controller',
+ CHAPLINJS_PROJECT_ROOT: '/fenix/',
+ CHAPLINJS_PUSH_STATE: false,
+ CHAPLINJS_SCROLL_TO: false,
+ CHAPLINJS_APPLICATION_TITLE: "FENIX Web App",
+
+ //Top Menu configuration
+ TOP_MENU_CONFIG: 'config/submodules/fx-menu/top_menu.json',
+ TOP_MENU_TEMPLATE: 'fx-menu/html/blank-fluid.html',
+ TOP_MENU_SHOW_BREADCRUMB: true,
+ TOP_MENU_SHOW_BREADCRUMB_HOME: false,
+ TOP_MENU_SHOW_FOOTER: false,
+ TOP_MENU_AUTH_MODE_HIDDEN_ITEMS: ['login'],
+ TOP_MENU_PUBLIC_MODE_HIDDEN_ITEMS: ['datamgmt', 'logout'],
+
+ SECURITY_NOT_AUTHORIZED_REDIRECTION_LINK: "login",
+
+ // COUNTRIES_CODE_LIST : CODELIST_PREFIX + "UNECA_ISO3",
+ COUNTRIES_CODE_LIST: CODELIST_PREFIX + "/crs_donors/2015",
+ CODELIST_URL: CODELIST_PREFIX,
+ MD_EXPORT_URL: SERVER,
+ DATA_ENVIROMENT_URL: 'http://fenixservices.fao.org',
+
+ SOCIAL_LINK_FACEBOOK: "https://facebook.com",
+ SOCIAL_LINK_TWITTER: "https://twitter.com",
+ SOCIAL_LINK_YOUTUBE: "https://youtube.com",
+
+ DOWNLOAD_FILE_SYSTEM_ROOT: 'http://fenixrepo.fao.org/cdn/data/adam/download/',
+
+ //D3S_CODELIST_URL:( C.SERVICE_BASE_ADDRESS || DC.SERVICE_BASE_ADDRESS) + "/resources/",
+
+ CODELIST_POSTFIX: "/resources/",
+
+ CODELIST_SERVICE: "d3s_dev/msd"
+
+
+ };
+});
diff --git a/config/Events.js b/config/Events.js
index 63e9b71b..339fe1b9 100644
--- a/config/Events.js
+++ b/config/Events.js
@@ -8,7 +8,19 @@ define(function ( ) {
NOT_AUTHORIZED : "fx.fenix.security.not_authorized",
STATE_CHANGE : 'fx.fenix.state.change',
- MENU_UPDATE : 'fx.fenix.menu.change'
+ MENU_UPDATE : 'fx.fenix.menu.change',
+ MENU_ADD_BREADCRUMB: 'fx.fenix.menu.addbreadcrumb',
+
+ SELECTORS_READY: "fx.analyze.selectors.ready",
+ SELECTORS_ITEM_SELECT : "fx.analyze.selectors.select",
+ TREE_READY : "fx.analyze.tree.ready",
+ RELOAD_RESULT : "fx.analyze.results.reload",
+ CHANGE_MODE: "fx.analyze.mode.change",
+
+ MENU_RESET_BREADCRUMB: 'fx.fenix.menu.resetbreadcrumb',
+
+ TITLE_ADD_ITEM: 'fx.title.item.add',
+ TITLE_REMOVE_ITEM: 'fx.title.item.remove'
};
});
diff --git a/config/analyse/comp_advantage/Events.js b/config/analyse/comp_advantage/Events.js
new file mode 100644
index 00000000..73a29101
--- /dev/null
+++ b/config/analyse/comp_advantage/Events.js
@@ -0,0 +1,10 @@
+ /*global define*/
+define(function ( ) {
+
+ 'use strict';
+
+ return {
+ FILTER_ON_READY : "fx.filter.onready",
+ FILTER_ON_CHANGE : "fx.filter.onchange"
+ };
+});
diff --git a/config/analyse/comp_advantage/config-comp-advantage.js b/config/analyse/comp_advantage/config-comp-advantage.js
new file mode 100644
index 00000000..0d199ac3
--- /dev/null
+++ b/config/analyse/comp_advantage/config-comp-advantage.js
@@ -0,0 +1,8 @@
+/*global define*/
+define(function ( ) {
+
+ 'use strict';
+
+ return {
+ };
+});
\ No newline at end of file
diff --git a/config/analyse/comp_advantage/config-filter.js b/config/analyse/comp_advantage/config-filter.js
new file mode 100644
index 00000000..5dea24c0
--- /dev/null
+++ b/config/analyse/comp_advantage/config-filter.js
@@ -0,0 +1,79 @@
+define(function () {
+
+ 'use strict';
+
+ return {
+
+ filter: {
+ recipientcode: {
+ selector: {
+ id: "dropdown",
+ default: ["625"], // afghanistan,
+ config: { //Selectize configuration
+ maxItems: 1
+ // placeholder: "All",
+ // plugins: ['remove_button'],
+ // mode: 'multi'
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ uid: "crs_recipients",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ "year-from": {
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2000],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ "year-to": {
+
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2014],
+ config: {
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+
+ dependencies: {
+ "year-from": {id: "min", event: "select"}
+ },
+
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ }
+ }
+ }
+});
\ No newline at end of file
diff --git a/config/analyse/comp_advantage/config-table-filter.js b/config/analyse/comp_advantage/config-table-filter.js
new file mode 100644
index 00000000..56740988
--- /dev/null
+++ b/config/analyse/comp_advantage/config-table-filter.js
@@ -0,0 +1,30 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+
+ groupedRow : {
+
+ selector : {
+ id : "input",
+ type : "checkbox",
+ source : [
+ { value : "groupedRow", label : "Group row"}
+
+ ],
+ default: ["groupedRow"]
+ },
+
+ template : {
+ title : "groupedRow"
+ }
+ }
+
+ }
+
+
+
+});
\ No newline at end of file
diff --git a/config/analyse/comp_advantage/config-table.js b/config/analyse/comp_advantage/config-table.js
new file mode 100644
index 00000000..ca573117
--- /dev/null
+++ b/config/analyse/comp_advantage/config-table.js
@@ -0,0 +1,167 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ dashboard: {
+
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ {
+ id: "comp_advantage",
+ type: 'custom',
+ config: {
+ "groupedRow":false,
+ "aggregationFn":{"value":"sum"},
+ "formatter":"localstring",
+ "decimals":2,
+ "pageSize": "150",
+ "showRowHeaders":true,
+ "rows":["purposecode_EN", "year", "delivery", "fao_delivery", "total_fao_delivery", "advantage_ratio", "ratio"], //"delivery", "fao_delivery", "total_fao_delivery", "advantage_ratio", "ratio"
+ //"rows":["purposecode_EN", "recipientcode_EN", "year", "ratio"], //"delivery", "fao_delivery", "total_fao_delivery", "advantage_ratio", "ratio"
+
+
+ "aggregations":[],
+ // "values":["delivery", "fao_delivery", "total_fao_delivery", "advantage_ratio"],
+ // inputFormat : "fenixtool",
+
+ config: {
+ pageSize: 150,
+ height: 700,
+ autoSelectFirstRow: false,
+ customRowAttribute : function(record,rn,grid){
+ grid.autoSelectFirstRow = false;
+
+ // grid.columnList[0].styleClass = null;
+ //grid.columnList[1].styleClass = null;
+ // grid.columnList[6].styleClass = null;
+
+
+ if (record[6] === 'YES'){
+ // grid.columnList[0].styleClass = 'big-col-width';
+ // grid.columnList[1].styleClass = 'smaller-col-width';
+ // grid.columnList[6].styleClass = 'small-col-width';
+
+ return 'style="background-color:#A4C368"'; // green
+
+ }
+
+ //else {
+ // grid.columnList[0].styleClass = 'gt-col-1_11-purposecode_en';
+ // grid.columnList[1].styleClass = 'gt-col-1_11-year';
+ // grid.columnList[6].styleClass = 'gt-col-1_11-ratio';
+ //}
+
+ },
+ columns: [
+ {id: "purposecode_EN", width: 250},
+ {id: "year", width: 70, align: 'center'},
+ {id: "delivery", width: 100, align: 'center', title: "FAO delivery in sub-sector & country ÷ Total FAO delivery in country",
+ renderer: function (value, record, columnObj, grid, colNo, rowNo) {
+ var val = value;
+
+ if(val && val > 0 && val < 100 ){
+ val = parseFloat(val).toFixed(2);
+ }
+
+ return val;
+ }},
+ {id: "fao_delivery", width: 100, align: 'center', title: "FAO delivery in sub-sector & country ÷ Total delivery by all ODA implementing agencies in sub-sector & country",
+ renderer: function (value, record, columnObj, grid, colNo, rowNo) {
+ var val = value;
+
+ if(val && val > 0 && val < 100 ){
+ val = parseFloat(val).toFixed(2);
+ }
+ return val;
+ }},
+ {id: "total_fao_delivery", width: 100, align: 'center', title: "Total FAO delivery in country ÷ Total agricultural delivery by all ODA implementing agencies in country",
+ renderer: function (value, record, columnObj, grid, colNo, rowNo) {
+ var val = value;
+
+ if(val && val > 0 && val < 100 ){
+ val = parseFloat(val).toFixed(2);
+ }
+ return val;
+ }},
+ {id: "advantage_ratio", width: 100, align: 'center', title: "FAO Delivery over Total Delivery ÷ Total FAO Delivery over Total Agriculture",
+ renderer: function (value, record, columnObj, grid, colNo, rowNo) {
+ var val = value;
+ if(val && val > 0){
+ val = parseFloat(val).toFixed(4);
+ }
+ return val;
+ }},
+ {
+ id: 'ratio', width: 100, align: 'center', title: "Ratio > 1 = 'Yes' while Ratio < 1 = 'No'",
+ renderer: function (value, record1, columnObj, grid, colNo, rowNo) {
+ var lowCase = value.toLowerCase();
+ return lowCase.charAt(0).toUpperCase() + lowCase.slice(1);
+ }
+ }]
+
+ }
+ },
+
+ filterFor: {
+ "filter_fca": ['year', 'recipientcode'],
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_comparative_advantage"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "sector",
+ "purposecode",
+ "year",
+ "delivery",
+ "fao_delivery",
+ "total_fao_delivery",
+ "advantage_ratio",
+ "ratio"
+ ],
+ "rows": {
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_fca"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ }
+
+
+});
\ No newline at end of file
diff --git a/config/analyse/compare/Config.js b/config/analyse/compare/Config.js
new file mode 100644
index 00000000..98f805db
--- /dev/null
+++ b/config/analyse/compare/Config.js
@@ -0,0 +1,260 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+
+ analysis: {
+ box : {
+ tab : "chart",
+ hideFlipButton : true,
+ faces : ["front"],
+ tabConfig: {
+ chart: {
+ toolbar: {
+ template: "
",
+ config: {
+ compare: {
+ selector: {
+ id: "dropdown",
+ source: [
+ {value: "donorcode", label: "Resource Partner"},
+ {value: "parentsector_code", label: "Sector"},
+ ],
+ default: ["donorcode"],
+ config: {
+ maxItems: 1
+ }
+ },
+ template: {
+ title: "Compare by"
+ }
+ }
+ }
+ },
+ config: function (model, values) {
+
+ var order = ["donorcode", "parentsector_code"];
+
+ var config = {
+ aggregationFn: {"value": "sum", "Value": "sum", "VALUE": "sum"},
+ formatter: "value",
+ decimals: 2,
+ hidden: [],
+ series: order,
+ useDimensionLabelsIfExist: true,
+ x: ["year"],
+ aggregations: [],
+ y: ["value"],
+ type: "line",
+ createConfiguration: function (model, config) {
+
+ var compare = values.values.compare[0],
+ index = order.indexOf(compare),
+ colors = ["red"],
+ used = {};
+
+ for (var ii in model.cols) {
+
+ if (model.cols.hasOwnProperty(ii)) {
+ i = model.cols[ii];
+ config.xAxis.categories.push(i.title[this.lang]);
+ }
+ }
+
+ for (var i in model.rows) {
+
+ var name = model.rows[i],
+ compareByValue = name[index];
+
+ var s = {
+ name: name.join(" / "),
+ data: model.data[i]
+ };
+
+ var color = used[compareByValue];
+
+ if (!color) {
+ used[compareByValue] = colors.shift();
+ color = used[compareByValue]
+ }
+
+ s.color = color;
+
+ config.series.push(s);
+
+ }
+
+ return config;
+ }
+ };
+
+ return config;
+ }
+ }
+ }
+ }
+ },
+
+ filter: {
+ items: {
+ recipientcode: {
+ selector: {
+ id: "tree",
+ hideSummary: true, //Hide selection summary,
+ config: { //Selectize configuration
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ cl: {
+ uid: "crs_recipients",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ donorcode: {
+ selector: {
+ id: "tree",
+ default: ["2", "7"], // Belgium, Netherlands
+ hideSummary: true, //Hide selection summary,
+ config: { //Selectize configuration
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ cl: {
+ uid: "crs_donors",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ parentsector_code: {
+ selector: {
+ id: "tree",
+ config: { //Selectize configuration
+ maxItems: 1,
+ plugins: ['remove_button'],
+ mode: 'multi'
+ },
+ default : ["311", "600"],
+ hideSummary: true, //Hide selection summary,
+ },
+ cl: {
+ uid: "crs_dac",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ purposecode: {
+ selector: {
+ id: "tree",
+ config: {
+ plugins: ['remove_button'],
+ mode: 'multi'
+ },
+ hideSummary: true, //Hide selection summary,
+ },
+ cl: {
+ // codes: ["60010", "60020", "60030", "60040", "60061", "60062", "60063"],
+ "uid": "crs_dac",
+ "version": "2016",
+ "level": 2,
+ "levels": 2
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ },
+ dependencies: {
+ "parentsector_code": {id: "parent", event: "select"} //obj or array of obj
+ }
+ },
+ "year-from": {
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2000],
+ config: { //Selectize configuration
+ maxItems: 1
+ },
+ hideSummary: true, //Hide selection summary,
+ },
+ format: {
+ type: "static",
+ output: "time"
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ "year-to": {
+
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2014],
+ hideSummary: true, //Hide selection summary,
+ config: {
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+
+ dependencies: {
+ "year-from": {id: "min", event: "select"}
+ },
+
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ oda: {
+ selector: {
+ id: "dropdown",
+ default: ['adam_usd_commitment'],
+ config: { //Selectize configuration
+ maxItems: 1
+ },
+ hideSummary: true, //Hide selection summary,
+ },
+ cl: {
+ uid: "crs_flow_amounts",
+ version: "2016"
+ },
+ template: {
+ hideHeaderIcon: false,
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ }
+ }
+ }
+ }
+
+});
\ No newline at end of file
diff --git a/config/analyse/config.js b/config/analyse/config.js
new file mode 100644
index 00000000..f8887ef8
--- /dev/null
+++ b/config/analyse/config.js
@@ -0,0 +1,991 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+
+ SECONDARY_MENU: {
+ url: 'config/browse/secondary_menu.json'
+ },
+
+ "compare": {
+
+ download: {
+ "target": "6.PROTECTIVE FUNCTIONS AND SELECTIVE ECOSYSTEM SERVICES.zip"
+ },
+
+ filter: [
+ {
+ "type": "distinct",
+ "uid": "FLUDE_TOPIC_6",
+ "column": "indicator",
+ "containerType": "baseContainer",
+ "title": "Indicator",
+ "defaultCodes": ["SoilWatProt"],
+ "components": [
+ {
+ "type": "codelist",
+ "componentType": "dropDownList-FENIX",
+ "lang": "EN",
+ "uid" : "FLUDE_INDICATORS",
+ "title": {"EN": "Distinct"},
+ // name is the ID output in tehe filter getValues()
+ "name": "indicator",
+ "config": {
+ "defaultsource": []
+ }
+ }
+ ]
+ },
+ {
+ "type": "static",
+ "containerType": "baseContainer",
+ "title": "Year",
+ "components": [
+ {
+ "type": "time",
+ "componentType": "dropDownList-FENIX",
+ "lang": "EN",
+ "title": {"EN": "Year"},
+ "name": "year",
+ config: {
+ "defaultsource": [
+ {"value": "2015", "label": "2015", "selected": true},
+ {"value": "2010", "label": "2010", "selected": false},
+ {"value": "2005", "label": "2005", "selected": false},
+ {"value": "2000", "label": "2000", "selected": false},
+ {"value": "1990", "label": "1990", "selected": false}
+ ]
+ }
+ }
+ ]
+ },
+ {
+ "type": "codelist",
+ "containerType": "baseContainer",
+ "title": "Domains",
+ "components": [
+ {
+ "uid": "FLUDE_DOMAINS",
+ "type": "codelist",
+ "name": "domain",
+ "componentType": "dropDownList-FENIX",
+ "lang": "EN",
+ "title": {"EN": "Codelist"},
+
+ config: {
+ "defaultsource": [
+ //{"value": null, "label": "All", "selected": true},
+ //{"value": null, "label": "All", "selected": true, "removeFilter": true},
+ ],
+ "enableMultiselection": true
+ }
+ }
+ ]
+ },
+ {
+ "type": "codelist",
+ "containerType": "baseContainer",
+ "title": "Incomes",
+ "components": [
+ {
+ "uid": "FLUDE_INCOMES",
+ "type": "codelist",
+ "componentType": "dropDownList-FENIX",
+ "lang": "EN",
+ "title": {"EN": "Codelist"},
+ "name": "incomes",
+ config: {
+ "defaultsource": [
+ //{"value": null, "label": "All", "selected": true},
+ ],
+ "enableMultiselection": true
+ }
+ }
+ ]
+ },
+ {
+ "type": "codelist",
+ "containerType": "baseContainer",
+ "title": "Subregions",
+ "components": [
+ {
+ "uid": "FLUDE_SUBREGIONS",
+ "type": "codelist",
+ "componentType": "dropDownList-FENIX",
+ "lang": "EN",
+ "title": {"EN": "Codelist"},
+ "name": "subregion",
+ config: {
+ "defaultsource": [
+ //{"value": null, "label": "All", "selected": true},
+ ],
+ "enableMultiselection": true
+ }
+ }
+ ]
+ }
+ ],
+
+ dashboard: {
+ //data cube's uid
+ uid: "FLUDE_TOPIC_6",
+
+ //data base filter
+ filter: [],
+
+ //bridge configuration
+ bridge: {
+
+ type: "d3p"
+
+ },
+
+ /*
+ * in case bridge is WDS this is the cube metadata.
+ * if bridge is D3P this is ignored
+ * */
+ metadata: {},
+
+ items: [
+ {
+ id: 'item-1',
+ type: 'map',
+ class: "fx-map-chart",
+ //needed if layout = injected
+ container: "#item-1",
+ config: {
+ container: "#item-1" ,
+ leaflet: {
+ zoomControl: false,
+ attributionControl: true,
+ scrollWheelZoom: false,
+ minZoom: 2
+ }
+ },
+ // for now it takes the id, TODO: add uid as well
+ allowedFilter: ['indicator', 'year', 'domain', 'incomes', 'subregion'],
+ filter: [
+ {
+ "name": "filter",
+ "parameters": {
+ "rows": {
+ "year": {
+ "time": [
+ {
+ "from": 2010,
+ "to": 2010
+ }
+ ]
+ },
+ "indicator": {
+ "codes": [
+ {
+ "uid": "FLUDE_INDICATORS",
+ "codes": [
+ "SoilWatProt"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+ ]
+ },
+ {
+ id: 'item-2',
+ type: 'chart',
+ class: "fx-timeseries-ecample",
+ //needed if layout = injected
+ container: "#item-2",
+ config: {
+ container: "#item-2",
+ adapter: {
+ type: "standard",
+ xDimensions: 'time',
+ yDimensions: 'element',
+ valueDimensions: 'value',
+ seriesDimensions: ['country']
+ },
+ template: {
+ //"title": "Top 25..."
+ },
+ creator: {
+ chartObj: {
+ chart: {
+ type: "column"
+ },
+ tooltip: {
+ valueSuffix: ' 1000 HA'
+ }
+ }
+ }
+ },
+ // for now it takes the id, TODO: add uid as well
+ allowedFilter: ['indicator', 'year', 'domain', 'incomes', 'subregion'],
+ filter: [
+ {
+ "name": "filter",
+ "parameters": {
+ "rows": {
+ "year": {
+ "time": [
+ {
+ "from": 1990,
+ "to": 2010
+ }
+ ]
+ },
+ "indicator": {
+ "codes": [
+ {
+ "uid": "FLUDE_INDICATORS",
+ "codes": [
+ "SoilWatProt"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 25,
+ "page": 1
+ }
+ }
+ ]
+ },
+ {
+ id: 'item-3',
+ type: 'chart',
+ class: "fx-timeseries-ecample",
+ //needed if layout = injected
+ container: "#item-3",
+ config: {
+ container: "#item-3",
+ adapter: {
+ type: "standard",
+ xDimensions: 'year',
+ yDimensions: 'indicator',
+ valueDimensions: 'value',
+ seriesDimensions: ['region']
+ },
+ template: {},
+ creator: {
+ chartObj: {
+ chart: {
+ type: "column"
+ },
+ tooltip: {
+ valueSuffix: ' 1000 HA'
+ }
+ }
+ }
+ },
+ // for now it takes the id, TODO: add uid as well
+ allowedFilter: ['indicator'],
+ filter: [
+ {
+ "name": "filter",
+ "parameters": {
+ "rows": {
+ "year": {
+ "time": [
+ {
+ "from": 1990,
+ "to": 2010
+ }
+ ]
+ },
+ "indicator": {
+ "codes": [
+ {
+ "uid": "FLUDE_INDICATORS",
+ "codes": [
+ "SoilWatProt"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "region", "year", "indicator"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "AVG"
+ },
+ {
+ "columns": ["um"],
+ "rule": "FIRST"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "region": "ASC",
+ "year": "ASC"
+ }
+ }
+ ]
+ },
+ {
+ id: 'item-4',
+ type: 'chart',
+ class: "fx-timeseries-ecample",
+ //needed if layout = injected
+ container: "#item-4",
+ config: {
+ container: "#item-4",
+ adapter: {
+ type: "pie",
+ valueDimensions: 'value',
+ seriesDimensions: ['region']
+ },
+ template: {},
+ creator: {
+ chartObj: {
+ chart: {
+ plotBackgroundColor: null,
+ plotBorderWidth: null,
+ plotShadow: false,
+ type: 'pie'
+ },
+ title: {
+ //text: 'Browser market shares January, 2015 to May, 2015'
+ },
+ tooltip: {
+ pointFormat: '{series.name}: {point.percentage:.1f}%'
+ },
+ plotOptions: {
+ pie: {
+ allowPointSelect: true,
+ cursor: 'pointer',
+ dataLabels: {
+ enabled: true
+ },
+ showInLegend: true
+ }
+ }
+ }
+ }
+ },
+ // for now it takes the id, TODO: add uid as well
+ allowedFilter: ['indicator', 'year'],
+ filter: [
+ {
+ "name": "filter",
+ "parameters": {
+ "rows": {
+ "year": {
+ "time": [
+ {
+ "from": 2010,
+ "to": 2010
+ }
+ ]
+ },
+ "indicator": {
+ "codes": [
+ {
+ "uid": "FLUDE_INDICATORS",
+ "codes": [
+ "SoilWatProt"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "region", "indicator"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "AVG"
+ },
+ {
+ "columns": ["um"],
+ "rule": "FIRST"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "region": "ASC"
+ }
+ }
+ ]
+ },
+ {
+ id: 'item-5',
+ type: 'chart',
+ class: "fx-timeseries-ecample",
+ //needed if layout = injected
+ container: "#item-5",
+ config: {
+ container: "#item-5",
+ adapter: {
+ type: "standard",
+ xDimensions: 'year',
+ yDimensions: 'indicator',
+ valueDimensions: 'value',
+ seriesDimensions: ['subregion']
+ },
+ template: {},
+ creator: {
+ chartObj: {
+ chart: {
+ type: "column"
+ },
+ tooltip: {
+ valueSuffix: ' 1000 HA'
+ }
+ }
+ }
+ },
+ // for now it takes the id, TODO: add uid as well
+ allowedFilter: ['indicator'],
+ filter: [
+ {
+ "name": "filter",
+ "parameters": {
+ "rows": {
+ "year": {
+ "time": [
+ {
+ "from": 1990,
+ "to": 2010
+ }
+ ]
+ },
+ "indicator": {
+ "codes": [
+ {
+ "uid": "FLUDE_INDICATORS",
+ "codes": [
+ "SoilWatProt"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "subregion", "year", "indicator"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "AVG"
+ },
+ {
+ "columns": ["um"],
+ "rule": "FIRST"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "subregion": "ASC",
+ "year": "ASC"
+ }
+ }
+ ]
+ },
+ {
+ id: 'item-6',
+ type: 'chart',
+ class: "fx-timeseries-ecample",
+ //needed if layout = injected
+ container: "#item-6",
+ config: {
+ container: "#item-6",
+ adapter: {
+ type: "pie",
+ valueDimensions: 'value',
+ seriesDimensions: ['subregion']
+ },
+ template: {},
+ creator: {
+ chartObj: {
+ chart: {
+ plotBackgroundColor: null,
+ plotBorderWidth: null,
+ plotShadow: false,
+ type: 'pie'
+ },
+ title: {
+ //text: 'Browser market shares January, 2015 to May, 2015'
+ },
+ tooltip: {
+ pointFormat: '{series.name}: {point.percentage:.1f}%'
+ },
+ plotOptions: {
+ pie: {
+ allowPointSelect: true,
+ cursor: 'pointer',
+ dataLabels: {
+ enabled: true
+ },
+ showInLegend: true
+ }
+ }
+ }
+ }
+ },
+ // for now it takes the id, TODO: add uid as well
+ allowedFilter: ['indicator', 'year'],
+ filter: [
+ {
+ "name": "filter",
+ "parameters": {
+ "rows": {
+ "year": {
+ "time": [
+ {
+ "from": 2010,
+ "to": 2010
+ }
+ ]
+ },
+ "indicator": {
+ "codes": [
+ {
+ "uid": "FLUDE_INDICATORS",
+ "codes": [
+ "SoilWatProt"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "subregion", "indicator"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "AVG"
+ },
+ {
+ "columns": ["um"],
+ "rule": "FIRST"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "subregion": "ASC"
+ }
+ }
+ ]
+ },
+
+ {
+ id: 'item-7',
+ type: 'chart',
+ class: "fx-timeseries-ecample",
+ //needed if layout = injected
+ container: "#item-7",
+ config: {
+ container: "#item-7",
+ adapter: {
+ type: "standard",
+ xDimensions: 'year',
+ yDimensions: 'indicator',
+ valueDimensions: 'value',
+ seriesDimensions: ['domain']
+ },
+ template: {},
+ creator: {
+ chartObj: {
+ chart: {
+ type: "column"
+ },
+ tooltip: {
+ valueSuffix: ' 1000 HA'
+ }
+ }
+ }
+ },
+ // for now it takes the id, TODO: add uid as well
+ allowedFilter: ['indicator'],
+ filter: [
+ {
+ "name": "filter",
+ "parameters": {
+ "rows": {
+ "year": {
+ "time": [
+ {
+ "from": 1990,
+ "to": 2010
+ }
+ ]
+ },
+ "indicator": {
+ "codes": [
+ {
+ "uid": "FLUDE_INDICATORS",
+ "codes": [
+ "SoilWatProt"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "domain", "year", "indicator"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "AVG"
+ },
+ {
+ "columns": ["um"],
+ "rule": "FIRST"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "domain": "ASC",
+ "year": "ASC"
+ }
+ }
+ ]
+ },
+ {
+ id: 'item-8',
+ type: 'chart',
+ class: "fx-timeseries-ecample",
+ //needed if layout = injected
+ container: "#item-8",
+ config: {
+ container: "#item-8",
+ adapter: {
+ type: "pie",
+ valueDimensions: 'value',
+ seriesDimensions: ['domain']
+ },
+ template: {},
+ creator: {
+ chartObj: {
+ chart: {
+ plotBackgroundColor: null,
+ plotBorderWidth: null,
+ plotShadow: false,
+ type: 'pie'
+ },
+ title: {
+ //text: 'Browser market shares January, 2015 to May, 2015'
+ },
+ tooltip: {
+ pointFormat: '{series.name}: {point.percentage:.1f}%'
+ },
+ plotOptions: {
+ pie: {
+ allowPointSelect: true,
+ cursor: 'pointer',
+ dataLabels: {
+ enabled: true
+ },
+ showInLegend: true
+ }
+ }
+ }
+ }
+ },
+ // for now it takes the id, TODO: add uid as well
+ allowedFilter: ['indicator', 'year'],
+ filter: [
+ {
+ "name": "filter",
+ "parameters": {
+ "rows": {
+ "year": {
+ "time": [
+ {
+ "from": 2010,
+ "to": 2010
+ }
+ ]
+ },
+ "indicator": {
+ "codes": [
+ {
+ "uid": "FLUDE_INDICATORS",
+ "codes": [
+ "SoilWatProt"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "domain", "indicator"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "AVG"
+ },
+ {
+ "columns": ["um"],
+ "rule": "FIRST"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "domain": "ASC"
+ }
+ }
+ ]
+ },
+
+ {
+ id: 'item-9',
+ type: 'chart',
+ class: "fx-timeseries-ecample",
+ //needed if layout = injected
+ container: "#item-9",
+ config: {
+ container: "#item-9",
+ adapter: {
+ type: "standard",
+ xDimensions: 'year',
+ yDimensions: 'indicator',
+ valueDimensions: 'value',
+ seriesDimensions: ['incomes']
+ },
+ template: {},
+ creator: {
+ chartObj: {
+ chart: {
+ type: "column"
+ },
+ tooltip: {
+ valueSuffix: ' 1000 HA'
+ }
+ }
+ }
+ },
+ // for now it takes the id, TODO: add uid as well
+ allowedFilter: ['indicator'],
+ filter: [
+ {
+ "name": "filter",
+ "parameters": {
+ "rows": {
+ "year": {
+ "time": [
+ {
+ "from": 1990,
+ "to": 2010
+ }
+ ]
+ },
+ "indicator": {
+ "codes": [
+ {
+ "uid": "FLUDE_INDICATORS",
+ "codes": [
+ "SoilWatProt"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "incomes", "year", "indicator"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "AVG"
+ },
+ {
+ "columns": ["um"],
+ "rule": "FIRST"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "incomes": "ASC",
+ "year": "ASC"
+ }
+ }
+ ]
+ },
+
+ {
+ id: 'item-10',
+ type: 'chart',
+ class: "fx-timeseries-ecample",
+ //needed if layout = injected
+ container: "#item-10",
+ config: {
+ container: "#item-10",
+ adapter: {
+ type: "pie",
+ valueDimensions: 'value',
+ seriesDimensions: ['incomes']
+ },
+ template: {},
+ creator: {
+ chartObj: {
+ chart: {
+ plotBackgroundColor: null,
+ plotBorderWidth: null,
+ plotShadow: false,
+ type: 'pie'
+ },
+ title: {
+ //text: 'Browser market shares January, 2015 to May, 2015'
+ },
+ tooltip: {
+ pointFormat: '{series.name}: {point.percentage:.1f}%'
+ },
+ plotOptions: {
+ pie: {
+ allowPointSelect: true,
+ cursor: 'pointer',
+ dataLabels: {
+ enabled: true
+ },
+ showInLegend: true
+ }
+ }
+ }
+ }
+ },
+ // for now it takes the id, TODO: add uid as well
+ allowedFilter: ['indicator', 'year'],
+ filter: [
+ {
+ "name": "filter",
+ "parameters": {
+ "rows": {
+ "year": {
+ "time": [
+ {
+ "from": 2010,
+ "to": 2010
+ }
+ ]
+ },
+ "indicator": {
+ "codes": [
+ {
+ "uid": "FLUDE_INDICATORS",
+ "codes": [
+ "SoilWatProt"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "incomes", "indicator"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "AVG"
+ },
+ {
+ "columns": ["um"],
+ "rule": "FIRST"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "incomes": "ASC"
+ }
+ }
+ ]
+ }
+
+
+ ]
+ }
+ }
+
+ }
+
+
+
+});
\ No newline at end of file
diff --git a/config/analyse/partner_matrix/Events.js b/config/analyse/partner_matrix/Events.js
new file mode 100644
index 00000000..73a29101
--- /dev/null
+++ b/config/analyse/partner_matrix/Events.js
@@ -0,0 +1,10 @@
+ /*global define*/
+define(function ( ) {
+
+ 'use strict';
+
+ return {
+ FILTER_ON_READY : "fx.filter.onready",
+ FILTER_ON_CHANGE : "fx.filter.onchange"
+ };
+});
diff --git a/config/analyse/partner_matrix/config-charts-country-donor.js b/config/analyse/partner_matrix/config-charts-country-donor.js
new file mode 100644
index 00000000..17f47f2b
--- /dev/null
+++ b/config/analyse/partner_matrix/config-charts-country-donor.js
@@ -0,0 +1,566 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+
+ dashboard: {
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ {
+ id: "tot-fao-oda",
+ type: 'chart',
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ marginTop: 50,
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% FAO Sectors/Total ODA'){
+ serie.update({
+ yAxis: 'subsector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'subsector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ },
+ subtitle: {
+ text: ''
+ }
+
+ }
+
+ },
+ filterFor: {
+ "filter_all_subsectors_sum": ['year', 'oda', 'recipientcode', 'donorcode'],
+ "filter_related_oda": ['year', 'oda', 'recipientcode', 'donorcode']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_oda"
+ },
+ {
+ "uid": "related_oda"
+ },
+ {
+ "uid":"percentage_oda"
+ }
+
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+ },
+
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_all_subsectors_sum"
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "max"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "all_subsectors_sum"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA"
+ },
+ "rid": {
+ "uid": "total_oda"
+ }
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "fao_sector": {
+ "enumeration": [
+ "1"
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_related_oda"
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "max"
+ }
+ ]
+ }},
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA in FAO Sectors"
+ },
+ "rid": {
+ "uid": "related_oda"
+ }
+ },
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_oda"
+ },
+ {
+ "uid": "related_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ },
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "FAO Sector (%)"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( related_oda_value / total_oda_value )*100"]
+
+ }
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": null
+ },
+ "value": "percentage"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% FAO Sectors/Total ODA"
+ }
+
+ },
+
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode",
+ "indicator"
+ ],
+ "rows": {
+ }
+ },
+ "rid": {
+ "uid": "percentage_oda"
+ }
+ }
+
+
+ ]
+ }, // FAO SECTORS and TOTAL ODA by TOP 10 RESOURCE PARTNERS
+ {
+ id: 'top-channel-categories',
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["channelsubcategory_name"], //x axis and series
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ },
+ subtitle: {
+ text: ''
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ recipientcode: ["625"],
+ donorcode: ["1"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "channelsubcategory_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ } // TOP CHANNELS
+ ]
+ }
+ }
+});
\ No newline at end of file
diff --git a/config/analyse/partner_matrix/config-charts-country.js b/config/analyse/partner_matrix/config-charts-country.js
new file mode 100644
index 00000000..e55c3c15
--- /dev/null
+++ b/config/analyse/partner_matrix/config-charts-country.js
@@ -0,0 +1,1360 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+
+
+ dashboard: {
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ {
+ id: "top-partners-fao-oda",
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["donorcode_EN"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ marginTop: 50,
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% FAO Sectors/Total'){
+ serie.update({
+ yAxis: 'fao-axis',
+ type: 'spline',
+ dashStyle: 'shortdot',
+ tooltip: {
+ valueSuffix: ' %'
+ },
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ // xAxis: {
+ // type: 'datetime'
+ // },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'fao-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ },
+ subtitle: {
+ text: ''
+ }
+
+ }
+ },
+
+ filterFor: {
+ "filter_top_10": ['year', 'oda', 'recipientcode'],
+ "filter_fao_sector": ['year', 'oda'],
+ "filter_total_oda": ['year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "fao_sector"
+ },
+ {
+ "uid":"total_oda"
+ },
+ {
+ "uid":"percentage_oda"
+ }
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "indicator": "DESC",
+ "value": "DESC"
+ }
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "value"
+ ],
+ "rows": {
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_top_10"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ },
+ "rid":{"uid":"top_10"}
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ },
+ {
+ "uid": "top_10"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "tables":[
+ {
+ "uid":"top_10",
+ "column":"donorcode"
+ }
+ ]
+ },
+ "fao_sector": {
+ "enumeration": [
+ "1"
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_fao_sector"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "MAX"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA in FAO sectors"
+ },
+ "rid":{"uid":"fao_sector"}
+
+ },
+
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ },
+ {
+ "uid": "top_10"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "tables":[
+ {
+ "uid":"top_10",
+ "column":"donorcode"
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_oda"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "MAX"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA"
+ },
+ "rid":{"uid":"total_oda"}
+ },
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_oda"
+ },
+ {
+ "uid": "fao_sector"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "donorcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "donorcode"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ },
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "FAO Sector (%)"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( fao_sector_value / total_oda_value )*100"]
+
+ }
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": null
+ },
+ "value": "percentage"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% FAO Sectors/Total"
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "donorcode",
+ "value",
+ "unitcode",
+ "indicator"
+ ],
+ "rows": {
+ }
+ },
+ "rid": {
+ "uid": "percentage_oda"
+ }
+ }
+ ]
+ /* postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "fao_sector"
+ },
+ {
+ "uid":"total_oda"
+ },
+ {
+ "uid":"percentage_oda"
+ }
+ ],
+ "parameters": {
+ }
+
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "indicator":"DESC",
+ "value": "DESC"
+ },
+
+ "rid":{"uid":"union_process"}
+ },
+
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "value"
+ ],
+ "rows": {
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_top_10"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ },
+ "rid":{"uid":"top_10"}
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ },
+ {
+ "uid": "top_10"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "tables":[
+ {
+ "uid":"top_10",
+ "column":"donorcode"
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "fao_sector": {
+ "enumeration": [
+ "1"
+ ]
+ }
+
+ }
+ },
+ "rid":{"uid":"filter_faosubsectors"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "MAX"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA in FAO Sectors"
+ },
+ "rid":{"uid":"fao_sector"}
+
+ },
+
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ },
+ {
+ "uid": "top_10"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "tables":[
+ {
+ "uid":"top_10",
+ "column":"donorcode"
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_oda"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "MAX"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA"
+ },
+ "rid":{"uid":"total_oda"}
+ },
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_oda"
+ },
+ {
+ "uid": "fao_sector"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "donorcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "donorcode"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ },
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "FAO Sector (%)"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( fao_sector_value / total_oda_value )*100"]
+
+ }
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": null
+ },
+ "value": "percentage"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% FAO Sectors/Total"
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "value",
+ "unitcode",
+ "indicator"
+ ],
+ "rows": {
+ }
+ },
+ "rid": {
+ "uid": "percentage_oda"
+ }
+ }
+ ]*/
+ }, // FAO SECTORS and TOTAL ODA by TOP 10 RESOURCE PARTNERS
+ {
+ id: 'top-channel-categories',
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["channelsubcategory_name"], //x axis and series
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ },
+ subtitle: {
+ text: ''
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ recipientcode: ["625"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "channelsubcategory_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ }, // TOP CHANNELS
+ {
+ id: "top-partners", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["donorcode_EN"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ xAxis: {
+ type: 'datetime'
+ },
+ chart: {
+ marginTop: 50
+ },
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ },
+ subtitle: {
+ text: ''
+ }
+
+ }
+ },
+
+ filterFor: { //FX-filter format
+ filter_top_5: ["year", "oda", "recipientcode"],
+ filter_2: ["year", "oda", "recipientcode"]
+ },
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "value"
+ ],
+ "rows": {
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ }
+
+ }
+ },
+ "rid":{"uid":"filter_top_5"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 5,
+ "page": 1
+ },
+ "rid":{"uid":"top_5"}
+ },
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ },
+ {
+ "uid": "top_5"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode":{
+ "tables":[
+ {
+ "uid":"top_5",
+ "column":"donorcode"
+ }
+ ]
+ }
+
+ }
+ },
+ "rid":{"uid":"filter_2"}
+ }
+ ]
+ }, // TOTAL ODA from TOP 5 RESOURCE PARTNERS
+
+ {
+ id: "top-fao-partners", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["donorcode_EN"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ xAxis: {
+ type: 'datetime'
+ },
+
+ chart: {
+ marginTop: 50
+ },
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ },
+ subtitle: {
+ text: ''
+ }
+ }
+ },
+
+ filterFor: { //FX-filter format
+ filter_top_5: ["year", "oda", "recipientcode"],
+ filter_2: ["year", "oda", "recipientcode"]
+ },
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "value"
+ ],
+ "rows": {
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "fao_sector": {
+ "enumeration": [
+ "1"
+ ]
+ }
+
+ }
+ },
+ "rid":{"uid":"filter_top_5"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 5,
+ "page": 1
+ },
+ "rid":{"uid":"top_5"}
+ },
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ },
+ {
+ "uid": "top_5"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode":{
+ "tables":[
+ {
+ "uid":"top_5",
+ "column":"donorcode"
+ }
+ ]
+ },
+ "fao_sector": {
+ "enumeration": [
+ "1"
+ ]
+ }
+
+ }
+ },
+ "rid":{"uid":"filter_2"}
+ }
+ ]}
+ ]
+ }
+ }
+});
\ No newline at end of file
diff --git a/config/analyse/partner_matrix/config-charts-donor.js b/config/analyse/partner_matrix/config-charts-donor.js
new file mode 100644
index 00000000..dcdccba8
--- /dev/null
+++ b/config/analyse/partner_matrix/config-charts-donor.js
@@ -0,0 +1,938 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+
+ dashboard: {
+
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ {
+ id: "top-recipients-fao-oda",
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["recipientcode_EN"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ marginTop: 50,
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% FAO Sectors/Total'){
+ serie.update({
+ yAxis: 'fao-axis',
+ type: 'spline',
+ dashStyle: 'shortdot',
+ tooltip: {
+ valueSuffix: ' %'
+ },
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ // xAxis: {
+ // type: 'datetime'
+ // },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'fao-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ },
+ subtitle: {
+ text: ''
+ }
+
+ }
+ },
+
+ filterFor: {
+ "filter_top_10": ['year', 'oda', 'donorcode'],
+ "filter_fao_sector": ['year', 'oda'],
+ "filter_total_oda": ['year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "fao_sector"
+ },
+ {
+ "uid":"total_oda"
+ },
+ {
+ "uid":"percentage_oda"
+ }
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "indicator": "DESC",
+ "value": "DESC"
+ }
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "value"
+ ],
+ "rows": {
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_top_10"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ },
+ "rid":{"uid":"top_10"}
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ },
+ {
+ "uid": "top_10"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "recipientcode": {
+ "tables":[
+ {
+ "uid":"top_10",
+ "column":"recipientcode"
+ }
+ ]
+ },
+ "fao_sector": {
+ "enumeration": [
+ "1"
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_fao_sector"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "MAX"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA in FAO sectors"
+ },
+ "rid":{"uid":"fao_sector"}
+
+ },
+
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ },
+ {
+ "uid": "top_10"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "recipientcode": {
+ "tables":[
+ {
+ "uid":"top_10",
+ "column":"recipientcode"
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_oda"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "MAX"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA"
+ },
+ "rid":{"uid":"total_oda"}
+ },
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_oda"
+ },
+ {
+ "uid": "fao_sector"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "recipientcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "recipientcode"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ },
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "FAO Sector (%)"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( fao_sector_value / total_oda_value )*100"]
+
+ }
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": null
+ },
+ "value": "percentage"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% FAO Sectors/Total"
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "donorcode",
+ "value",
+ "unitcode",
+ "indicator"
+ ],
+ "rows": {
+ }
+ },
+ "rid": {
+ "uid": "percentage_oda"
+ }
+ }
+ ]
+ }, // FAO SECTORS and TOTAL ODA by TOP 10 RESOURCE PARTNERS
+ {
+ id: 'top-channel-categories',
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["channelsubcategory_name"], //x axis and series
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ },
+ subtitle: {
+ text: ''
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ donorcode: ["1"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "channelsubcategory_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ }, // TOP CHANNELS
+ {
+ id: "top-recipients", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["recipientcode_EN"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ xAxis: {
+ type: 'datetime'
+ },
+ chart: {
+ marginTop: 50
+ },
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ },
+ subtitle: {
+ text: ''
+ }
+
+ }
+ },
+
+ filterFor: { //FX-filter format
+ filter_top_5: ["year", "oda", "donorcode"],
+ filter_2: ["year", "oda", "donorcode"]
+ },
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "value"
+ ],
+ "rows": {
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ }
+
+ }
+ },
+ "rid":{"uid":"filter_top_5"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 5,
+ "page": 1
+ },
+ "rid":{"uid":"top_5"}
+ },
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ },
+ {
+ "uid": "top_5"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "recipientcode":{
+ "tables":[
+ {
+ "uid":"top_5",
+ "column":"recipientcode"
+ }
+ ]
+ }
+
+ }
+ },
+ "rid":{"uid":"filter_2"}
+ }
+ ]
+ }, // TOTAL ODA from TOP 5 RESOURCE PARTNERS
+
+ {
+ id: "top-fao-recipients", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["recipientcode_EN"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ xAxis: {
+ type: 'datetime'
+ },
+
+ chart: {
+ marginTop: 50
+ },
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ },
+ subtitle: {
+ text: ''
+ }
+
+ }
+ },
+
+ filterFor: { //FX-filter format
+ filter_top_5: ["year", "oda", "donorcode"],
+ filter_2: ["year", "oda", "donorcode"]
+ },
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "value"
+ ],
+ "rows": {
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "fao_sector": {
+ "enumeration": [
+ "1"
+ ]
+ }
+
+ }
+ },
+ "rid":{"uid":"filter_top_5"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 5,
+ "page": 1
+ },
+ "rid":{"uid":"top_5"}
+ },
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ },
+ {
+ "uid": "top_5"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "recipientcode":{
+ "tables":[
+ {
+ "uid":"top_5",
+ "column":"recipientcode"
+ }
+ ]
+ },
+ "fao_sector": {
+ "enumeration": [
+ "1"
+ ]
+ }
+
+ }
+ },
+ "rid":{"uid":"filter_2"}
+ }
+ ]}
+ ]
+ }
+ }
+});
\ No newline at end of file
diff --git a/config/analyse/partner_matrix/config-filter.js b/config/analyse/partner_matrix/config-filter.js
new file mode 100644
index 00000000..58203620
--- /dev/null
+++ b/config/analyse/partner_matrix/config-filter.js
@@ -0,0 +1,132 @@
+define(function () {
+
+ 'use strict';
+
+ return {
+
+ filter: {
+ recipientcode: {
+ selector: {
+ id: "dropdown",
+ default: ["625"], // afghanistan,
+ emptyOption : {
+ enabled: true,
+ text: "All",
+ value: "all"
+ },
+ config: { //Selectize configuration
+ maxItems: 1,
+ // placeholder: "All",
+ // plugins: ['remove_button'],
+ // mode: 'multi'
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ uid: "crs_recipients",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ donorcode: {
+ selector: {
+ id: "dropdown",
+ default: ["all"], // All,
+ emptyOption : {
+ enabled: true,
+ text: "All",
+ value: "all"
+ },
+ config: { //Selectize configuration
+ maxItems: 1,
+ // placeholder: "All",
+ // plugins: ['remove_button'],
+ // mode: 'multi'
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ uid: "crs_donors",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ "year-from": {
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2000],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ "year-to": {
+
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2014],
+ config: {
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+
+ dependencies: {
+ "year-from": {id: "min", event: "select"}
+ },
+
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ oda: {
+ selector: {
+ id: "dropdown",
+ default: ['adam_usd_commitment'],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ uid: "crs_flow_amounts",
+ version: "2016"
+ },
+ template: {
+ hideHeaderIcon: false,
+ headerIconClassName: 'glyphicon glyphicon-info-sign',
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ }
+ }
+ }
+});
\ No newline at end of file
diff --git a/config/analyse/partner_matrix/config-partner-matrix.js b/config/analyse/partner_matrix/config-partner-matrix.js
new file mode 100644
index 00000000..5191ec8c
--- /dev/null
+++ b/config/analyse/partner_matrix/config-partner-matrix.js
@@ -0,0 +1,17 @@
+/*global define*/
+define(function ( ) {
+
+ 'use strict';
+
+ return {
+ dashboard: {
+ DEFAULT_TOPIC : 'country' //country, donor or country-donor
+ },
+ topic: {
+ SELECTED_TOPIC: 'selected_topic',
+ RECIPIENT_COUNTRY_SELECTED: 'country',
+ RESOURCE_PARTNER_SELECTED: 'donor',
+ RECIPIENT_AND_PARTNER_SELECTED: 'country-donor'
+ }
+ };
+});
\ No newline at end of file
diff --git a/config/analyse/partner_matrix/config-table-country-donor.js b/config/analyse/partner_matrix/config-table-country-donor.js
new file mode 100644
index 00000000..df17a110
--- /dev/null
+++ b/config/analyse/partner_matrix/config-table-country-donor.js
@@ -0,0 +1,419 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ dashboard: {
+
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ {
+ id: "partner-matrix",
+ type: 'custom',
+ config: {
+ "groupedRow":false,
+ "aggregationFn":{"value":"sum"},
+ "formatter":"localstring",
+ "decimals":2,
+ "pageSize": "150",
+ "showRowHeaders":true,
+ "columns":["indicator"],
+ "rows":["donorcode_EN", "recipientcode_EN"],
+ "aggregations":[],
+ "values":["value"],
+ inputFormat : "fenixtool",
+
+ config: {
+ pageSize: 150,
+ autoSelectFirstRow: false,
+ columns: [
+ {id: "donorcode_EN", width: 150},
+ {id: "recipientcode_EN", width: 200},
+ {id: "indicator", width: 150},
+ {id: "indicator", width: 200},
+ {id: "indicator", width: 200}
+ ]
+ }
+ },
+
+ filterFor: {
+ "filter_all_subsectors": ['year', 'oda', 'recipientcode', 'donorcode'],
+ "filter_faosubsectors": ['year', 'oda', 'recipientcode', 'donorcode']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_oda"
+ },
+ {
+ "uid": "related_oda"
+ },
+ {
+ "uid":"percentage_oda"
+ }
+
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ },
+
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_all_subsectors"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientcode",
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "max"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "all_subsectors_sum"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "key": true,
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA (mil $)"
+ },
+ "rid": {
+ "uid": "total_oda"
+ }
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "fao_sector": {
+ "enumeration": [
+ "1"
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_faosubsectors"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientcode",
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }},
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "key": true,
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA in FAO sectors (mil $)"
+ },
+ "rid": {
+ "uid": "related_oda"
+ }
+ },
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_oda"
+ },
+ {
+ "uid": "related_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "recipientcode"
+ },
+ {
+ "type": "id",
+ "value": "donorcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "recipientcode"
+ },
+ {
+ "type": "id",
+ "value": "donorcode"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ },
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "FAO Sector (%)"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( related_oda_value / total_oda_value )*100"]
+
+ }
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": null
+ },
+ "value": "percentage"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "key": true,
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "FAO Sectors (%)"
+ }
+
+ },
+
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "donorcode",
+ "value",
+ "unitcode",
+ "indicator"
+ ],
+ "rows": {
+ }
+ },
+ "rid": {
+ "uid": "percentage_oda"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ }
+
+
+});
\ No newline at end of file
diff --git a/config/analyse/partner_matrix/config-table-country.js b/config/analyse/partner_matrix/config-table-country.js
new file mode 100644
index 00000000..830aeeae
--- /dev/null
+++ b/config/analyse/partner_matrix/config-table-country.js
@@ -0,0 +1,397 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ dashboard: {
+
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ {
+ id: "partner-matrix",
+ type: 'custom',
+ config: {
+ "groupedRow":false,
+ "aggregationFn":{"value":"sum"},
+ "formatter":"localstring",
+ "decimals":2,
+ "pageSize": "150",
+ "showRowHeaders":true,
+ "columns":["indicator"],
+ "rows":["recipientcode_EN", "donorcode_EN"],
+ "aggregations":[],
+ "values":["value"],
+ inputFormat : "fenixtool",
+
+ config: {
+ pageSize: 150,
+ autoSelectFirstRow: false,
+ columns: [
+ {id: "recipientcode_EN", width: 200},
+ {id: "donorcode_EN", width: 150},
+ {id: "indicator", width: 150},
+ {id: "indicator", width: 200},
+ {id: "indicator", width: 200}
+ ]
+ }
+ },
+
+ filterFor: {
+ "filter_all_subsectors": ['year', 'oda', 'recipientcode'],
+ "filter_faosubsectors": ['year', 'oda', 'recipientcode']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_oda"
+ },
+ {
+ "uid": "related_oda"
+ },
+ {
+ "uid":"percentage_oda"
+ }
+
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ },
+
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_all_subsectors"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientcode",
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "max"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "all_subsectors_sum"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "key": true,
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA (mil $)"
+ },
+ "rid": {
+ "uid": "total_oda"
+ }
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "fao_sector": {
+ "enumeration": [
+ "1"
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_faosubsectors"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientcode",
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }},
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "key": true,
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA in FAO sectors (mil $)"
+ },
+ "rid": {
+ "uid": "related_oda"
+ }
+ },
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_oda"
+ },
+ {
+ "uid": "related_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "recipientcode"
+ },
+ {
+ "type": "id",
+ "value": "donorcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "recipientcode"
+ },
+ {
+ "type": "id",
+ "value": "donorcode"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ },
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "FAO Sector (%)"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( related_oda_value / total_oda_value )*100"]
+
+ }
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": null
+ },
+ "value": "percentage"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "key": true,
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "FAO Sectors (%)"
+ }
+
+ },
+
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "donorcode",
+ "value",
+ "unitcode",
+ "indicator"
+ ],
+ "rows": {
+ }
+ },
+ "rid": {
+ "uid": "percentage_oda"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ }
+
+
+});
\ No newline at end of file
diff --git a/config/analyse/partner_matrix/config-table-donor.js b/config/analyse/partner_matrix/config-table-donor.js
new file mode 100644
index 00000000..59572004
--- /dev/null
+++ b/config/analyse/partner_matrix/config-table-donor.js
@@ -0,0 +1,397 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ dashboard: {
+
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ {
+ id: "partner-matrix",
+ type: 'custom',
+ config: {
+ "groupedRow":false,
+ "aggregationFn":{"value":"sum"},
+ "formatter":"localstring",
+ "decimals":2,
+ "pageSize": "150",
+ "showRowHeaders":true,
+ "columns":["indicator"],
+ "rows":["donorcode_EN", "recipientcode_EN"],
+ "aggregations":[],
+ "values":["value"],
+ inputFormat : "fenixtool",
+
+ config: {
+ pageSize: 150,
+ autoSelectFirstRow: false,
+ columns: [
+ {id: "donorcode_EN", width: 150},
+ {id: "recipientcode_EN", width: 200},
+ {id: "indicator", width: 150},
+ {id: "indicator", width: 200},
+ {id: "indicator", width: 200}
+ ]
+ }
+ },
+
+ filterFor: {
+ "filter_all_subsectors": ['year', 'oda', 'donorcode'],
+ "filter_faosubsectors": ['year', 'oda', 'donorcode']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_oda"
+ },
+ {
+ "uid": "related_oda"
+ },
+ {
+ "uid":"percentage_oda"
+ }
+
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ },
+
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_all_subsectors"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientcode",
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "max"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "all_subsectors_sum"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "key": true,
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA (mil $)"
+ },
+ "rid": {
+ "uid": "total_oda"
+ }
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_resource_matrix_oda"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "fao_sector": {
+ "enumeration": [
+ "1"
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_faosubsectors"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientcode",
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }},
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "key": true,
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA in FAO sectors (mil $)"
+ },
+ "rid": {
+ "uid": "related_oda"
+ }
+ },
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_oda"
+ },
+ {
+ "uid": "related_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "recipientcode"
+ },
+ {
+ "type": "id",
+ "value": "donorcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "recipientcode"
+ },
+ {
+ "type": "id",
+ "value": "donorcode"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ },
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "FAO Sector (%)"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( related_oda_value / total_oda_value )*100"]
+
+ }
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": null
+ },
+ "value": "percentage"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "key": true,
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "FAO Sectors (%)"
+ }
+
+ },
+
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "donorcode",
+ "value",
+ "unitcode",
+ "indicator"
+ ],
+ "rows": {
+ }
+ },
+ "rid": {
+ "uid": "percentage_oda"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ }
+
+
+});
\ No newline at end of file
diff --git a/config/analyse/partner_matrix/config-table-filter.js b/config/analyse/partner_matrix/config-table-filter.js
new file mode 100644
index 00000000..56740988
--- /dev/null
+++ b/config/analyse/partner_matrix/config-table-filter.js
@@ -0,0 +1,30 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+
+ groupedRow : {
+
+ selector : {
+ id : "input",
+ type : "checkbox",
+ source : [
+ { value : "groupedRow", label : "Group row"}
+
+ ],
+ default: ["groupedRow"]
+ },
+
+ template : {
+ title : "groupedRow"
+ }
+ }
+
+ }
+
+
+
+});
\ No newline at end of file
diff --git a/config/analyse/priority_analysis/Events.js b/config/analyse/priority_analysis/Events.js
new file mode 100644
index 00000000..8861973b
--- /dev/null
+++ b/config/analyse/priority_analysis/Events.js
@@ -0,0 +1,12 @@
+ /*global define*/
+define(function ( ) {
+
+ 'use strict';
+
+ return {
+ FILTER_ON_READY : "fx.filter.onready",
+ FILTER_ON_CHANGE : "fx.filter.onchange",
+ VENN_ON_CHANGE: "fx.chart.venn.onchange",
+ VENN_NO_VALUES: "fx.chart.venn.novalues"
+ };
+});
diff --git a/config/analyse/priority_analysis/config-charts.js b/config/analyse/priority_analysis/config-charts.js
new file mode 100644
index 00000000..efd3b84c
--- /dev/null
+++ b/config/analyse/priority_analysis/config-charts.js
@@ -0,0 +1,576 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+
+ dashboard: {
+ //default dataset id
+ uid: "adam_priority_analysis",
+
+ context: "BY_PARTNER",
+
+ items: [
+ {
+ id: "top-partners", // TOP 10 RECIPIENTS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["donorcode_EN"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ marginTop: 50
+ },
+ subtitle: {
+ text: ''
+ }
+ }
+
+ },
+
+ filterFor: {
+ // "filter_top_10": ['year', 'purposecode', 'recipientcode']
+ "filter_top_10": ['year', 'purposecode']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_priority_analysis"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ /* "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },*/
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "99820"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {"uid": "filter_top_10"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ },
+ "rid": {"uid": "top_10"}
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "oda"
+ }
+ }
+
+ ]
+ }, // TOP 10 PARTNERS
+ {
+ id: "top-recipients", // TOP 10 RECIPIENTS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["donorcode_EN"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ marginTop: 50
+ },
+ subtitle: {
+ text: ''
+ }
+ }
+
+ },
+
+ filterFor: {
+ // "filter_top_10": ['year', 'purposecode', 'recipientcode']
+ "filter_top_10": ['year', 'purposecode']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_priority_analysis"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ /* "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },*/
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "99820"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {"uid": "filter_top_10"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ },
+ "rid": {"uid": "top_10"}
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "oda"
+ }
+ }
+
+ ]
+ }, // TOP 10 RECIPIENTS
+ {
+ id: "financing-priorities-partners",
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["purposecode_EN"], //x axis
+ series: ["donorcode_EN"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ marginTop: 50
+ },
+ subtitle: {
+ text: ''
+ },
+ plotOptions: {
+ column: {
+ stacking: 'normal'
+ }
+ },
+ tooltip: {
+ formatter: function () {
+ var unit = 'USD Mil';
+
+ return '' +
+ this.series.name + '
' +
+ Highcharts.numberFormat(this.y, 2, '.', ',') + ' ' + unit;
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ }
+ }
+ }
+ },
+
+ filterFor: {
+ //"filter_top_10": ['year', 'purposecode', 'recipientcode']
+ "filter_top_10": ['year', 'purposecode']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_priority_analysis"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "purposecode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ /*"recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },*/
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "99820"
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "rid": {"uid": "filter_top_10"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode",
+ "purposecode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ }//,
+ // {
+ // "name": "page",
+ // "parameters": {
+ // "perPage": 10,
+ // "page": 1
+ // }
+ // },
+ ]
+ }, // BY TOP 10 RESOURCE PARTNERS
+ {
+ id: "financing-priorities-recipients",
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["purposecode_EN"], //x axis
+ series: ["donorcode_EN"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ marginTop: 50
+ },
+ subtitle: {
+ text: ''
+ },
+ plotOptions: {
+ column: {
+ stacking: 'normal'
+ }
+ },
+ tooltip: {
+ formatter: function () {
+ var unit = 'USD Mil';
+
+ return '' +
+ this.series.name + '
' +
+ Highcharts.numberFormat(this.y, 2, '.', ',') + ' ' + unit;
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ }
+ }
+ }
+ },
+
+ filterFor: {
+ //"filter_top_10": ['year', 'purposecode', 'recipientcode']
+ "filter_top_10": ['year', 'purposecode']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_priority_analysis"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "purposecode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ /*"recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },*/
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "99820"
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "rid": {"uid": "filter_top_10"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode",
+ "purposecode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ }//,
+ // {
+ // "name": "page",
+ // "parameters": {
+ // "perPage": 10,
+ // "page": 1
+ // }
+ // },
+ ]
+ } // BY TOP 10 RECIPIENTS
+
+ ]
+ }
+ }
+
+
+});
\ No newline at end of file
diff --git a/config/analyse/priority_analysis/config-filter.js b/config/analyse/priority_analysis/config-filter.js
new file mode 100644
index 00000000..6ed4569a
--- /dev/null
+++ b/config/analyse/priority_analysis/config-filter.js
@@ -0,0 +1,112 @@
+define(function () {
+
+ 'use strict';
+
+ return {
+
+ filter: {
+ recipientcode: {
+ selector: {
+ id: "dropdown",
+ default: ["625"], // afghanistan,
+ emptyOption : {
+ enabled: true,
+ text: "All",
+ value: "all"
+ },
+ config: { //Selectize configuration
+ maxItems: 1,
+ // placeholder: "All",
+ // plugins: ['remove_button'],
+ // mode: 'multi'
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ uid: "crs_recipients",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ donorcode: {
+ selector: {
+ id: "dropdown",
+ default: ["all"], // All,
+ emptyOption : {
+ enabled: true,
+ text: "All",
+ value: "all"
+ },
+ config: { //Selectize configuration
+ maxItems: 1,
+ // placeholder: "All",
+ // plugins: ['remove_button'],
+ // mode: 'multi'
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ uid: "crs_donors",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ "year-from": {
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2000],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ "year-to": {
+
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2014],
+ config: {
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+
+ dependencies: {
+ "year-from": {id: "min", event: "select"}
+ },
+
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ }
+ }
+ }
+});
\ No newline at end of file
diff --git a/config/analyse/priority_analysis/config-priority-analysis.js b/config/analyse/priority_analysis/config-priority-analysis.js
new file mode 100644
index 00000000..4709efd0
--- /dev/null
+++ b/config/analyse/priority_analysis/config-priority-analysis.js
@@ -0,0 +1,23 @@
+/*global define*/
+define(function ( ) {
+
+ 'use strict';
+
+ return {
+ dashboard: {
+ DEFAULT_TOPIC : 'recipient' //recipient, partner or recipient-partner
+ },
+ topic: {
+ SELECTED_TOPIC: 'selected_topic',
+ RECIPIENT_COUNTRY_SELECTED: 'recipient',
+ RESOURCE_PARTNER_SELECTED: 'partner',
+ RECIPIENT_AND_PARTNER_SELECTED: 'recipient-partner'
+ },
+ selections: {
+ ALL: 'all'
+ },
+ items: {
+ VENN_DIAGRAM: 'venn-diagram'
+ }
+ };
+});
\ No newline at end of file
diff --git a/config/analyse/priority_analysis/config-table.js b/config/analyse/priority_analysis/config-table.js
new file mode 100644
index 00000000..7bffb1f6
--- /dev/null
+++ b/config/analyse/priority_analysis/config-table.js
@@ -0,0 +1,91 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ dashboard: {
+ //default dataset id
+ uid: "adam_cpf_undaf_priorities_table",
+
+ items: [
+ {
+ id: "priorities-table",
+ type: 'custom',
+ config: {
+ "groupedRow": false,
+ "formatter": "localstring",
+ "showRowHeaders": true,
+ // "values":["projectshortdescription"],
+ // "rows":[ "purposecode", "projecttitle"],
+ "rows": ["recipientcode", "purposecode", "undaf_stated_priority", "cpf_stated_priority"],
+ "aggregations": [],
+ inputFormat: "fenixtool",
+
+ config: {
+ pageSize: 150,
+ autoSelectFirstRow: false,
+ columns: [
+ {id: "recipientcode_EN", width: 200},
+ {id: "purposecode_EN", width: 200},
+ {id: "undaf_stated_priority", width: 300},
+ {id: "cpf_stated_priority", width: 300}
+ ]
+ }
+ },
+
+ filterFor: {
+ "filter_priorities": ['recipientcode']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_cpf_undaf_priorities_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "purposecode",
+ "undaf_stated_priority",
+ "cpf_stated_priority",
+ "undaf_period",
+ "cpf_period",
+ "recipientcode"
+ ],
+ "rows": {
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "rid": {"uid": "filter_priorities"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "purposecode", "undaf_stated_priority", "cpf_stated_priority", "undaf_period", "cpf_period", "recipientcode"
+ ],
+ "aggregations": []
+ }
+ }
+ ]
+ }
+ ]
+ }
+ }
+
+
+});
\ No newline at end of file
diff --git a/config/analyse/priority_analysis/config-venn-partner.js b/config/analyse/priority_analysis/config-venn-partner.js
new file mode 100644
index 00000000..78d0b1cf
--- /dev/null
+++ b/config/analyse/priority_analysis/config-venn-partner.js
@@ -0,0 +1,250 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ dashboard: {
+ //default dataset id
+ uid: "adam_combined_priorities_table",
+
+ items: [
+ {
+ id: 'venn-diagram',
+ type: 'chart',
+ config: {
+ type: "venn",
+ renderer: "jvenn",
+ x: ["purposecode"], //x axis and series
+ series: ["indicator"], // series
+ y: ["purposecode_EN"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false// || default raw else fenixtool
+
+ },
+
+ filterFor: {
+ "filter_partner": ['donorcode']
+ },
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "recipient" // RESULT OF PART 1: ALL UNDAF PRIORITIES
+ },
+ {
+ "uid": "fao" // RESULT OF PART 2: ALL FAO PRIORITIES
+ },
+ {
+ "uid":"partner" // RESULT OF PART 3: SELECTED RESOURCE PARTNER PRIORITIES
+ }
+
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ }, // PART 4: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_combined_priorities_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "typecode",
+ "purposecode"
+ ],
+ "rows": {
+ "typecode": {
+ "enumeration": [
+ "recipient"
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_recipient"}
+ }, // PART 1: ALL UNDAF PRIORITIES: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "typecode",
+ "purposecode"
+ ],
+ "aggregations": [
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+
+ }, // (1ii): ALL UNDAF PRIORITIES: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Countries (All)" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "recipient"
+ }
+ }, // (1iii): ALL UNDAF PRIORITIES: Add Column
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_combined_priorities_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "typecode",
+ "purposecode"
+ ],
+ "rows": {
+ "typecode": {
+ "enumeration": [
+ "fao"
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_fao"}
+
+ }, // PART 2: ALL FAO PRIORITIES: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "typecode",
+ "purposecode"
+ ],
+ "aggregations": [
+ ]
+ }
+
+ }, // (2ii): ALL FAO PRIORITIES: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "FAO (All)" // PART 2 FINAL INDICATOR NAME
+ },
+ "rid":{"uid":"fao"}
+ }, // (2iii): ALL FAO PRIORITIES: Add Column
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_combined_priorities_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "typecode",
+ "purposecode"
+ ],
+ "rows": {
+ "typecode": {
+ "enumeration": [
+ "partner"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1" // Donor
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_partner"}
+
+ }, // PART 3: SELECTED RESOURCE PARTNER PRIORITIES: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "typecode",
+ "purposecode"
+ ],
+ "aggregations": [
+ ]
+ }
+
+ }, // (3ii): SELECTED RESOURCE PARTNER PRIORITIES: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Partners (Austria)" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid":{"uid":"partner"}
+ }// (3iii): ALL RESOURCE PARTNER PRIORITIES: Add Column
+ ]
+ }
+ ]
+ }
+ }
+
+
+});
\ No newline at end of file
diff --git a/config/analyse/priority_analysis/config-venn-recipient-partner.js b/config/analyse/priority_analysis/config-venn-recipient-partner.js
new file mode 100644
index 00000000..72f093ea
--- /dev/null
+++ b/config/analyse/priority_analysis/config-venn-recipient-partner.js
@@ -0,0 +1,274 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ dashboard: {
+ //default dataset id
+ uid: "adam_combined_priorities_table",
+
+ items: [
+ {
+ id: 'venn-diagram',
+ type: 'chart',
+ config: {
+ type: "venn",
+ renderer: "jvenn",
+ x: ["purposecode"], //x axis and series
+ series: ["indicator"], // series
+ y: ["purposecode_EN"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false// || default raw else fenixtool
+
+ },
+
+ filterFor: {
+ "filter_partner": ['donorcode'],
+ "filter_recipient": ['recipientcode'],
+ "filter_fao": ['recipientcode']
+ },
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "recipient" // RESULT OF PART 1: UNDAF PRIORITIES FOR COUNTRY
+ },
+ {
+ "uid": "fao" // RESULT OF PART 2: FAO PRIORITIES FOR COUNTRY
+ },
+ {
+ "uid":"partner" // RESULT OF PART 3: SELECTED RESOURCE PARTNER PRIORITIES
+ }
+
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ }, // PART 4: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_combined_priorities_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "typecode",
+ "purposecode"
+ ],
+ "rows": {
+ "typecode": {
+ "enumeration": [
+ "recipient"
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_recipient"}
+ }, // PART 1: UNDAF PRIORITIES: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "typecode",
+ "purposecode"
+ ],
+ "aggregations": [
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+
+ }, // (1ii): UNDAF PRIORITIES FOR COUNTRY: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Countries ((Afghanistan))" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "recipient"
+ }
+ }, // (1iii): UNDAF PRIORITIES FOR COUNTRY: Add Column
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_combined_priorities_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "typecode",
+ "purposecode"
+ ],
+ "rows": {
+ "typecode": {
+ "enumeration": [
+ "fao"
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_fao"}
+
+ }, // PART 2: FAO PRIORITIES FOR COUNTRY: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "typecode",
+ "purposecode"
+ ],
+ "aggregations": [
+ ]
+ }
+
+ }, // (2ii): FAO PRIORITIES FOR COUNTRY: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "FAO (Afghanistan)" // PART 2 FINAL INDICATOR NAME
+ },
+ "rid":{"uid":"fao"}
+ }, // (2iii): FAO PRIORITIES FOR COUNTRY: Add Column
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_combined_priorities_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "typecode",
+ "purposecode"
+ ],
+ "rows": {
+ "typecode": {
+ "enumeration": [
+ "partner"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1" // Donor
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_partner"}
+
+ }, // PART 3: SELECTED RESOURCE PARTNER PRIORITIES: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "typecode",
+ "purposecode"
+ ],
+ "aggregations": [
+ ]
+ }
+
+ }, // (3ii): SELECTED RESOURCE PARTNER PRIORITIES: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Partners (Austria)" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid":{"uid":"partner"}
+ }// (3iii): SELECTED RESOURCE PARTNER PRIORITIES: Add Column
+ ]
+ }
+ ]
+ }
+ }
+
+
+});
\ No newline at end of file
diff --git a/config/analyse/priority_analysis/config-venn-recipient.js b/config/analyse/priority_analysis/config-venn-recipient.js
new file mode 100644
index 00000000..28b069ab
--- /dev/null
+++ b/config/analyse/priority_analysis/config-venn-recipient.js
@@ -0,0 +1,262 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ dashboard: {
+ //default dataset id
+ uid: "adam_combined_priorities_table",
+
+ items: [
+ {
+ id: 'venn-diagram',
+ type: 'chart',
+ config: {
+ type: "venn",
+ renderer: "jvenn",
+ x: ["purposecode"], //x axis and series
+ series: ["indicator"], // series
+ y: ["purposecode_EN"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false// || default raw else fenixtool
+
+ },
+
+ filterFor: {
+ "filter_recipient": ['recipientcode'],
+ "filter_fao": ['recipientcode']
+ },
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "recipient" // RESULT OF PART 1: UNDAF PRIORITIES FOR COUNTRY
+ },
+ {
+ "uid": "fao" // RESULT OF PART 2: FAO PRIORITIES FOR COUNTRY
+ },
+ {
+ "uid":"partner" // RESULT OF PART 3: ALL RESOURCE PARTNER PRIORITIES
+ }
+
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ }, // PART 4: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_combined_priorities_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "typecode",
+ "purposecode"
+ ],
+ "rows": {
+ "typecode": {
+ "enumeration": [
+ "recipient"
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_recipient"}
+ }, // PART 1: UNDAF PRIORITIES FOR COUNTRY: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "typecode",
+ "purposecode"
+ ],
+ "aggregations": [
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+
+ }, // (1ii): UNDAF PRIORITIES FOR COUNTRY: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Countries (Afghanistan)" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "recipient"
+ }
+ }, // (1iii): UNDAF PRIORITIES FOR COUNTRY: Add Column
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_combined_priorities_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "typecode",
+ "purposecode"
+ ],
+ "rows": {
+ "typecode": {
+ "enumeration": [
+ "fao"
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_fao"}
+
+ }, // PART 2: FAO PRIORITIES FOR COUNTRY: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "typecode",
+ "purposecode"
+ ],
+ "aggregations": [
+ ]
+ }
+
+ }, // (2ii): FAO PRIORITIES FOR COUNTRY: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "FAO (Afghanistan)" // PART 2 FINAL INDICATOR NAME
+ },
+ "rid":{"uid":"fao"}
+ }, // (2iii): FAO PRIORITIES FOR COUNTRY: Add Column
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_combined_priorities_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "typecode",
+ "purposecode"
+ ],
+ "rows": {
+ "typecode": {
+ "enumeration": [
+ "partner"
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_partner"}
+
+ }, // PART 3: ALL RESOURCE PARTNER PRIORITIES: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "typecode",
+ "purposecode"
+ ],
+ "aggregations": [
+ ]
+ }
+
+ }, // (3ii): ALL RESOURCE PARTNER PRIORITIES: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Partners (All)" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid":{"uid":"partner"}
+ }// (3iii): ALL RESOURCE PARTNER PRIORITIES: Add Column
+ ]
+ }
+ ]
+ }
+ }
+
+
+});
\ No newline at end of file
diff --git a/config/analyse/projects/Config.js b/config/analyse/projects/Config.js
new file mode 100644
index 00000000..be5719c7
--- /dev/null
+++ b/config/analyse/projects/Config.js
@@ -0,0 +1,213 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+
+ filter: [
+ {
+ "type": "codelist",
+ "containerType": "baseContainer",
+ "title": "Country",
+ "components": [
+ {
+ "uid": "crs_recipients",
+ "version": "2015",
+ "type": "codelist",
+ "componentType": "dropDownList-FENIX",
+ "lang": "EN",
+ "title": {"EN": "Codelist"},
+ "name": "recipientcode",
+ config: {
+ "defaultsource": [
+ //{"value": null, "label": "All", "selected": true},
+ ],
+ "defaultcodes": ["238"], //Ethiopia
+ "onlyValueText": true,
+ "enableMultiselection": false
+ }
+
+ }
+ ]
+ },
+ {
+ "type": "codelist",
+ "containerType": "baseContainer",
+ "title": "Donor",
+ "components": [
+ {
+ "uid": "crs_donors",
+ "version": "2015",
+ "type": "codelist",
+ "componentType": "dropDownList-FENIX",
+ "lang": "EN",
+ "title": {"EN": "Codelist"},
+ "name": "donorcode",
+ config: {
+ "defaultsource": [
+ //{"value": null, "label": "All", "selected": true},
+ ],
+ "defaultcodes": ["1"], //Austria
+ "onlyValueText": true,
+ "enableMultiselection": false
+ }
+
+ }
+ ]
+ },
+ {
+ "type": "static",
+ "containerType": "baseContainer",
+ "components": [
+ {
+ "type": "range",
+ "name": "year",
+ "componentType": "timeRangeLists-FENIX",
+ "class" : "timeRangeList",
+ "lang": "EN",
+ "title": {"EN": "Year"},
+ "config": {
+ "from" : {
+ "title": {"EN": "From"},
+ "defaultsource": [
+ {"value": "2000", "label": "2000", "selected": true},
+ {"value": "2001", "label": "2001", "selected": false},
+ {"value": "2002", "label": "2002", "selected": false},
+ {"value": "2003", "label": "2003", "selected": false},
+ {"value": "2004", "label": "2004", "selected": false},
+ {"value": "2005", "label": "2005", "selected": false},
+ {"value": "2006", "label": "2006", "selected": false},
+ {"value": "2007", "label": "2007", "selected": false},
+ {"value": "2008", "label": "2008", "selected": false},
+ {"value": "2009", "label": "2009", "selected": false},
+ {"value": "2010", "label": "2010", "selected": false},
+ {"value": "2011", "label": "2011", "selected": false},
+ {"value": "2012", "label": "2012", "selected": false},
+ {"value": "2013", "label": "2013", "selected": false}
+ ]
+ },
+ "to" : {
+ "title": {"EN": "To"},
+ "defaultsource": [
+ {"value": "2013", "label": "2013", "selected": true},
+ {"value": "2012", "label": "2012", "selected": false},
+ {"value": "2011", "label": "2011", "selected": false},
+ {"value": "2010", "label": "2010", "selected": false},
+ {"value": "2009", "label": "2009", "selected": false},
+ {"value": "2008", "label": "2008", "selected": false},
+ {"value": "2007", "label": "2007", "selected": false},
+ {"value": "2006", "label": "2006", "selected": false},
+ {"value": "2005", "label": "2005", "selected": false},
+ {"value": "2004", "label": "2004", "selected": false},
+ {"value": "2003", "label": "2003", "selected": false},
+ {"value": "2002", "label": "2002", "selected": false},
+ {"value": "2001", "label": "2001", "selected": false},
+ {"value": "2000", "label": "2000", "selected": false}
+ ]
+ }
+ }
+ }
+ ]
+ }
+ ],
+
+ dashboard: {
+ //data cube's uid
+ uid: "adam_usd_commitment",
+
+ //data base filter
+ filter: [],
+
+ //bridge configuration
+ bridge: {
+ type: "d3p"
+ },
+
+ /*
+ * in case bridge is WDS this is the cube metadata.
+ * if bridge is D3P this is ignored
+ * */
+ metadata: {},
+
+ items: [
+ {
+ id: 'item-1',
+ type: 'table',
+ class: "fx-map-chart",
+ //needed if layout = injected
+ container: "#item-1",
+ config: {
+ container: "#item-1",
+ options: {
+ "columns_order": ["projecttitle", "year", "value"]
+ }
+
+ // options: {
+ // hidden_columns: ["GenderCode",
+ // "AgeRangeCode"
+ // ]
+ // }
+ },
+ // for now it takes the id, TODO: add uid as well
+ allowedFilter: [],
+ filter: [
+ {
+ "name": "filter",
+ "parameters": {
+ "rows": {
+ "flowcode": {
+ "codes": [
+ {
+ "uid": "crs_flow_types",
+ "version": "2015",
+ "codes": [ "10_12", "10_11", "10_13", "10_19"]
+ }
+ ]
+ },
+ "sectorcode": {
+ "codes": [
+ {
+ "uid": "crs_sectors",
+ "version": "2015",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2015",
+ "codes": [
+ "625" //Afghanistan
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2013
+ }
+ ]
+ }
+ },
+ "columns": ["year", "value", "projecttitle"] // DSD Order
+ }
+ }
+ ]
+ }
+
+ ]
+ }
+
+ }
+
+
+
+});
\ No newline at end of file
diff --git a/config/browse/Events.js b/config/browse/Events.js
new file mode 100644
index 00000000..73a29101
--- /dev/null
+++ b/config/browse/Events.js
@@ -0,0 +1,10 @@
+ /*global define*/
+define(function ( ) {
+
+ 'use strict';
+
+ return {
+ FILTER_ON_READY : "fx.filter.onready",
+ FILTER_ON_CHANGE : "fx.filter.onchange"
+ };
+});
diff --git a/config/browse/config-all-sector.js b/config/browse/config-all-sector.js
new file mode 100644
index 00000000..07e484b2
--- /dev/null
+++ b/config/browse/config-all-sector.js
@@ -0,0 +1,1809 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ id: 'OTHER_SECTORS',
+ filter: {
+ parentsector_code: {
+ selector: {
+ id: "dropdown",
+ config: { //Selectize configuration
+ // allowEmptyOption: true,
+ //maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-md-3",
+ cl: {
+ uid: "crs_dac",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ purposecode: {
+ selector: {
+ id: "dropdown",
+ config: {
+ maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ "uid": "crs_dac",
+ "version": "2016",
+ "level": 2,
+ "levels": 2
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ },
+ dependencies: {
+ "parentsector_code": {id: "parent", event: "select"}
+ }
+ },
+ "year-from": {
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2000],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ "year-to": {
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2014],
+ config: {
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+ dependencies: {
+ "year-from": {id: "min", event: "select"}
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ oda: {
+ selector: {
+ id: "dropdown",
+ default: ['adam_usd_commitment'],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ uid: "crs_flow_amounts",
+ version: "2016"
+ },
+ template: {
+ hideHeaderIcon: false,
+ frankie: true,
+ headerIconClassName: 'glyphicon glyphicon-info-sign',
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ }
+
+ },
+ dashboard: {
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ /** {
+ id: 'top-recipients', // TOP RECIPIENTS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["recipientname"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ colors: ['#5DA58D'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientname", "recipientcode"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE recipientcode NOT IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ "queryParameters": [
+ {"value": '298'}, {"value": '498'}, {"value": '798'}, {"value": '89'},
+ {"value": '589'}, {"value": '889'}, {"value": '189'}, {"value": '289'},
+ {"value": '389'}, {"value": '380'}, {"value": '489'}, {"value": '789'},
+ {"value": '689'}, {"value": '619'}, {"value": '679'}
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },**/
+ {
+ id: "tot-oda", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ xAxis: {
+ type: 'datetime'
+ }
+ }
+ },
+
+ filterFor: {
+ "filter_total_ODA": ['year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_ODA"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "total_oda"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA"
+ }
+ }
+ ]
+ },
+ {
+ id: "top-recipients-all-sectors", //ref [data-item=':id']
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["recipientcode"], //x axis
+ series: ["unitcode"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: true,// || default raw else fenixtool
+
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+
+ filterFor: {
+ "filter_top_10_recipients_sum": ['year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_top_10_recipients_sum"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientcode", "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE recipientcode NOT IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ "queryParameters": [
+ {"value": '298'}, {"value": '498'}, {"value": '798'}, {"value": '89'},
+ {"value": '589'}, {"value": '889'}, {"value": '189'}, {"value": '289'},
+ {"value": '389'}, {"value": '380'}, {"value": '489'}, {"value": '789'},
+ {"value": '689'}, {"value": '619'}, {"value": '679'}, {"value": 'NA'}
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA"
+ }
+ }
+ ]
+ },
+ {
+ id: "top-partners-all-sectors", //ref [data-item=':id']
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["donorcode"], //x axis
+ series: ["unitcode"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: true,// || default raw else fenixtool
+
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+
+ filterFor: {
+ "filter_top_10_partners_sum": ['year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_top_10_partners_sum"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode", "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE donorcode NOT IN (?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ "queryParameters": [
+ {"value": 'NA'}
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA"
+ }
+ }
+ ]
+ },
+ {
+ id: 'top-channel-categories', // TOP CHANNEL OF DELIVERY CATEGORIES
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["channelsubcategory_name"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#56adc3'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "channelsubcategory_code", "channelsubcategory_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: "top-sectors", //ref [data-item=':id']
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["parentsector_code"], //x axis
+ series: ["unitcode"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: true,// || default raw else fenixtool
+
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+
+ filterFor: {
+ "filter_top_10_sectors_sum": ['year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "parentsector_code",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_top_10_sectors_sum"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "parentsector_code", "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE parentsector_code NOT IN (?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ "queryParameters": [
+ {"value": 'NA'}
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA"
+ }
+ }
+ ]
+ },
+ {
+ id: 'top-subsectors', // TOP SUB SECTORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["purposecode"], //x axis and series
+ series: ["unitcode"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: true,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+
+ },
+ filterFor: {
+ "filter_top_10_subsectors_sum": ['year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "purposecode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_top_10_subsectors_sum"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "purposecode", "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE purposecode NOT IN (?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ "queryParameters": [
+ {"value": 'NA'}
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA"
+ }
+ }
+ ]
+ },
+ {
+ id: 'oda-regional', // REGIONAL DISTRIBUTION
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["unitcode"], //x axis
+ series: ["un_continent_code"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: true,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ inverted: true
+ },
+ plotOptions: {
+ series: {
+ stacking: 'percent',
+ dataLabels: {
+ enabled: true,
+ color: 'white',
+ style: {
+ fontWeight: 'normal',
+ textShadow: '0'
+ },
+ formatter: function () {
+ var percent = Math.round(this.point.percentage);
+ if (percent > 0)
+ return Math.round(this.point.percentage) + '%';
+ else
+ return this.point.percentage.toFixed(2) + '%';
+ }
+ }
+ },
+ column: {
+ minPointLength: 5
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ useHTML: true,
+ labelFormatter: function () {
+ return '' + this.name + ' (' + this.yData + ' USD Mil)
';
+ }
+ }
+ }
+ },
+ yAxis: {
+ min: 0,
+ title: {
+ text: '%',
+ align: 'high'
+ }
+ },
+ xAxis: {
+ labels: {
+ enabled: false
+ }
+ },
+ tooltip: {
+ formatter: function () {
+ var percent = Math.round(this.point.percentage);
+
+ if (percent < 1)
+ percent = this.point.percentage.toFixed(2);
+
+ return '' + this.series.name + ':' + '
' + ' ' + percent + '% ' +
+ ' (' + Highcharts.numberFormat(this.y, 2, '.', ',') + ' USD Mil)'
+ }
+ }
+ }
+ },
+ filter: { //FX-filter format
+ year: [{value: 2000, parent: 'from'}, {value: 2014, parent: 'to'}]
+ },
+
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode", "un_continent_code"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE un_continent_code<>?",
+ "queryParameters": [{"value": ''}]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ }
+ ]
+ },
+ {
+ id: 'country-map',
+ type: 'map',
+ config: {
+ geoSubject: 'gaul0',
+ colorRamp: 'GnBu', //Blues, Greens,
+ //colorRamp values: http://fenixrepo.fao.org/cdn/fenix/fenix-ui-map-datasets/colorramp.png
+
+ legendtitle: 'ODA',
+
+ fenix_ui_map: {
+
+ plugins: {
+ fullscreen: false,
+ disclaimerfao: false
+ },
+ guiController: {
+ overlay: false,
+ baselayer: false,
+ wmsLoader: false
+ },
+
+ baselayers: {
+ "cartodb": {
+ title_en: "Baselayer",
+ url: 'http://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png',
+ subdomains: 'abcd',
+ maxZoom: 19
+ }
+ },
+ labels: true,
+ boundaries: true
+ }
+ },
+
+ filter: { //FX-filter format
+ year: [{value: 2000, parent: 'from'}, {value: 2014, parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "gaul0"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["unitname"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE gaul0<>?",
+ "queryParameters": [{"value": "NA"}]
+ }
+ }
+ ]
+ }
+ /* {
+ id: "tot-oda", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ xAxis: {
+ type: 'datetime'
+ }
+ }
+ },
+
+ filterFor: {
+ "filter_total_ODA": ['year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_ODA"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "total_oda"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA"
+ }
+ }
+ ]
+ },
+ {
+ id: 'top-partners', // TOP DONORS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["donorname"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+
+
+ filter: { //FX-filter format
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorname"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },*/
+ /* {
+ id: 'top-recipients', // TOP RECIPIENTS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["recipientname"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ colors: ['#5DA58D'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientname", "recipientcode"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE recipientcode NOT IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ "queryParameters": [
+ {"value": '298'}, {"value": '498'}, {"value": '798'}, {"value": '89'},
+ {"value": '589'}, {"value": '889'}, {"value": '189'}, {"value": '289'},
+ {"value": '389'}, {"value": '380'}, {"value": '489'}, {"value": '789'},
+ {"value": '689'}, {"value": '619'}, {"value": '679'}
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ }
+ ,{
+ id: 'top-channel-categories', // TOP CHANNEL OF DELIVERY CATEGORIES
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["channelsubcategory_name"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#56adc3'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "channelsubcategory_code", "channelsubcategory_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-subsectors', // TOP SUB SECTORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["purposename"], //x axis and series
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "purposename"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'oda-regional', // REGIONAL DISTRIBUTION
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["unitcode"], //x axis
+ series: ["un_continent_code"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: true,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ inverted: true
+ },
+ plotOptions: {
+ series: {
+ stacking: 'percent',
+ dataLabels: {
+ enabled: true,
+ color: 'white',
+ style: {
+ fontWeight: 'normal',
+ textShadow: '0'
+ },
+ formatter: function () {
+ var percent = Math.round(this.point.percentage);
+ if (percent > 0)
+ return Math.round(this.point.percentage) + '%';
+ else
+ return this.point.percentage.toFixed(2) + '%';
+ }
+ }
+ },
+ column: {
+ minPointLength: 5
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ useHTML: true,
+ labelFormatter: function () {
+ return '' + this.name + ' (' + this.yData + ' USD Mil)
';
+ }
+ }
+ }
+ },
+ yAxis: {
+ min: 0,
+ title: {
+ text: '%',
+ align: 'high'
+ }
+ },
+ xAxis: {
+ labels: {
+ enabled: false
+ }
+ },
+ tooltip: {
+ formatter: function () {
+ var percent = Math.round(this.point.percentage);
+
+ if (percent < 1)
+ percent = this.point.percentage.toFixed(2);
+
+ return '' + this.series.name + ':' + '
' + ' ' + percent + '% ' +
+ ' (' + Highcharts.numberFormat(this.y, 2, '.', ',') + ' USD Mil)'
+ }
+ }
+ }
+ },
+ filter: { //FX-filter format
+ year: [{value: 2000, parent: 'from'}, {value: 2014, parent: 'to'}]
+ },
+
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode", "un_continent_code"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE un_continent_code<>?",
+ "queryParameters": [{"value": ''}]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ }
+ ]
+ },
+ {
+ id: 'country-map',
+ type: 'map',
+ config: {
+ geoSubject: 'gaul0',
+ colorRamp: 'GnBu', //Blues, Greens,
+ //colorRamp values: http://fenixrepo.fao.org/cdn/fenix/fenix-ui-map-datasets/colorramp.png
+
+ legendtitle: 'ODA',
+
+ fenix_ui_map: {
+
+ plugins: {
+ fullscreen: false,
+ disclaimerfao: false
+ },
+ guiController: {
+ overlay: false,
+ baselayer: false,
+ wmsLoader: false
+ },
+
+ baselayers: {
+ "cartodb": {
+ title_en: "Baselayer",
+ url: 'http://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png',
+ subdomains: 'abcd',
+ maxZoom: 19
+ }
+ },
+ labels: true,
+ boundaries: true
+ }
+ },
+
+ filter: { //FX-filter format
+ year: [{value: 2000, parent: 'from'}, {value: 2014, parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "gaul0"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["unitname"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE gaul0<>?",
+ "queryParameters": [{"value": "NA"}]
+ }
+ }
+ ]
+ }*/
+ ]
+ }
+ }
+
+
+
+});
\ No newline at end of file
diff --git a/config/browse/config-browse.js b/config/browse/config-browse.js
new file mode 100644
index 00000000..1ff093c8
--- /dev/null
+++ b/config/browse/config-browse.js
@@ -0,0 +1,30 @@
+/*global define*/
+define(function ( ) {
+
+ 'use strict';
+
+ return {
+ dashboard: {
+ DEFAULT_CONFIG : 'FAO_SECTOR' //OTHER_SECTORS || FAO_SECTOR
+ },
+ filter: {
+ RECIPIENT_COUNTRY: 'recipientcode',
+ RESOURCE_PARTNER: 'donorcode',
+ SECTOR: 'parentsector_code',
+ SUB_SECTOR: 'purposecode',
+ CHANNELS_SUBCATEGORY: 'channelsubcategory_code',
+ CHANNEL: 'channelcode',
+ ODA: 'oda',
+ YEAR: 'year',
+ YEAR_FROM: 'year-from',
+ YEAR_TO: 'year-to',
+ COUNTRY: 'countrycode'
+ },
+ topic: {
+ BY_COUNTRY: 'country',
+ BY_SECTOR: 'sector',
+ BY_RESOURCE_PARTNER: 'donor',
+ BY_COUNTRY_RESOURCE_PARTNER: 'country_donor'
+ }
+ };
+});
\ No newline at end of file
diff --git a/config/browse/config-by-filter-values.js b/config/browse/config-by-filter-values.js
new file mode 100644
index 00000000..58ae48d2
--- /dev/null
+++ b/config/browse/config-by-filter-values.js
@@ -0,0 +1,19 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ "sector": {
+ parentsector_code: [
+ {
+ value: "",
+ config: { path: "config-all-sector"},
+ display: { hide: ['tot-oda-sector', 'top-partners-others', 'top-recipients-others', 'top-recipients', 'top-partners'], show: ['tot-oda', 'top-sectors', 'top-recipients-all-sectors', 'top-partners-all-sectors']}
+ },
+ {value: "9999", config: {path: "config-fao-sector"}}
+ ]
+ }
+ }
+});
\ No newline at end of file
diff --git a/config/browse/config-by-topic.js b/config/browse/config-by-topic.js
new file mode 100644
index 00000000..9569330d
--- /dev/null
+++ b/config/browse/config-by-topic.js
@@ -0,0 +1,25 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ "sector": {
+ purposecode: {hide: ['tot-oda', 'top-sectors', 'top-subsectors', 'tot-oda-sector', 'top-recipients-all-sectors', 'top-partners-all-sectors'], show: ['tot-oda-subsector', 'top-recipients', 'top-partners', 'top-partners-others', 'top-recipients-others']},
+ parentsector_code: {hide: ['tot-oda', 'top-sectors', 'tot-oda-subsector', 'top-recipients-all-sectors', 'top-partners-all-sectors'], show: ['top-subsectors', 'tot-oda-sector', 'top-partners-others', 'top-recipients-others', 'top-recipients', 'top-partners']}
+ },
+ "country": {
+ purposecode: {hide: ['top-sectors', 'top-sectors-others', 'top-subsectors', 'tot-oda-sector', 'tot-oda'], show: ['tot-oda-subsector']},
+ parentsector_code: {hide: ['top-sectors', 'top-sectors-others', 'tot-oda-subsector', 'tot-oda'], show: ['top-subsectors', 'tot-oda-sector']}
+ },
+ "donor": {
+ purposecode: {hide: ['top-sectors', 'top-sectors-others', 'top-subsectors', 'tot-oda-sector', 'tot-oda'], show: ['tot-oda-subsector']},
+ parentsector_code: {hide: ['top-sectors', 'top-sectors-others', 'tot-oda-subsector', 'tot-oda'], show: ['top-subsectors', 'tot-oda-sector']}
+ },
+ "country_donor": {
+ purposecode: {hide: ['top-sectors', 'top-sectors-others', 'top-subsectors', 'tot-oda-sector', 'tot-oda'], show: ['tot-oda-subsector']},
+ parentsector_code: {hide: ['top-sectors', 'top-sectors-others', 'tot-oda-subsector', 'tot-oda'], show: ['top-subsectors', 'tot-oda-sector']}
+ }
+ }
+});
\ No newline at end of file
diff --git a/config/browse/config-development-indicators.js b/config/browse/config-development-indicators.js
new file mode 100644
index 00000000..f3974fe1
--- /dev/null
+++ b/config/browse/config-development-indicators.js
@@ -0,0 +1,67 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+
+ "country": {
+
+ uid: "adam_country_indicators",
+
+ items: [
+ {
+ id: 'indicators-1',
+ type: 'custom',
+
+ filter: { //FX-filter format
+ countrycode: ["625"] //Afghanistan
+ },
+ postProcess: [
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": ["period", "value", "indicatorcode", "source", "note", "link", "itemcode", "unitcode"]
+ }
+ },{
+ "name": "order",
+ "parameters": {
+ "indicatorcode": "ASC"
+ }
+ }]
+ }
+ ]
+ },
+ "donor": {
+
+ uid: "adam_country_indicators",
+
+ items: [
+ {
+ id: 'indicators-1',
+ type: 'custom',
+
+ filter: { //FX-filter format
+ countrycode: ["1"] //Austria
+ },
+ postProcess: [
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": ["period", "value", "indicatorcode", "source", "note", "link", "itemcode", "unitcode"]
+ }
+ },{
+ "name": "order",
+ "parameters": {
+ "indicatorcode": "ASC"
+ }
+ }]
+ }
+ ]
+
+ }
+ }
+
+
+});
\ No newline at end of file
diff --git a/config/browse/config-fao-country.js b/config/browse/config-fao-country.js
new file mode 100644
index 00000000..f7bd27b2
--- /dev/null
+++ b/config/browse/config-fao-country.js
@@ -0,0 +1,2679 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ id: 'FAO_SECTOR',
+ filter: {
+ recipientcode: {
+ selector: {
+ id: "dropdown",
+ default: ["625"],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-3",
+ cl: {
+ uid: "crs_recipients",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ parentsector_code: {
+ selector: {
+ id: "dropdown",
+ default: ["9999"],
+ config: { //Selectize configuration
+ maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-sm-3",
+ cl: {
+ uid: "crs_dac",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ purposecode: {
+ selector: {
+ id: "dropdown",
+ config: {
+ maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ "uid": "crs_dac",
+ "version": "2016",
+ "level": 2,
+ "levels": 2
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ },
+ dependencies: {
+ "parentsector_code": {id: "parent", event: "select"}
+ }
+ },
+ "year-from": {
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2000],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ "year-to": {
+
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2014],
+ config: {
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+
+ dependencies: {
+ "year-from": {id: "min", event: "select"}
+ },
+
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ oda: {
+ selector: {
+ id: "dropdown",
+ default: ['adam_usd_commitment'],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ uid: "crs_flow_amounts",
+ version: "2016"
+ },
+ template: {
+ hideHeaderIcon: false,
+ headerIconClassName: 'glyphicon glyphicon-info-sign',
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ }
+ },
+
+
+ dashboard: {
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ {
+ id: "tot-oda", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ xAxis: {
+ type: 'datetime'
+ }
+ }
+ },
+
+ filterFor: {
+ "filter_total_ODA": ['recipientcode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_ODA"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "total_oda"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA"
+ }
+ }
+ ]
+ },
+ {
+ id: "tot-oda-sector", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% Sector/Total'){
+ serie.update({
+ yAxis: 'subsector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'subsector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }
+ },
+
+ filterFor: {
+ "filter_total_country_ODA": ['recipientcode', 'year', 'oda'],
+ "filter_total_sector_country_oda": ['recipientcode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_country_oda" // RESULT OF PART 1: TOTAL ODA FOR THE COUNTRY
+ },
+ {
+ "uid": "total_sector_country_oda" // RESULT OF PART 2: TOTAL ODA FOR SECTOR IN COUNTRY
+ },
+ {
+ "uid":"percentage_ODA" // RESULT OF PART 3: PERCENTAGE CALCULATION (TOTAL ODA FOR SECTOR IN COUNTRY / TOTAL ODA FOR COUNTRY x 100)
+ }
+
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ }, // PART 4: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_country_ODA"}
+ }, // PART 1: TOTAL ODA FOR THE COUNTRY: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+
+ }, // (1ii): TOTAL ODA FOR THE COUNTRY: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA in the Country" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_country_oda"
+ }
+ }, // (1iii): TOTAL ODA FOR THE COUNTRY: Add Column
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_sector_country_oda"}
+
+ }, // PART 2: TOTAL ODA for SECTOR in COUNTRY: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+
+ }, // (2ii): TOTAL ODA for SECTOR in COUNTRY: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA in the Sector for the Country" // PART 2 FINAL INDICATOR NAME
+ },
+ "rid":{"uid":"total_sector_country_oda"}
+ }, // (2iii): TOTAL ODA for SECTOR in COUNTRY: Add Column
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_country_oda"
+ },
+ {
+ "uid": "total_sector_country_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ }, // PART 3 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( total_sector_country_oda_value / total_country_oda_value )*100"]
+
+ }
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ }, // (3ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ },
+ "rid": {
+ "uid": "percentage_with_two_values"
+ }
+ }, // (3iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "% SECTOR/TOTAL"
+ }
+ }, // (3iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% Sector/Total" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "percentage_ODA"
+ }
+ } // (3vi) PERCENTAGE CALCULATION: Add Column
+ ]
+ },
+ {
+ id: "tot-oda-subsector", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% Sub Sector/Sector'){
+ serie.update({
+ yAxis: 'subsector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'subsector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }
+ },
+
+ filterFor: {
+ "filter_total_country_sector_oda": ['recipientcode', 'year', 'oda'],
+ "filter_total_country_subsector_oda": ['recipientcode', 'purposecode', 'year', 'oda'],
+ },
+ postProcess:[
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_country_sector_oda" // RESULT OF PART 1: TOTAL ODA FOR SECTOR IN COUNTRY
+ },
+ {
+ "uid": "total_country_subsector_oda" // RESULT OF PART 2: TOTAL ODA FOR SUB SECTOR IN COUNTRY
+ },
+ {
+ "uid":"percentage_ODA" // RESULT OF PART 3: PERCENTAGE CALCULATION (TOTAL ODA FOR SECTOR IN COUNTRY / TOTAL ODA FOR COUNTRY x 100)
+ }
+
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ }, // PART 4: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":
+ {"uid":"filter_total_country_sector_oda"}
+ }, // PART 1: TOTAL ODA FOR THE SECTOR IN COUNTRY: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ }, // (1ii): TOTAL ODA FOR THE SECTOR IN COUNTRY: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA in the Sector for the Country" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_country_sector_oda"
+ }
+ }, // (1iii): TOTAL ODA FOR THE SECTOR IN COUNTRY: Add Column
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240"
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_country_subsector_oda"}
+
+ }, // PART 2: TOTAL ODA for SUBSECTOR in COUNTRY: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+
+ }, // (2ii): TOTAL ODA for SUBSECTOR in COUNTRY: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA in the Sub Sector for the Country" // PART 2 FINAL INDICATOR NAME
+ },
+ "rid":{"uid":"total_country_subsector_oda"}
+ }, // (2iii): TOTAL ODA for SUB SECTOR in COUNTRY: Add Column
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_country_sector_oda"
+ },
+ {
+ "uid": "total_country_subsector_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ }, // PART 3 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( total_country_subsector_oda_value / total_country_sector_oda_value )*100"]
+
+ }
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ }, // (3ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ },
+ "rid": {
+ "uid": "percentage_with_two_values"
+ }
+ }, // (3iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ }, // (3iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% Sub Sector/Sector" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "percentage_ODA"
+ }
+ } // (3vi) PERCENTAGE CALCULATION: Add Column
+ ]
+ },
+ {
+ id: 'top-partners', // TOP DONORS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["donorname"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ purposecode: [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ recipientcode: ["625"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorname"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-partners-others', // TOP DONORS Vs OTHER DONORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["indicator"], //x axis and series
+ series: ["unitname"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ pie: {
+ showInLegend: true
+ },
+ series: {
+ point: {
+ events: {
+ legendItemClick: function () {
+ return false; // <== returning false will cancel the default action
+ }
+ }
+ }
+ }
+ },
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+ },
+ filterFor: {
+ "filter_top_10_donors_sum": ['recipientcode', 'year', 'oda'],
+ "filter_top_all_donors_sum": ['recipientcode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "top_10_donors_sum"
+ },
+ {
+ "uid": "others"
+ }
+ ],
+ "parameters": {},
+ "rid": {
+ "uid": "union_process"
+ }
+ },
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_top_10_donors_sum"
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Top Resource Partners"
+ },
+ "rid": {
+ "uid": "top_10_donors_sum"
+ }
+ },
+ {
+ "name": "group",
+ "sid":[{"uid":"filtered_dataset"}],
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "sum of all donors"
+ },
+ "rid": {
+ "uid": "top_all_donors_sum"
+ }
+ },
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "top_all_donors_sum"
+ },
+ {
+ "uid": "top_10_donors_sum"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ]
+ ],
+ "values": []
+ },
+ "rid": {
+ "uid": "join_process_total_donors"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "join_process_total_donors"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": [
+ "1 = 1"
+ ],
+ "values": [
+ "top_all_donors_sum_value - top_10_donors_sum_value"
+ ]
+ }
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "value",
+ "unitcode"
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Other Resource Partners"
+ },
+ "rid": {
+ "uid": "others"
+ }
+ }
+ ]
+ },
+ {
+ id: 'top-channel-categories', // TOP CHANNEL OF DELIVERY CATEGORIES
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["channelsubcategory_name"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#56adc3'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ purposecode: [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ recipientcode: ["625"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "channelsubcategory_code", "channelsubcategory_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-sectors', // TOP SECTORS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["parentsector_name"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+
+ filter: { //FX-filter format
+ recipientcode: ["625"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "parentsector_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-sectors-others', // TOP SECTORS Vs OTHER SECTORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["indicator"], //x axis and series
+ series: ["unitname"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ pie: {
+ showInLegend: true
+ },
+ series: {
+ point: {
+ events: {
+ legendItemClick: function () {
+ return false; // <== returning false will cancel the default action
+ }
+ }
+ }
+ }
+ },
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+ },
+ filterFor: {
+ "filter_top_10_sectors_sum": ['recipientcode', 'year', 'oda'],
+ "filter_top_all_sectors_sum": ['recipientcode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "top_10_sectors_sum"
+ },
+ {
+ "uid": "others"
+ }
+ ],
+ "parameters": {},
+ "rid": {
+ "uid": "union_process"
+ }
+ },
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "parentsector_code",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_top_10_sectors_sum"
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "parentsector_code"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Top Sectors"
+ },
+ "rid": {
+ "uid": "top_10_sectors_sum"
+ }
+ },
+ {
+ "name": "group",
+ "sid":[{"uid":"filtered_dataset"}],
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "sum of all sectors"
+ },
+ "rid": {
+ "uid": "top_all_sectors_sum"
+ }
+ },
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "top_all_sectors_sum"
+ },
+ {
+ "uid": "top_10_sectors_sum"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ]
+ ],
+ "values": []
+ },
+ "rid": {
+ "uid": "join_process_total_sectors"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "join_process_total_sectors"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": [
+ "1 = 1"
+ ],
+ "values": [
+ "top_all_sectors_sum_value - top_10_sectors_sum_value"
+ ]
+ }
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "value",
+ "unitcode"
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Other Sectors"
+ },
+ "rid": {
+ "uid": "others"
+ }
+ }
+ ]
+ },
+ {
+ id: 'top-subsectors', // TOP SUB SECTORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["purposename"], //x axis and series
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ purposecode: [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ recipientcode: ["625"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "purposename"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'regional-map',
+ type: 'map',
+ config: {
+ geoSubject: 'gaul0',
+ colorRamp: 'GnBu', //Blues, Greens,
+ //colorRamp values: http://fenixrepo.fao.org/cdn/fenix/fenix-ui-map-datasets/colorramp.png
+
+ legendtitle: 'ODA',
+
+ fenix_ui_map: {
+
+ plugins: {
+ fullscreen: false,
+ disclaimerfao: false
+ },
+ guiController: {
+ overlay: false,
+ baselayer: false,
+ wmsLoader: false
+ },
+
+ baselayers: {
+ "cartodb": {
+ title_en: "Baselayer",
+ url: 'http://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png',
+ subdomains: 'abcd',
+ maxZoom: 19
+ }
+ },
+ labels: true,
+ boundaries: true,
+
+ zoomToCountry: [1]
+
+ //highlight service NOT WORK FOR NOW
+ //highlightCountry : [1], // GAUL Afghanistan
+ }
+ },
+
+ filter: { //FX-filter format
+ purposecode: [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ un_region_code: ["034"], // Region = 'Southern Asia'
+ year: [{value: 2000, parent: 'from'}, {value: 2014, parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "gaul0"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["unitname"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE gaul0<>?",
+ "queryParameters": [{"value": "NA"}]
+ }
+ }
+ ]//
+ }
+ ]
+ }
+ }
+ });
\ No newline at end of file
diff --git a/config/browse/config-fao-country_donor.js b/config/browse/config-fao-country_donor.js
new file mode 100644
index 00000000..75561b4a
--- /dev/null
+++ b/config/browse/config-fao-country_donor.js
@@ -0,0 +1,2829 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ id: 'FAO_SECTOR',
+ filter: {
+ recipientcode: {
+ selector: {
+ id: "dropdown",
+ default: ["625"], // afghanistan
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-3",
+ cl: {
+ uid: "crs_recipients",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ donorcode: {
+ selector: {
+ id: "dropdown",
+ default: ["1"], // Austria
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-3",
+ cl: {
+ uid: "crs_donors",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ parentsector_code: {
+ selector: {
+ id: "dropdown",
+ config: { //Selectize configuration
+ default: ["9999"],
+ maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-sm-3",
+ cl: {
+ uid: "crs_dac",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ purposecode: {
+ selector: {
+ id: "dropdown",
+ config: {
+ maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ "uid": "crs_dac",
+ "version": "2016",
+ "level": 2,
+ "levels": 2
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ },
+ dependencies: {
+ "parentsector_code": {id: "parent", event: "select"}
+ }
+ },
+ "year-from": {
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2000],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ "year-to": {
+
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2014],
+ config: {
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+
+ dependencies: {
+ "year-from": {id: "min", event: "select"}
+ },
+
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ oda: {
+ selector: {
+ id: "dropdown",
+ default: ['adam_usd_commitment'],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ uid: "crs_flow_amounts",
+ version: "2016"
+ },
+ template: {
+ hideHeaderIcon: false,
+ headerIconClassName: 'glyphicon glyphicon-info-sign',
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ }
+
+ },
+
+
+ dashboard: {
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ {
+ id: "tot-oda", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ xAxis: {
+ type: 'datetime'
+ }
+ }
+ },
+
+ filterFor: {
+ "filter_total_ODA": ['donorcode', 'recipientcode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA from Resource Partner"
+ },
+ "rid": {
+ "uid": "total_donor_oda"
+ }
+ }
+ ]
+ },
+ {
+ id: "tot-oda-sector", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% Sector/ODA'){
+ serie.update({
+ yAxis: 'sector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'sector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }
+ },
+
+ filterFor: {
+ "filter_total_donor_recipient_oda": ['donorcode', 'recipientcode', 'year', 'oda'],
+ "filter_total_donor_recipient_sector_oda": ['donorcode', 'recipientcode', 'year', 'oda'],
+
+ "filter_total_oda_dac_members_by_year": ['year', 'oda'],
+ "filter_dac_members_by_donor_year": ['recipientcode', 'year', 'oda']
+ },
+
+ postProcess: [
+
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_donor_recipient_oda" // RESULT OF PART 1: TOTAL ODA FROM DONOR TO RECIPIENT
+ },
+ {
+ "uid": "total_donor_recipient_sector_oda" // RESULT OF PART 2: TOTAL ODA FOR DONOR (ALL RECIPIENTS)
+ },
+ {
+ "uid":"percentage_ODA" // RESULT OF PART 3: PERCENTAGE CALCULATION (ODA FROM DONOR TO RECIPIENT / TOTAL ODA FROM DONOR x 100)
+ },
+ {
+ "uid":"OECD_AVG" // RESULT OF PART 4: OECD DONORS (DAC MEMBERS) AVERAGE ODA IN SELECTED SECTOR
+ }
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ }, // PART 5: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_donor_recipient_oda"
+ }
+ }, // PART 1: TOTAL ODA FROM DONOR TO RECIPIENT: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "tt"
+ }
+ }, // (1ii): TOTAL ODA FROM DONOR TO RECIPIENT: Group by
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "tt"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA from Resource Partner to Recipient Country" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_donor_recipient_oda"
+ }
+ }, // (1iii): TOTAL ODA FROM DONOR TO RECIPIENT: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_donor_recipient_sector_oda"
+ }
+ }, // PART 2: TOTAL ODA FROM DONOR TO RECIPIENT FOR SECTOR : (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+ }, // (2ii): TOTAL ODA FROM DONOR TO RECIPIENT FOR SECTOR : Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA of Sector from Resource Partner in that Recipient Country" // PART 2 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_donor_recipient_sector_oda"
+ }
+ }, // (2iii): TOTAL ODA FROM DONOR TO RECIPIENT FOR SECTOR : Add Column
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_donor_recipient_oda"
+ },
+ {
+ "uid": "total_donor_recipient_sector_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ }, // PART 3 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( total_donor_recipient_sector_oda_value / total_donor_recipient_oda_value )*100"]
+
+ }
+ }
+ }, // (3ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ },
+ "rid": {
+ "uid": "percentage_with_two_values"
+ }
+ }, // (3iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ }, // (3iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% Sector/ODA" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "percentage_ODA"
+ }
+ }, // (3vi) PERCENTAGE CALCULATION: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "donorcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_oda_dac_members_by_year"
+ }
+ }, // PART 4 OECD DONORS (DAC MEMBERS) AVERAGE ODA: (4i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode",
+ "year"
+
+
+ ],
+ "aggregations": [
+ ]
+ },
+ "rid": {
+ "uid": "sd"
+ }
+ }, // (4ii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value_count",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": 1
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value_count"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "count_dac_members"
+ }
+ },
+
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_dac_members_by_donor_year"}
+
+ }, // (4iii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"aggregated_oecd"}
+ }, // (4v): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "count_dac_members"
+ },
+ {
+ "uid": "aggregated_oecd"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ }
+ }, // (4vii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Join
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( aggregated_oecd_value / count_dac_members_value_count )"]
+ }
+ },
+ "rid": {
+ "uid": "avg_value"
+ }
+ }, // (4viii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "aggregated_oecd_unitcode"
+ ],
+ "rows": {
+ }
+ }
+ }, // (4ix): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "OECD Average of ODA in that Sector in that Recipient Country" // PART 4 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "OECD_AVG"
+ }
+ } // (4x): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ ]
+ },
+ {
+ id: "tot-oda-subsector", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% Sub Sector/Sector'){
+ serie.update({
+ yAxis: 'sector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'sector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }
+ },
+
+ filterFor: {
+
+ "filter_total_donor_recipient_subsector_oda": ['donorcode', 'recipientcode', 'purposecode', 'year', 'oda'],
+ "filter_total_donor_recipient_sector_oda": ['donorcode', 'recipientcode', 'year', 'oda'],
+
+ "filter_total_oda_dac_members_by_year": ['year', 'oda'],
+ "filter_dac_members_by_donor_year": ['recipientcode', 'purposecode', 'year', 'oda']
+ },
+
+ postProcess: [
+
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "subsector_donor_oda"
+ },
+ {
+ "uid": "sector_donor_oda"
+ },
+ {
+ "uid": "percentage_ODA"
+ },
+ {
+ "uid": "OECD_AVG"
+
+ }
+ ],
+ "parameters": {
+ }
+
+ }, // PART 5: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "74010"
+ ]
+ }
+ ]
+ }
+
+ }
+ },
+ "rid": {
+ "uid": "filter_total_donor_recipient_subsector_oda"
+ }
+ }, // PART 1: TOTAL ODA FROM DONOR TO RECIPIENT FOR SUB SECTOR: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ }, // (1ii): TOTAL ODA FROM DONOR TO RECIPIENT FOR SUB SECTOR: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA of Sub Sector from Resource Partner in that Country"
+ },
+ "rid": {
+ "uid": "subsector_donor_oda"
+ }
+ }, // (1iii): TOTAL ODA FROM DONOR TO RECIPIENT FOR SUB SECTOR: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_donor_recipient_sector_oda"
+ }
+ }, // PART 2: TOTAL ODA FROM DONOR TO RECIPIENT FOR SECTOR : (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"sector_ODA"}
+ }, // (2ii): TOTAL ODA FROM DONOR TO RECIPIENT FOR SECTOR : Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA of Sector from Resource Partner in that Country"
+ },
+ "rid": {
+ "uid": "sector_donor_oda"
+ }
+ }, // (2iii): TOTAL ODA FROM DONOR TO RECIPIENT FOR SECTOR : Add Column
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "subsector_donor_oda"
+ },
+ {
+ "uid": "sector_donor_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ }, // PART 3 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( subsector_donor_oda_value / sector_donor_oda_value )*100"]
+
+ }
+ }
+ }, // (3ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ },
+ "rid": {
+ "uid": "percentage_with_two_values"
+ }
+ }, // (3iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ }, // (3iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% Sub Sector/Sector" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "percentage_ODA"
+ }
+ }, // (3vi) PERCENTAGE CALCULATION: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "donorcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_oda_dac_members_by_year"
+ }
+ }, // PART 4 OECD DONORS (DAC MEMBERS) AVERAGE ODA: (4i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode",
+ "year"
+
+
+ ],
+ "aggregations": [
+ ]
+ },
+ "rid": {
+ "uid": "sd"
+ }
+ }, // (4ii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value_count",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": 1
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value_count"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "count_dac_members"
+ }
+ },
+
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "74010"
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_dac_members_by_donor_year"}
+
+ }, // (4iii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"aggregated_oecd"}
+ }, // (4v): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "count_dac_members"
+ },
+ {
+ "uid": "aggregated_oecd"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ }
+ }, // (4vii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Join
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( aggregated_oecd_value / count_dac_members_value_count )"]
+ }
+ },
+ "rid": {
+ "uid": "avg_value"
+ }
+ }, // (4viii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "aggregated_oecd_unitcode"
+ ],
+ "rows": {
+ }
+ }
+ }, // (4ix): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "OECD Average of ODA in that Sub Sector in that Country"
+ },
+ "rid": {
+ "uid": "OECD_AVG"
+ }
+ } // (4x): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ ]
+ },
+ {
+ id: 'top-channel-categories', // TOP CHANNEL OF DELIVERY CATEGORIES
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["channelsubcategory_name"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#56adc3'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ purposecode: ["12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ recipientcode: ["625"],
+ donorcode: ["1"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "channelsubcategory_code", "channelsubcategory_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-sectors', // TOP SECTORS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["parentsector_name"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ colors: ['#5DA58D'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ recipientcode: ["625"],
+ donorcode: ["1"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "parentsector_name", "parentsector_code"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-sectors-others', // TOP SECTORS Vs OTHER SECTORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["indicator"], //x axis and series
+ series: ["unitname"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ pie: {
+ showInLegend: true
+ },
+ series: {
+ point: {
+ events: {
+ legendItemClick: function () {
+ return false; // <== returning false will cancel the default action
+ }
+ }
+ }
+ }
+ },
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+ },
+
+ filterFor: {
+ "filter_top_10_sectors_sum": ['recipientcode', 'donorocode', 'year', 'oda'],
+ "filter_all_sectors_sum": ['recipientcode', 'donorocode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "top_10_sectors_sum"
+ // RESULT OF PART 1: TOTAL ODA for TOP 10 SECTORS
+ },
+ {
+ "uid": "others"
+ // RESULT OF PART 3: TOTAL ODA OTHERS CALCULATION (TOTAL ODA ALL SECTORS (PART 2) - TOTAL ODA FOR TOP 10 Sectors)
+ }
+ ],
+ "parameters": {},
+ "rid": {
+ "uid": "union_process"
+ }
+ },
+ // PART 4: UNION is the FINAL PART IN THE PROCESS
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "parentsector_code",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_top_10_sectors_sum"
+ }
+ },
+ // PART 1: TOTAL ODA for TOP 10 SECTORS: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "parentsector_code"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ // (1ii): TOTAL ODA for TOP 10 SECTORS: Group by
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ // (1iii): TOTAL ODA for TOP 10 SECTORS: Order by
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ // (1iv): TOTAL ODA for TOP 10 SECTORS: Limit
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ // (1vi): TOTAL ODA for TOP 10 SECTORS: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Top Sectors"
+ // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "top_10_sectors_sum"
+ }
+ },
+ // (1vii): TOTAL ODA for TOP 10 PARTNERS: Add Column
+ {
+ "name": "group",
+ "sid":[{"uid":"filtered_dataset"}],
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ // PART 2i: TOTAL ODA for ALL SECTORS: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "sum of all sectors"
+ // PART 2 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "top_all_sectors_sum"
+ }
+ },
+ // (2ii): TOTAL ODA for ALL SECTORS : Add Column
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "top_all_sectors_sum"
+ },
+ {
+ "uid": "top_10_sectors_sum"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ]
+ ],
+ "values": []
+ },
+ "rid": {
+ "uid": "join_process_total_sectors"
+ }
+ },
+ // PART 3: TOTAL ODA OTHERS CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "join_process_total_sectors"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": [
+ "1 = 1"
+ ],
+ "values": [
+ "top_all_sectors_sum_value - top_10_sectors_sum_value"
+ ]
+ }
+ }
+ },
+ // (3ii): TOTAL ODA OTHERS CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "value",
+ "unitcode"
+ ]
+ }
+ },
+ // (3iii): TOTAL ODA OTHERS CALCULATION: Filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Other Sectors"
+ // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "others"
+ }
+ }
+ // (3iv): TOTAL ODA OTHERS CALCULATION: Add Column
+ ]
+ },
+ {
+ id: 'top-subsectors', // TOP SUB SECTORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["purposename"], //x axis and series
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ purposecode: ["12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ recipientcode: ["625"],
+ donorcode: ["1"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "purposename"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ }
+ ]
+ }
+ }
+});
\ No newline at end of file
diff --git a/config/browse/config-fao-donor.js b/config/browse/config-fao-donor.js
new file mode 100644
index 00000000..c0e9e571
--- /dev/null
+++ b/config/browse/config-fao-donor.js
@@ -0,0 +1,5033 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ id: 'FAO_SECTOR',
+ filter: {
+ donorcode: {
+ selector: {
+ id: "dropdown",
+ default: ["1"], // Austria
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-3",
+ cl: {
+ uid: "crs_donors",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ parentsector_code: {
+ selector: {
+ id: "dropdown",
+ default: ["9999"],
+ config: { //Selectize configuration
+ maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-sm-3",
+ cl: {
+ uid: "crs_dac",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ purposecode: {
+ selector: {
+ id: "dropdown",
+ config: {
+ maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ "uid": "crs_dac",
+ "version": "2016",
+ "level": 2,
+ "levels": 2
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ },
+ dependencies: {
+ "parentsector_code": {id: "parent", event: "select"}
+ }
+ },
+ "year-from": {
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2000],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ "year-to": {
+
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2014],
+ config: {
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+
+ dependencies: {
+ "year-from": {id: "min", event: "select"}
+ },
+
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ oda: {
+ selector: {
+ id: "dropdown",
+ default: ['adam_usd_commitment'],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ uid: "crs_flow_amounts",
+ version: "2016"
+ },
+ template: {
+ hideHeaderIcon: false,
+ headerIconClassName: 'glyphicon glyphicon-info-sign',
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ }
+
+ },
+
+
+ dashboard: {
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ {
+ id: "tot-oda", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ xAxis: {
+ type: 'datetime'
+ }
+ }
+ },
+
+ filterFor: {
+ "filter_total_ODA": ['donorcode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_ODA"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "total_oda"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA"
+ }
+ }
+ ]
+ },
+ {
+ id: "tot-oda-sector", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% Sector/Total'){
+ serie.update({
+ yAxis: 'subsector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'subsector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }
+ },
+
+ filterFor: {
+ "filter_donor_sector_oda": ['donorcode', 'year', 'oda'],
+ "filter_total_donor_oda": ['donorcode', 'year', 'oda'],
+
+ "filter_total_oda_dac_members_by_year": ['year', 'oda'],
+ "filter_dac_members_by_donor_year": ['year', 'oda']
+ },
+
+ postProcess: [
+
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "donor_sector_oda" // RESULT OF PART 1: TOTAL ODA FROM DONOR IN SECTOR
+ },
+ {
+ "uid": "total_donor_oda" // RESULT OF PART 2: TOTAL ODA FOR DONOR (ALL SECTORS)
+ },
+ {
+ "uid":"percentage_ODA" // RESULT OF PART 3: PERCENTAGE CALCULATION (ODA FROM DONOR IN SECTOR / TOTAL ODA FROM DONOR x 100)
+ },
+ {
+ "uid":"OECD_AVG" // RESULT OF PART 4: OECD DONORS (DAC MEMBERS) AVERAGE ODA IN SELECTED SECTOR
+ }
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ }, // PART 5: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_donor_sector_oda"
+ }
+ }, // PART 1: TOTAL ODA FROM DONOR IN SECTOR: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "tt"
+ }
+ }, // (1ii): TOTAL ODA FROM DONOR IN SECTOR: Group by
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "tt"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA from Resource Partner in Sector" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "donor_sector_oda"
+ }
+ }, // (1iii): TOTAL ODA FROM DONOR IN SECTOR: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_donor_oda"
+ }
+ }, // PART 2: TOTAL ODA FOR DONOR: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+
+ }, // (2ii): TOTAL ODA FOR DONOR: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA from Resource Partner" // PART 2 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_donor_oda"
+ }
+ }, // (2iii): TOTAL ODA FOR DONOR: Add Column
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "donor_sector_oda"
+ },
+ {
+ "uid": "total_donor_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ }, // PART 3 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( donor_sector_oda_value / total_donor_oda_value )*100"]
+
+ }
+ }
+ }, // (3ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ },
+ "rid": {
+ "uid": "percentage_with_two_values"
+ }
+ }, // (3iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ }, // (3iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% Sector/Total" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "percentage_ODA"
+ }
+ }, // (3vi) PERCENTAGE CALCULATION: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_oda_dac_members_by_year"
+ }
+ }, // PART 4 OECD DONORS (DAC MEMBERS) AVERAGE ODA: (4i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"aggregated_oecd"}
+ }, // (4ii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "donorcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_dac_members_by_donor_year"}
+
+ }, // (4iii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode",
+ "year"
+ ],
+ "aggregations": [
+ ]
+ },
+ "rid": {
+ "uid": "sd"
+ }
+ }, // (4iv): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value_count",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": 1
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ }, // (4v): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value_count"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "count_dac_members"
+ }
+ }, // (4vi): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "count_dac_members"
+ },
+ {
+ "uid": "aggregated_oecd"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ }
+ }, // (4vii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Join
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( aggregated_oecd_value / count_dac_members_value_count )"]
+ }
+ },
+ "rid": {
+ "uid": "avg_value"
+ }
+ }, // (4viii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "aggregated_oecd_unitcode"
+ ],
+ "rows": {
+ }
+ }
+ }, // (4ix): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "OECD Average of ODA in Sector" // PART 4 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "OECD_AVG"
+ }
+ } // (4x): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ ]
+ },
+ {
+ id: "tot-oda-subsector", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% Sub Sector/Sector'){
+ serie.update({
+ yAxis: 'subsector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'subsector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }
+ /* config: {
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+
+ series: [{
+ name: '% Sub Sector/Total',
+ yAxis: 1,
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ }//,
+
+ // {
+ // name: 'ODA from Resource Partner in Sector'//,
+ // type: 'column'
+ // },
+ // {
+ // name: 'Total ODA from Resource Partner'//,
+ // // type: 'column'
+ //},
+ // {
+ //name: 'OECD Average of ODA in that Sector'//,
+ // type: 'column'
+ //}
+ ],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+ }
+ }
+
+ }*/
+ },
+
+ filterFor: {
+ "filter_donor_sector_oda": ['donorcode', 'year', 'oda'],
+ "filter_donor_subsector_oda": ['donorcode', 'purposecode', 'year', 'oda'],
+
+ "filter_total_oda_dac_members_by_year": ['purposecode', 'year', 'oda'],
+ "filter_dac_members_by_donor_year": ['year', 'oda']
+ },
+
+ postProcess: [
+
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "donor_sector_oda" // RESULT OF PART 1: TOTAL ODA FROM DONOR IN SECTOR
+ },
+ {
+ "uid": "donor_subsector_oda" // RESULT OF PART 2: TOTAL ODA FOR DONOR (ALL SECTORS)
+ },
+ {
+ "uid":"percentage_ODA" // RESULT OF PART 3: PERCENTAGE CALCULATION (ODA FROM DONOR IN SECTOR / TOTAL ODA FROM DONOR x 100)
+ },
+ {
+ "uid":"OECD_AVG" // RESULT OF PART 4: OECD DONORS (DAC MEMBERS) AVERAGE ODA IN SELECTED SECTOR
+ }
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ }, // PART 5: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_donor_sector_oda"
+ }
+ }, // PART 1: TOTAL ODA FROM DONOR IN SECTOR: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ }, // (1ii): TOTAL ODA FROM DONOR IN SECTOR: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA from Resource Partner in Sector" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "donor_sector_oda"
+ }
+ }, // (1iii): TOTAL ODA FROM DONOR IN SECTOR: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "60020"
+ ]
+ }
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_donor_subsector_oda"
+ }
+ }, // PART 2: TOTAL ODA FOR DONOR: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+
+ }, // (2ii): TOTAL ODA FOR DONOR: Group by
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "total_ODA"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA from Resource Partner in Sub Sector" // PART 2 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "donor_subsector_oda"
+ }
+ }, // (2iii): TOTAL ODA FOR DONOR: Add Column
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "donor_sector_oda"
+ },
+ {
+ "uid": "donor_subsector_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ }, // PART 3 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( donor_subsector_oda_value / donor_sector_oda_value )*100"]
+
+ }
+ }
+ }, // (3ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ },
+ "rid": {
+ "uid": "percentage_with_two_values"
+ }
+ }, // (3iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ }, // (3iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% Sub Sector/Sector" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "percentage_ODA"
+ }
+ }, // (3vi) PERCENTAGE CALCULATION: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "60020"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_oda_dac_members_by_year"
+ }
+ }, // PART 4 OECD DONORS (DAC MEMBERS) AVERAGE ODA: (4i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"aggregated_oecd"}
+ }, // (4ii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "donorcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_dac_members_by_donor_year"}
+
+ }, // (4iii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode",
+ "year"
+ ],
+ "aggregations": [
+ ]
+ },
+ "rid": {
+ "uid": "sd"
+ }
+ }, // (4iv): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value_count",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": 1
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ }, // (4v): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value_count"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "count_dac_members"
+ }
+ }, // (4vi): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "count_dac_members"
+ },
+ {
+ "uid": "aggregated_oecd"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ }
+ }, // (4vii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Join
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( aggregated_oecd_value / count_dac_members_value_count )"]
+ }
+ },
+ "rid": {
+ "uid": "avg_value"
+ }
+ }, // (4viii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "aggregated_oecd_unitcode"
+ ],
+ "rows": {
+ }
+ }
+ }, // (4ix): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "OECD Average of ODA in that Sub Sector" // PART 4 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "OECD_AVG"
+ }
+ } // (4x): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ ]
+ },
+ {
+ id: "tot-oda-gni", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% ODA/GNI'){
+ serie.update({
+ yAxis: 'percent-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+
+ var isVisible2 = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% OECD Average of ODA/GNI'){
+ serie.update({
+ yAxis: 'percent-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+
+ if(!isVisible && !isVisible2){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+ else {
+ if(isVisible || isVisible2) {
+ this.options.yAxis[1].title.text = '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'percent-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }/*,
+ config: {
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ series: [{
+ name: '% ODA/GNI',
+ yAxis: 1,
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ },
+ {
+ name: '% OECD Average of ODA/GNI',
+ yAxis: 1,
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ }
+ ],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }*/
+ },
+
+
+ filterFor: {
+ "filter_total_ODA": ['donorcode', 'year', 'oda'],
+ "filter_gni_donor_oda": ['donorcode', 'year'],
+
+ "filter_total_oda_dac_members_by_year": ['year', 'oda'],
+ "filter_dac_members_by_donor_year": ['year', 'oda']
+ },
+
+ postProcess: [
+
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_donor_oda"
+ },
+ {
+ "uid": "gni_donor_oda"
+ },
+ {
+ "uid":"ODA_on_GNI"
+ },
+ {
+ "uid": "oecd_oda_gni"
+ }
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_ODA"}
+ }, // PART 1: TOTAL ODA FOR DONOR (ALL SECTORS): (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA from Resource Partner"
+ },
+ "rid": {
+ "uid": "total_donor_oda"
+ }
+ },
+
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_donors_gni"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_gni_donor_oda"
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Resource Partner GNI"
+ },
+ "rid": {
+ "uid": "gni_donor_oda"
+ }
+ },
+
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "gni_donor_oda"
+ },
+ {
+ "uid": "total_donor_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process_oda_gni"}
+ },
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process_oda_gni"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( total_donor_oda_value / gni_donor_oda_value)*100"]
+ }
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% ODA/GNI"
+ },
+ "rid": {
+ "uid": "ODA_on_GNI"
+ }
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"all_subsectors_sum"}
+ },
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_donors_gni"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_GNI_sum"
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "GNI_sum"
+ }
+ },
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "GNI_sum"
+ },
+ {
+ "uid": "all_subsectors_sum"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid": {
+ "uid": "join_oecd_avg"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "join_oecd_avg"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": [
+ "1 = 1"
+ ],
+ "values": [
+ " ( all_subsectors_sum_value / GNI_sum_value)*100"
+ ]
+ }
+ }
+ },
+
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% OECD Average of ODA/GNI"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code"
+ },
+ "value": "percentage"
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode",
+ "indicator"
+ ]
+ },
+ "rid":{
+ "uid":"oecd_oda_gni"
+ }
+ }
+
+
+ ]
+ /*postProcess: [
+
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_donor_oda" // RESULT OF PART 1: TOTAL ODA FOR DONOR (ALL SECTORS)
+ },
+ {
+ "uid": "gni_donor_oda" // RESULT OF PART 2: GNI OF DONOR
+ },
+ {
+ "uid":"percentage_ODA_GNI" // RESULT OF PART 3: PERCENTAGE CALCULATION (TOTAL ODA FOR DONOR / GNI FOR DONOR x 100)
+ },
+ {
+ "uid":"percentage_OECD_AVG_GNI" // RESULT OF PART 5 (PART 4 used to calculated OECD_AVG): PERCENTAGE CALCULATION (OECD DONORS AVERAGE ODA / GNI FOR DONOR x 100)
+ }
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ }, // PART 6: UNION is the FINAL PART IN THE PROCESS
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_ODA"}
+ }, // PART 1: TOTAL ODA FOR DONOR (ALL SECTORS): (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+
+ }, // (1ii): TOTAL ODA FOR DONOR (ALL SECTORS): Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA from Resource Partner"
+ },
+ "rid": {
+ "uid": "total_donor_oda"
+ }
+ }, // (1iii): TOTAL ODA FOR DONOR (ALL SECTORS): Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_donors_gni"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_gni_donor_oda"
+ }
+ }, // PART 2: GNI OF DONOR: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ }, // (2ii): GNI OF DONOR: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Resource Partner GNI"
+ },
+ "rid": {
+ "uid": "gni_donor_oda"
+ }
+ }, // (2iii): GNI OF DONOR: Add Column
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "gni_donor_oda"
+ },
+ {
+ "uid": "total_donor_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process_oda_gni"}
+ }, // PART 3 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process_oda_gni"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( total_donor_oda_value / gni_donor_oda_value)*100"]
+ }
+ }
+ }, // (3ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ }
+ }, // (3iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ }, // (3iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% ODA/GNI"
+ },
+ "rid": {
+ "uid": "percentage_ODA_GNI"
+ }
+ }, // (3vi) PERCENTAGE CALCULATION: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_oda_dac_members_by_year"
+ }
+ }, // PART 4 OECD DONORS (DAC MEMBERS) AVERAGE ODA: (4i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"aggregated_oecd"}
+ }, // (4ii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "donorcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ /!*"parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },*!/
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_dac_members_by_donor_year"}
+
+ }, // (4iii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode",
+ "year"
+ ],
+ "aggregations": [
+ ]
+ },
+ "rid": {
+ "uid": "sd"
+ }
+ }, // (4iv): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value_count",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": 1
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ }, // (4v): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value_count"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "count_dac_members"
+ }
+ }, // (4vi): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "count_dac_members"
+ },
+ {
+ "uid": "aggregated_oecd"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ }
+ }, // (4vii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Join
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( aggregated_oecd_value / count_dac_members_value_count )"]
+ }
+ },
+ "rid": {
+ "uid": "avg_value"
+ }
+ }, // (4viii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "aggregated_oecd_unitcode"
+ ],
+ "rows": {
+ }
+ }
+ }, // (4ix): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "OECD Average of ODA" // PART 4 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "OECD_AVG"
+ }
+ }, // (4x): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "OECD_AVG"
+ },
+ {
+ "uid": "gni_donor_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process_oecd_avg_gni"}
+ }, // PART 5 PERCENTAGE CALCULATION [OECD AVG/GNI]: (5i) Join
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process_oecd_avg_gni"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( OECD_AVG_value / gni_donor_oda_value)*100"]
+ }
+ }
+ }, // (5ii) PERCENTAGE CALCULATION [OECD AVG/GNI]: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ }
+ }, // (5iii) PERCENTAGE CALCULATION [OECD AVG/GNI]: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ }, // (5iv) PERCENTAGE CALCULATION [OECD AVG/GNI]: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% OECD Average of ODA/GNI"
+ },
+ "rid": {
+ "uid": "percentage_OECD_AVG_GNI"
+ }
+ } // (5vi) PERCENTAGE CALCULATION [OECD AVG/GNI]: Add Column
+ ]*/
+ },
+ {
+ id: 'top-recipients', // TOP RECIPIENTS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["recipientname"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ colors: ['#5DA58D'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+
+ filterFor: ['donorcode', 'purposecode', 'year', 'oda'],
+
+ filter: { //FX-filter format
+ donorcode: ["1"],
+ purposecode: [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientname", "recipientcode"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE recipientcode NOT IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ "queryParameters": [
+ {"value": '298'}, {"value": '498'}, {"value": '798'}, {"value": '89'},
+ {"value": '589'}, {"value": '889'}, {"value": '189'}, {"value": '289'},
+ {"value": '389'}, {"value": '380'}, {"value": '489'}, {"value": '789'},
+ {"value": '689'}, {"value": '619'}, {"value": '679'}
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-recipients-others', // TOP RECIPIENTS Vs OTHER RECIPIENTS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["indicator"], //x axis and series
+ series: ["unitname"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#5DA58D'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ pie: {
+ showInLegend: true
+ },
+ series: {
+ point: {
+ events: {
+ legendItemClick: function () {
+ return false; // <== returning false will cancel the default action
+ }
+ }
+ }
+ }
+ },
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+ },
+ filterFor: {
+ "filter_top_10_recipients_sum": ['donorcode', 'purposecode', 'year', 'oda'],
+ "filter_all_recipients_sum": ['donorcode', 'purposecode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "top_10_recipients_sum"
+ },
+ {
+ "uid":"others"
+ }
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_top_10_recipients_sum"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE recipientcode NOT IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ "queryParameters": [
+ {"value": '298'}, {"value": '498'}, {"value": '798'}, {"value": '89'},
+ {"value": '589'}, {"value": '889'}, {"value": '189'}, {"value": '289'},
+ {"value": '389'}, {"value": '380'}, {"value": '489'}, {"value": '789'},
+ {"value": '689'}, {"value": '619'}, {"value": '679'}
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Top Recipient Countries"
+ },
+ "rid": {
+ "uid": "top_10_recipients_sum"
+ }
+ },
+ {
+ "name": "group",
+ "sid":[{"uid":"filtered_dataset"}],
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+
+ ]
+ }
+ },
+ // NEED TO VERIFY HOW TO DO THIS
+ // {
+ // "name": "select",
+ // "parameters": {
+ // "query": "WHERE recipientcode NOT IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ // "queryParameters": [
+ // {"value": '298'}, {"value": '498'}, {"value": '798'}, {"value": '89'},
+ // {"value": '589'}, {"value": '889'}, {"value": '189'}, {"value": '289'},
+ // {"value": '389'}, {"value": '380'}, {"value": '489'}, {"value": '789'},
+ // {"value": '689'}, {"value": '619'}, {"value": '679'}
+ // ]
+ // }
+ // },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "sum of all recipients"
+ },
+ "rid": {
+ "uid": "top_all_recipients_sum"
+ }
+ },
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "top_all_recipients_sum"
+ },
+ {
+ "uid": "top_10_recipients_sum"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process_total_recipients"}
+ },
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process_total_recipients"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":["top_all_recipients_sum_value - top_10_recipients_sum_value"]
+ }
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "value",
+ "unitcode"
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Other Recipients"
+ },
+ "rid": {
+ "uid": "others"
+ }
+ }
+ ]
+ },
+ {
+ id: 'top-sectors', // TOP SECTORS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["parentsector_name"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+
+ filterFor: ['donorcode', 'year', 'oda'],
+
+ filter: { //FX-filter format
+ donorcode: ["1"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "parentsector_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-sectors-others', // TOP SECTORS Vs OTHER SECTORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["indicator"], //x axis and series
+ series: ["unitname"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ pie: {
+ showInLegend: true
+ },
+ series: {
+ point: {
+ events: {
+ legendItemClick: function () {
+ return false; // <== returning false will cancel the default action
+ }
+ }
+ }
+ }
+ },
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+ },
+ filterFor: {
+ "filter_top_10_sectors_sum": ['donorcode', 'year', 'oda'],
+ "filter_top_all_sectors_sum": ['donorcode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "top_10_sectors_sum"
+ },
+ {
+ "uid": "others"
+ }
+ ],
+ "parameters": {},
+ "rid": {
+ "uid": "union_process"
+ }
+ },
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "parentsector_code",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_top_10_sectors_sum"
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "parentsector_code"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Top Sectors"
+ },
+ "rid": {
+ "uid": "top_10_sectors_sum"
+ }
+ },
+ {
+ "name": "group",
+ "sid":[{"uid":"filtered_dataset"}],
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "sum of all sectors"
+ },
+ "rid": {
+ "uid": "top_all_sectors_sum"
+ }
+ },
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "top_all_sectors_sum"
+ },
+ {
+ "uid": "top_10_sectors_sum"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ]
+ ],
+ "values": []
+ },
+ "rid": {
+ "uid": "join_process_total_sectors"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "join_process_total_sectors"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": [
+ "1 = 1"
+ ],
+ "values": [
+ "top_all_sectors_sum_value - top_10_sectors_sum_value"
+ ]
+ }
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "value",
+ "unitcode"
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Other Sectors"
+ },
+ "rid": {
+ "uid": "others"
+ }
+ }
+ ]
+ },
+ {
+ id: 'top-channel-categories', // TOP CHANNEL OF DELIVERY CATEGORIES
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["channelsubcategory_name"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#56adc3'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+
+ filterFor: ['donorcode', 'year', 'purposecode', 'oda'],
+
+ filter: { //FX-filter format
+ donorcode: ["1"],
+ purposecode: [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "channelsubcategory_code", "channelsubcategory_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-subsectors', // TOP SUB SECTORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["purposename"], //x axis and series
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+
+ },
+
+ filterFor: ['donorcode', 'year', 'oda'],
+
+ filter: { //FX-filter format
+ donorcode: ["1"],
+ purposecode: [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "purposename"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'oda-regional', // REGIONAL DISTRIBUTION
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["donorcode"], //x axis
+ series: ["un_continent_code"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: true,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ inverted: true
+ },
+ plotOptions: {
+ series: {
+ stacking: 'percent',
+ dataLabels: {
+ enabled: true,
+ color: 'white',
+ style: {
+ fontWeight: 'normal',
+ textShadow: '0'
+ },
+ formatter: function () {
+ var percent = Math.round(this.point.percentage);
+ if (percent > 0)
+ return Math.round(this.point.percentage) + '%';
+ else
+ return this.point.percentage.toFixed(2) + '%';
+ }
+ }
+ },
+ column: {
+ minPointLength: 5
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ useHTML: true,
+ labelFormatter: function () {
+ return '' + this.name + ' (' + this.yData + ' USD Mil)
';
+ }
+ }
+ }
+ },
+ yAxis: {
+ min: 0,
+ title: {
+ text: '%',
+ align: 'high'
+ }
+ },
+ xAxis: {
+ labels: {
+ enabled: false
+ }
+ },
+ tooltip: {
+ formatter: function () {
+ var percent = Math.round(this.point.percentage);
+
+ if (percent < 1)
+ percent = this.point.percentage.toFixed(2);
+
+ return '' + this.series.name + ':' + '
' + ' ' + percent + '% ' +
+ ' (' + Highcharts.numberFormat(this.y, 2, '.', ',') + ' USD Mil)'
+ }
+ }
+ }
+ },
+
+ filterFor: ['donorcode', 'year', 'purposecode', 'oda'],
+
+ filter: { //FX-filter format
+ donorcode: ["1"],
+ purposecode: [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ year: [{value: 2000, parent: 'from'}, {value: 2014, parent: 'to'}]
+ },
+
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode", "un_continent_code"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE un_continent_code<>?",
+ "queryParameters": [{"value": ''}]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ }
+ ]
+ },
+ {
+ id: 'country-map',
+ type: 'map',
+ config: {
+ geoSubject: 'gaul0',
+ colorRamp: 'GnBu', //Blues, Greens,
+ //colorRamp values: http://fenixrepo.fao.org/cdn/fenix/fenix-ui-map-datasets/colorramp.png
+
+ legendtitle: 'ODA',
+
+ fenix_ui_map: {
+
+ plugins: {
+ fullscreen: false,
+ disclaimerfao: false
+ },
+ guiController: {
+ overlay: false,
+ baselayer: false,
+ wmsLoader: false
+ },
+
+ baselayers: {
+ "cartodb": {
+ title_en: "Baselayer",
+ url: 'http://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png',
+ subdomains: 'abcd',
+ maxZoom: 19
+ }
+ },
+ labels: true,
+ boundaries: true
+ }
+ },
+
+ filterFor: ['donorcode', 'year', 'purposecode', 'oda'],
+
+ filter: { //FX-filter format
+ donorcode: ["1"],
+ purposecode: [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ year: [{value: 2000, parent: 'from'}, {value: 2014, parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "gaul0"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["unitname"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE gaul0<>?",
+ "queryParameters": [{"value": "NA"}]
+ }
+ }
+ ]
+ }
+ ]
+ }
+ }
+});
\ No newline at end of file
diff --git a/config/browse/config-fao-sector.js b/config/browse/config-fao-sector.js
new file mode 100644
index 00000000..27688ad5
--- /dev/null
+++ b/config/browse/config-fao-sector.js
@@ -0,0 +1,3014 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ id: 'FAO_SECTOR',
+ filter: {
+ parentsector_code: {
+ selector: {
+ id: "dropdown",
+ default: ["9999"],
+ config: { //Selectize configuration
+ maxItems: 1,
+ placeholder: "Please select",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-md-3",
+ cl: {
+ uid: "crs_dac",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ purposecode: {
+ selector: {
+ id: "dropdown",
+ config: {
+ maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ "uid": "crs_dac",
+ "version": "2016",
+ "level": 2,
+ "levels": 2
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ },
+ dependencies: {
+ "parentsector_code": {id: "parent", event: "select"}
+ }
+ },
+ "year-from": {
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2000],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ "year-to": {
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2014],
+ config: {
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+ dependencies: {
+ "year-from": {id: "min", event: "select"}
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ oda: {
+ selector: {
+ id: "dropdown",
+ default: ['adam_usd_commitment'],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ uid: "crs_flow_amounts",
+ version: "2016"
+ },
+ template: {
+ hideHeaderIcon: false,
+ frankie: true,
+ headerIconClassName: 'glyphicon glyphicon-info-sign',
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ }
+
+ },
+ dashboard: {
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ {
+ id: "tot-oda-sector", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% Sector/Total ODA'){
+ serie.update({
+ yAxis: 'subsector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'subsector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }
+ },
+
+ filterFor: {
+ "filter_total_sector_oda": ['year', 'oda'],
+ "filter_total_oda": ['year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_sector_oda" // RESULT OF PART 1: TOTAL ODA for the selected Sector
+ },
+ {
+ "uid": "total_oda" // RESULT OF PART 2: TOTAL ODA for ALL Sectors
+ },
+ {
+ "uid": "percentage_ODA" // RESULT OF PART 3: PERCENTAGE CALCULATION (TOTAL ODA SECTOR / TOTAL ODA for ALL Sectors x 100)
+ }
+ ],
+ "parameters": {},
+ "rid": {
+ "uid": "union_process"
+ }
+ }, // PART 4: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ rid: {uid: "filter_total_sector_oda"}
+ }, // PART 1: TOTAL ODA FOR SECTOR: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ }, // (1ii): TOTAL ODA FOR SECTOR: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA Sector" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_sector_oda"
+ }
+ }, // (1iii): TOTAL ODA FOR SECTOR: Add Column
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_oda"
+ }
+
+ }, //PART 2: TOTAL ODA for ALL Sectors: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ }, //(2ii): TOTAL ODA for ALL Sectors: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA" // PART 2 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_oda"
+ }
+ }, //(2iii): TOTAL ODA for ALL Sectors: Add Column
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_sector_oda"
+ },
+ {
+ "uid": "total_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ]
+ ],
+ "values": []
+ },
+ "rid": {
+ "uid": "join_process"
+ }
+ }, // PART 3 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "join_process"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1=1"],
+ "values": ["(total_sector_oda_value/total_oda_value)*100"]
+ }
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ }, // (3ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ },
+ "rid": {
+ "uid": "percentage_with_two_values"
+ }
+ }, // (3iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [
+ {
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }
+ ]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ }, // (3iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% Sector/Total ODA" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "percentage_ODA"
+ }
+ } // (3vi) PERCENTAGE CALCULATION: Add Column
+ ]
+ },
+ {
+ id: "tot-oda-subsector", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ $.each(this.series, function (i, serie) {
+ if(serie.name == 'Total ODA'){
+ serie.update({
+ visible: false
+ })
+ }
+ });
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% Sub Sector/Sector'){
+ serie.update({
+ yAxis: 'sector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'sector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+ }
+ },
+
+ filterFor: {
+ "filter_total_sector_oda": ['year', 'oda'],
+ "filter_total_subsector_oda": ['purposecode', 'year', 'oda'],
+ "filter_total_oda": ['year', 'oda']
+ },
+
+ postProcess:[
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_sector_oda"
+ // RESULT OF PART 1: TOTAL ODA for the selected Sector
+ },
+ {
+ "uid": "total_subsector_oda"
+ // RESULT OF PART 2: TOTAL ODA for the selected Sub Sector
+ },
+ {
+ "uid": "total_oda"
+ // RESULT OF PART 3: TOTAL ODA for ALL Sectors
+ },
+ {
+ "uid": "percentage_ODA"
+ // RESULT OF PART 4: PERCENTAGE CALCULATION (TOTAL ODA SUB SECTOR / TOTAL ODA for SECTOR x 100)
+ }
+ ],
+ "parameters": {},
+ "rid": {
+ "uid": "union_process"
+ }
+ },
+ // PART 5: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ rid: {
+ uid: "filter_total_sector_oda"
+ }
+ },
+ // PART 1: TOTAL ODA FOR SECTOR: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ // (1ii): TOTAL ODA FOR SECTOR: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA Sector"
+ // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_sector_oda"
+ }
+ },
+ // (1iii): TOTAL ODA FOR SECTOR: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "74010"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ rid: {
+ uid: "filter_total_subsector_oda"
+ }
+ },
+ // PART 2: TOTAL ODA FOR SUB SECTOR: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ // (1ii): TOTAL ODA FOR SUB SECTOR: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA Sub Sector"
+ // PART 2 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_subsector_oda"
+ }
+ },
+ // (2iii): TOTAL ODA FOR SUB SECTOR: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_oda"
+ }
+ },
+ //PART 3: TOTAL ODA for ALL Sectors: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ //(3ii): TOTAL ODA for ALL Sectors: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA"
+ // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_oda"
+ }
+ },
+ //(3iii): TOTAL ODA for ALL Sectors: Add Column
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_sector_oda"
+ },
+ {
+ "uid": "total_subsector_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ]
+ ],
+ "values": []
+ },
+ "rid": {
+ "uid": "join_process"
+ }
+ },
+ // PART 4 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "join_process"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": [
+ "1=1"
+ ],
+ "values": [
+ "(total_subsector_oda_value/total_sector_oda_value)*100"
+ ]
+ }
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ },
+ // (4ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ },
+ "rid": {
+ "uid": "percentage_with_two_values"
+ }
+ },
+ // (4iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [
+ {
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }
+ ]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ },
+ // (4iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% Sub Sector/Sector"
+ // PART 4 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "percentage_ODA"
+ }
+ }
+ // (4vi) PERCENTAGE CALCULATION: Add Column
+ ]
+ },
+ {
+ id: 'top-partners', // TOP DONORS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["donorname"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ //FAO-related sectors
+ purposecode: ["12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorname"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-partners-others', // TOP RESOURCE PARTNERS Vs OTHER RESOURCE PARTNERS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["indicator"], //x axis and series
+ series: ["unitname"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ pie: {
+ showInLegend: true
+ },
+ series: {
+ point: {
+ events: {
+ legendItemClick: function () {
+ return false; // <== returning false will cancel the default action
+ }
+ }
+ }
+ }
+ },
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+ },
+
+ filterFor: {
+ "filter_top_10_donors_sum": ['purposecode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "top_10_donors_sum"
+ // RESULT OF PART 1: TOTAL ODA for TOP 10 PARTNERS
+ },
+ {
+ "uid": "others"
+ // RESULT OF PART 3: TOTAL ODA OTHERS CALCULATION (TOTAL ODA ALL PARTNERS (PART 2) - TOTAL ODA FOR TOP 10 Partners)
+ }
+ ],
+ "parameters": {},
+ "rid": {
+ "uid": "union_process"
+ }
+ },
+ // PART 4: UNION is the FINAL PART IN THE PROCESS
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_top_10_donors_sum"
+ }
+ },
+ // PART 1: TOTAL ODA for TOP 10 PARTNERS: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ // (1ii): TOTAL ODA for TOP 10 PARTNERS: Group by
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ // (1iii): TOTAL ODA for TOP 10 PARTNERS: Order by
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ // (1iv): TOTAL ODA for TOP 10 PARTNERS: Limit
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ // (1vi): TOTAL ODA for TOP 10 PARTNERS: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Top Resource Partners"
+ // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "top_10_donors_sum"
+ }
+ },
+ // (1vii): TOTAL ODA for TOP 10 PARTNERS: Add Column
+ {
+ "name": "group",
+ "sid":[{"uid":"filtered_dataset"}],
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ // (2ii): TOTAL ODA for ALL PARTNERS: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "sum of all donors"
+ // PART 2 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "top_all_donors_sum"
+ }
+ },
+ // (2iii): TOTAL ODA for ALL PARTNERS : Add Column
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "top_all_donors_sum"
+ },
+ {
+ "uid": "top_10_donors_sum"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ]
+ ],
+ "values": []
+ },
+ "rid": {
+ "uid": "join_process_total_donors"
+ }
+ },
+ // PART 3: TOTAL ODA OTHERS CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "join_process_total_donors"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": [
+ "1 = 1"
+ ],
+ "values": [
+ "top_all_donors_sum_value - top_10_donors_sum_value"
+ ]
+ }
+ }
+ },
+ // (3ii): TOTAL ODA OTHERS CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "value",
+ "unitcode"
+ ]
+ }
+ },
+ // (3iii): TOTAL ODA OTHERS CALCULATION: Filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Other Resource Partners"
+ // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "others"
+ }
+ }
+ // (3iv): TOTAL ODA OTHERS CALCULATION: Add Column
+ ]
+ },
+ {
+ id: 'top-recipients', // TOP RECIPIENTS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["recipientname"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ colors: ['#5DA58D'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ purposecode: ["12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientname", "recipientcode"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE recipientcode NOT IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ "queryParameters": [
+ {"value": '298'}, {"value": '498'}, {"value": '798'}, {"value": '89'},
+ {"value": '589'}, {"value": '889'}, {"value": '189'}, {"value": '289'},
+ {"value": '389'}, {"value": '380'}, {"value": '489'}, {"value": '789'},
+ {"value": '689'}, {"value": '619'}, {"value": '679'}
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-recipients-others', // TOP RECIPIENTS Vs OTHER RECIPIENTS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["indicator"], //x axis and series
+ series: ["unitname"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#5DA58D'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ pie: {
+ showInLegend: true
+ },
+ series: {
+ point: {
+ events: {
+ legendItemClick: function () {
+ return false; // <== returning false will cancel the default action
+ }
+ }
+ }
+ }
+ },
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+ },
+
+ filterFor: {
+ "filter_top_10_recipients_sum": ['purposecode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "top_10_recipients_sum"
+ },
+ {
+ "uid":"others"
+ }
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "purposecode": { // FAO Related purposecodes
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_top_10_recipients_sum"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE recipientcode NOT IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ "queryParameters": [
+ {"value": '298'}, {"value": '498'}, {"value": '798'}, {"value": '89'},
+ {"value": '589'}, {"value": '889'}, {"value": '189'}, {"value": '289'},
+ {"value": '389'}, {"value": '380'}, {"value": '489'}, {"value": '789'},
+ {"value": '689'}, {"value": '619'}, {"value": '679'}
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Top Recipient Countries"
+ },
+ "rid": {
+ "uid": "top_10_recipients_sum"
+ }
+ },
+ {
+ "name": "group",
+ "sid":[{"uid":"filtered_dataset"}],
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+
+ ]
+ }
+ },
+ // NEED TO VERIFY HOW TO DO THIS
+ // {
+ // "name": "select",
+ // "parameters": {
+ // "query": "WHERE recipientcode NOT IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ // "queryParameters": [
+ // {"value": '298'}, {"value": '498'}, {"value": '798'}, {"value": '89'},
+ // {"value": '589'}, {"value": '889'}, {"value": '189'}, {"value": '289'},
+ // {"value": '389'}, {"value": '380'}, {"value": '489'}, {"value": '789'},
+ // {"value": '689'}, {"value": '619'}, {"value": '679'}
+ // ]
+ // }
+ // },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "sum of all recipients"
+ },
+ "rid": {
+ "uid": "top_all_recipients_sum"
+ }
+ },
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "top_all_recipients_sum"
+ },
+ {
+ "uid": "top_10_recipients_sum"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process_total_recipients"}
+ },
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process_total_recipients"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":["top_all_recipients_sum_value - top_10_recipients_sum_value"]
+ }
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "value",
+ "unitcode"
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Other Recipients"
+ },
+ "rid": {
+ "uid": "others"
+ }
+ }
+ ]
+ },
+ {
+ id: 'top-channel-categories', // TOP CHANNEL OF DELIVERY CATEGORIES
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["channelsubcategory_name"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#56adc3'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ purposecode: ["12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "channelsubcategory_code", "channelsubcategory_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-subsectors', // TOP SUB SECTORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["purposename"], //x axis and series
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ purposecode: ["12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "purposename"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'oda-regional', // REGIONAL DISTRIBUTION
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["unitcode"], //x axis
+ series: ["un_continent_code"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: true,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ inverted: true
+ },
+ plotOptions: {
+ series: {
+ stacking: 'percent',
+ dataLabels: {
+ enabled: true,
+ color: 'white',
+ style: {
+ fontWeight: 'normal',
+ textShadow: '0'
+ },
+ formatter: function () {
+ var percent = Math.round(this.point.percentage);
+ if (percent > 0)
+ return Math.round(this.point.percentage) + '%';
+ else
+ return this.point.percentage.toFixed(2) + '%';
+ }
+ }
+ },
+ column: {
+ minPointLength: 5
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ useHTML: true,
+ labelFormatter: function () {
+ return '' + this.name + ' (' + this.yData + ' USD Mil)
';
+ }
+ }
+ }
+ },
+ yAxis: {
+ min: 0,
+ title: {
+ text: '%',
+ align: 'high'
+ }
+ },
+ xAxis: {
+ labels: {
+ enabled: false
+ }
+ },
+ tooltip: {
+ formatter: function () {
+ var percent = Math.round(this.point.percentage);
+
+ if (percent < 1)
+ percent = this.point.percentage.toFixed(2);
+
+ return '' + this.series.name + ':' + '
' + ' ' + percent + '% ' +
+ ' (' + Highcharts.numberFormat(this.y, 2, '.', ',') + ' USD Mil)'
+ }
+ }
+ }
+ },
+ filter: { //FX-filter format
+ purposecode: ["12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ year: [{value: 2000, parent: 'from'}, {value: 2014, parent: 'to'}]
+ },
+
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode", "un_continent_code"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE un_continent_code<>?",
+ "queryParameters": [{"value": ''}]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ }
+ ]
+ },
+ {
+ id: 'country-map',
+ type: 'map',
+ config: {
+ geoSubject: 'gaul0',
+ colorRamp: 'GnBu', //Blues, Greens,
+ //colorRamp values: http://fenixrepo.fao.org/cdn/fenix/fenix-ui-map-datasets/colorramp.png
+
+ legendtitle: 'ODA',
+
+ fenix_ui_map: {
+
+ plugins: {
+ fullscreen: false,
+ disclaimerfao: false
+ },
+ guiController: {
+ overlay: false,
+ baselayer: false,
+ wmsLoader: false
+ },
+
+ baselayers: {
+ "cartodb": {
+ title_en: "Baselayer",
+ url: 'http://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png',
+ subdomains: 'abcd',
+ maxZoom: 19
+ }
+ },
+ labels: true,
+ boundaries: true
+ }
+ },
+
+ filter: { //FX-filter format
+ purposecode: ["12240",
+ "14030",
+ "14031",
+ "15170",
+ "16062",
+ "23070",
+ "31110",
+ "31120",
+ "31130",
+ "31140",
+ "31150",
+ "31161",
+ "31162",
+ "31163",
+ "31164",
+ "31165",
+ "31166",
+ "31181",
+ "31182",
+ "31191",
+ "31192",
+ "31193",
+ "31194",
+ "31195",
+ "31210",
+ "31220",
+ "31261",
+ "31281",
+ "31282",
+ "31291",
+ "31310",
+ "31320",
+ "31381",
+ "31382",
+ "31391",
+ "32161",
+ "32162",
+ "32163",
+ "32165",
+ "32267",
+ "41010",
+ "41020",
+ "41030",
+ "41040",
+ "41050",
+ "41081",
+ "41082",
+ "43040",
+ "43050",
+ "52010",
+ "72040",
+ "74010"
+ ],
+ year: [{value: 2000, parent: 'from'}, {value: 2014, parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "gaul0"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["unitname"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE gaul0<>?",
+ "queryParameters": [{"value": "NA"}]
+ }
+ }
+ ]
+ }
+ ]
+ }
+ }
+});
\ No newline at end of file
diff --git a/config/browse/config-other-country.js b/config/browse/config-other-country.js
new file mode 100644
index 00000000..b15a290d
--- /dev/null
+++ b/config/browse/config-other-country.js
@@ -0,0 +1,2276 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ id: 'OTHER_SECTORS',
+ filter: {
+ recipientcode: {
+ selector: {
+ id: "dropdown",
+ default: ["625"],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-3",
+ cl: {
+ uid: "crs_recipients",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ parentsector_code: {
+ selector: {
+ id: "dropdown",
+ // default: ["600"],
+ config: { //Selectize configuration
+ maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-sm-3",
+ cl: {
+ uid: "crs_dac",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ purposecode: {
+ selector: {
+ id: "dropdown",
+ config: {
+ maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ // codes: ["60010", "60020", "60030", "60040", "60061", "60062", "60063"],
+ "uid": "crs_dac",
+ "version": "2016",
+ "level": 2,
+ "levels": 2
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ },
+ dependencies: {
+ "parentsector_code": {id: "parent", event: "select"} //obj or array of obj
+ }
+ },
+ "year-from": {
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2000],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ "year-to": {
+
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2014],
+ config: {
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+
+ dependencies: {
+ "year-from": {id: "min", event: "select"}
+ },
+
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ oda: {
+ selector: {
+ id: "dropdown",
+ default: ['adam_usd_commitment'],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ uid: "crs_flow_amounts",
+ version: "2016"
+ },
+ template: {
+ hideHeaderIcon: false,
+ headerIconClassName: 'glyphicon glyphicon-info-sign',
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ }
+ },
+
+
+ dashboard: {
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ {
+ id: "tot-oda", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ xAxis: {
+ type: 'datetime'
+ }
+ }
+ },
+
+ filterFor: {
+ "filter_total_ODA": ['recipientcode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_ODA"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "total_oda"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA"
+ }
+ }
+ ]
+ },
+ {
+ id: "tot-oda-sector", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% Sector/Total'){
+ serie.update({
+ yAxis: 'subsector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'subsector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }
+ },
+
+ filterFor: {
+ "filter_total_country_ODA": ['recipientcode', 'year', 'oda'],
+ "filter_total_sector_country_oda": ['recipientcode', 'parentsector_code', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_country_oda" // RESULT OF PART 1: TOTAL ODA FOR THE COUNTRY
+ },
+ {
+ "uid": "total_sector_country_oda" // RESULT OF PART 2: TOTAL ODA FOR SECTOR IN COUNTRY
+ },
+ {
+ "uid":"percentage_ODA" // RESULT OF PART 3: PERCENTAGE CALCULATION (TOTAL ODA FOR SECTOR IN COUNTRY / TOTAL ODA FOR COUNTRY x 100)
+ }
+
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ }, // PART 4: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_country_ODA"}
+ }, // PART 1: TOTAL ODA FOR THE COUNTRY: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+
+ }, // (1ii): TOTAL ODA FOR THE COUNTRY: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA in the Country" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_country_oda"
+ }
+ }, // (1iii): TOTAL ODA FOR THE COUNTRY: Add Column
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_sector_country_oda"}
+
+ }, // PART 2: TOTAL ODA for SECTOR in COUNTRY: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+
+ }, // (2ii): TOTAL ODA for SECTOR in COUNTRY: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA in the Sector for the Country" // PART 2 FINAL INDICATOR NAME
+ },
+ "rid":{"uid":"total_sector_country_oda"}
+ }, // (2iii): TOTAL ODA for SECTOR in COUNTRY: Add Column
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_country_oda"
+ },
+ {
+ "uid": "total_sector_country_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ }, // PART 3 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( total_sector_country_oda_value / total_country_oda_value )*100"]
+
+ }
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ }, // (3ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ },
+ "rid": {
+ "uid": "percentage_with_two_values"
+ }
+ }, // (3iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "% SECTOR/TOTAL"
+ }
+ }, // (3iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% Sector/Total" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "percentage_ODA"
+ }
+ } // (3vi) PERCENTAGE CALCULATION: Add Column
+ ]
+ },
+ {
+ id: "tot-oda-subsector", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% Sub Sector/Sector'){
+ serie.update({
+ yAxis: 'subsector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'subsector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }
+ },
+
+ //filterFor: ['un_region_code', 'parentsector_code', 'purposecode', 'year', 'oda'],
+
+ filterFor: {
+ "filter_total_country_sector_oda": ['recipientcode', 'parentsector_code', 'year', 'oda'],
+ "filter_total_country_subsector_oda": ['recipientcode', 'parentsector_code', 'purposecode', 'year', 'oda'],
+ },
+ postProcess:[
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_country_sector_oda" // RESULT OF PART 1: TOTAL ODA FOR SECTOR IN COUNTRY
+ },
+ {
+ "uid": "total_country_subsector_oda" // RESULT OF PART 2: TOTAL ODA FOR SUB SECTOR IN COUNTRY
+ },
+ {
+ "uid":"percentage_ODA" // RESULT OF PART 3: PERCENTAGE CALCULATION (TOTAL ODA FOR SECTOR IN COUNTRY / TOTAL ODA FOR COUNTRY x 100)
+ }
+
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ }, // PART 4: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":
+ {"uid":"filter_total_country_sector_oda"}
+ }, // PART 1: TOTAL ODA FOR THE SECTOR IN COUNTRY: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ }, // (1ii): TOTAL ODA FOR THE SECTOR IN COUNTRY: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA in the Sector for the Country" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_country_sector_oda"
+ }
+ }, // (1iii): TOTAL ODA FOR THE SECTOR IN COUNTRY: Add Column
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "60020"
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_country_subsector_oda"}
+
+ }, // PART 2: TOTAL ODA for SUBSECTOR in COUNTRY: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+
+ }, // (2ii): TOTAL ODA for SUBSECTOR in COUNTRY: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA in the Sub Sector for the Country" // PART 2 FINAL INDICATOR NAME
+ },
+ "rid":{"uid":"total_country_subsector_oda"}
+ }, // (2iii): TOTAL ODA for SUB SECTOR in COUNTRY: Add Column
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_country_sector_oda"
+ },
+ {
+ "uid": "total_country_subsector_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ }, // PART 3 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( total_country_subsector_oda_value / total_country_sector_oda_value )*100"]
+
+ }
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ }, // (3ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ },
+ "rid": {
+ "uid": "percentage_with_two_values"
+ }
+ }, // (3iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ }, // (3iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% Sub Sector/Sector" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "percentage_ODA"
+ }
+ } // (3vi) PERCENTAGE CALCULATION: Add Column
+ ]
+ },
+ {
+ id: 'top-partners', // TOP DONORS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["donorname"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ parentsector_code: ["600"],
+ recipientcode: ["625"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorname"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-partners-others', // TOP DONORS Vs OTHER DONORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["indicator"], //x axis and series
+ series: ["unitname"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ pie: {
+ showInLegend: true
+ },
+ series: {
+ point: {
+ events: {
+ legendItemClick: function () {
+ return false; // <== returning false will cancel the default action
+ }
+ }
+ }
+ }
+ },
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+ },
+ filterFor: {
+ "filter_top_10_donors_sum": ['parentsector_code', 'recipientcode', 'year', 'oda'],
+ "filter_top_all_donors_sum": ['parentsector_code', 'recipientcode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "top_10_donors_sum"
+ },
+ {
+ "uid": "others"
+ }
+ ],
+ "parameters": {},
+ "rid": {
+ "uid": "union_process"
+ }
+ },
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_top_10_donors_sum"
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Top Resource Partners"
+ },
+ "rid": {
+ "uid": "top_10_donors_sum"
+ }
+ },
+ {
+ "name": "group",
+ "sid":[{"uid":"filtered_dataset"}],
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "sum of all donors"
+ },
+ "rid": {
+ "uid": "top_all_donors_sum"
+ }
+ },
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "top_all_donors_sum"
+ },
+ {
+ "uid": "top_10_donors_sum"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ]
+ ],
+ "values": []
+ },
+ "rid": {
+ "uid": "join_process_total_donors"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "join_process_total_donors"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": [
+ "1 = 1"
+ ],
+ "values": [
+ "top_all_donors_sum_value - top_10_donors_sum_value"
+ ]
+ }
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "value",
+ "unitcode"
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Other Resource Partners"
+ },
+ "rid": {
+ "uid": "others"
+ }
+ }
+ ]
+ },
+ {
+ id: 'top-channel-categories', // TOP CHANNEL OF DELIVERY CATEGORIES
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["channelsubcategory_name"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#56adc3'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ parentsector_code: ["600"],
+ recipientcode: ["625"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "channelsubcategory_code", "channelsubcategory_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-sectors', // TOP SECTORS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["parentsector_name"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+
+ filter: { //FX-filter format
+ recipientcode: ["625"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "parentsector_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-sectors-others', // TOP SECTORS Vs OTHER SECTORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["indicator"], //x axis and series
+ series: ["unitname"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ pie: {
+ showInLegend: true
+ },
+ series: {
+ point: {
+ events: {
+ legendItemClick: function () {
+ return false; // <== returning false will cancel the default action
+ }
+ }
+ }
+ }
+ },
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+ },
+ filterFor: {
+ "filter_top_10_sectors_sum": ['recipientcode', 'year', 'oda'],
+ "filter_top_all_sectors_sum": ['recipientcode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "top_10_sectors_sum"
+ },
+ {
+ "uid": "others"
+ }
+ ],
+ "parameters": {},
+ "rid": {
+ "uid": "union_process"
+ }
+ },
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "parentsector_code",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_top_10_sectors_sum"
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "parentsector_code"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Top Sectors"
+ },
+ "rid": {
+ "uid": "top_10_sectors_sum"
+ }
+ },
+ {
+ "name": "group",
+ "sid":[{"uid":"filtered_dataset"}],
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "sum of all sectors"
+ },
+ "rid": {
+ "uid": "top_all_sectors_sum"
+ }
+ },
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "top_all_sectors_sum"
+ },
+ {
+ "uid": "top_10_sectors_sum"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ]
+ ],
+ "values": []
+ },
+ "rid": {
+ "uid": "join_process_total_sectors"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "join_process_total_sectors"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": [
+ "1 = 1"
+ ],
+ "values": [
+ "top_all_sectors_sum_value - top_10_sectors_sum_value"
+ ]
+ }
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "value",
+ "unitcode"
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Other Sectors"
+ },
+ "rid": {
+ "uid": "others"
+ }
+ }
+ ]
+ },
+ {
+ id: 'top-subsectors', // TOP SUB SECTORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["purposename"], //x axis and series
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ parentsector_code: ["600"],
+ recipientcode: ["625"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "purposename"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'regional-map',
+ type: 'map',
+ config: {
+ geoSubject: 'gaul0',
+ colorRamp: 'GnBu', //Blues, Greens,
+ //colorRamp values: http://fenixrepo.fao.org/cdn/fenix/fenix-ui-map-datasets/colorramp.png
+
+ legendtitle: 'ODA',
+
+ fenix_ui_map: {
+
+ plugins: {
+ fullscreen: false,
+ disclaimerfao: false
+ },
+ guiController: {
+ overlay: false,
+ baselayer: false,
+ wmsLoader: false
+ },
+
+ baselayers: {
+ "cartodb": {
+ title_en: "Baselayer",
+ url: 'http://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png',
+ subdomains: 'abcd',
+ maxZoom: 19
+ }
+ },
+ labels: true,
+ boundaries: true,
+
+ zoomToCountry: [1],
+
+ //highlight service NOT WORK FOR NOW
+ //highlightCountry : [1], // GAUL Afghanistan
+ }
+ },
+
+
+ filterFor: ['un_region_code', 'parentsector_code', 'purposecode', 'year', 'oda'],
+
+ filter: { //FX-filter format
+ un_region_code: ["034"], // Region = 'Southern Asia'
+ year: [{value: 2000, parent: 'from'}, {value: 2014, parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "gaul0"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["unitname"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE gaul0<>?",
+ "queryParameters": [{"value": "NA"}]
+ }
+ }
+ ]//
+ }
+ ]
+ }
+ }
+ });
\ No newline at end of file
diff --git a/config/browse/config-other-country_donor.js b/config/browse/config-other-country_donor.js
new file mode 100644
index 00000000..59e592e2
--- /dev/null
+++ b/config/browse/config-other-country_donor.js
@@ -0,0 +1,2436 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ id: 'OTHER_SECTORS',
+ filter: {
+ recipientcode: {
+ selector: {
+ id: "dropdown",
+ default: ["625"], // afghanistan
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-3",
+ cl: {
+ uid: "crs_recipients",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ donorcode: {
+ selector: {
+ id: "dropdown",
+ default: ["1"], // Austria
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-3",
+ cl: {
+ uid: "crs_donors",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ parentsector_code: {
+ selector: {
+ id: "dropdown",
+ config: { //Selectize configuration
+ maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-sm-3",
+ cl: {
+ uid: "crs_dac",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ purposecode: {
+ selector: {
+ id: "dropdown",
+ config: {
+ maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ // codes: ["60010", "60020", "60030", "60040", "60061", "60062", "60063"],
+ "uid": "crs_dac",
+ "version": "2016",
+ "level": 2,
+ "levels": 2
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ },
+ dependencies: {
+ "parentsector_code": {id: "parent", event: "select"} //obj or array of obj
+ }
+ },
+ "year-from": {
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2000],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ "year-to": {
+
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2014],
+ config: {
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+
+ dependencies: {
+ "year-from": {id: "min", event: "select"}
+ },
+
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ oda: {
+ selector: {
+ id: "dropdown",
+ default: ['adam_usd_commitment'],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ uid: "crs_flow_amounts",
+ version: "2016"
+ },
+ template: {
+ hideHeaderIcon: false,
+ headerIconClassName: 'glyphicon glyphicon-info-sign',
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ }
+
+ },
+
+
+ dashboard: {
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ {
+ id: "tot-oda", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ xAxis: {
+ type: 'datetime'
+ }
+ }
+ },
+
+ filterFor: {
+ "filter_total_ODA": ['donorcode', 'recipientcode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA from Resource Partner"
+ },
+ "rid": {
+ "uid": "total_donor_oda"
+ }
+ }
+ ]
+ },
+ {
+ id: "tot-oda-sector", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% Sector/ODA'){
+ serie.update({
+ yAxis: 'sector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'sector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }
+ },
+
+ filterFor: {
+ "filter_total_donor_recipient_oda": ['donorcode', 'recipientcode', 'year', 'oda'],
+ "filter_total_donor_recipient_sector_oda": ['donorcode', 'recipientcode', 'parentsector_code', 'year', 'oda'],
+
+ "filter_total_oda_dac_members_by_year": ['parentsector_code', 'year', 'oda'],
+ "filter_dac_members_by_donor_year": ['recipientcode', 'parentsector_code', 'year', 'oda']
+ },
+
+ postProcess: [
+
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_donor_recipient_oda" // RESULT OF PART 1: TOTAL ODA FROM DONOR TO RECIPIENT
+ },
+ {
+ "uid": "total_donor_recipient_sector_oda" // RESULT OF PART 2: TOTAL ODA FOR DONOR (ALL RECIPIENTS)
+ },
+ {
+ "uid":"percentage_ODA" // RESULT OF PART 3: PERCENTAGE CALCULATION (ODA FROM DONOR TO RECIPIENT / TOTAL ODA FROM DONOR x 100)
+ },
+ {
+ "uid":"OECD_AVG" // RESULT OF PART 4: OECD DONORS (DAC MEMBERS) AVERAGE ODA IN SELECTED SECTOR
+ }
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ }, // PART 5: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_donor_recipient_oda"
+ }
+ }, // PART 1: TOTAL ODA FROM DONOR TO RECIPIENT: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "tt"
+ }
+ }, // (1ii): TOTAL ODA FROM DONOR TO RECIPIENT: Group by
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "tt"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA from Resource Partner to Recipient Country" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_donor_recipient_oda"
+ }
+ }, // (1iii): TOTAL ODA FROM DONOR TO RECIPIENT: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "700" // Humanitarian aid
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_donor_recipient_sector_oda"
+ }
+ }, // PART 2: TOTAL ODA FROM DONOR TO RECIPIENT FOR SECTOR : (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+ }, // (2ii): TOTAL ODA FROM DONOR TO RECIPIENT FOR SECTOR : Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA of Sector from Resource Partner in that Recipient Country" // PART 2 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_donor_recipient_sector_oda"
+ }
+ }, // (2iii): TOTAL ODA FROM DONOR TO RECIPIENT FOR SECTOR : Add Column
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_donor_recipient_oda"
+ },
+ {
+ "uid": "total_donor_recipient_sector_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ }, // PART 3 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( total_donor_recipient_sector_oda_value / total_donor_recipient_oda_value )*100"]
+
+ }
+ }
+ }, // (3ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ },
+ "rid": {
+ "uid": "percentage_with_two_values"
+ }
+ }, // (3iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ }, // (3iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% Sector/ODA" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "percentage_ODA"
+ }
+ }, // (3vi) PERCENTAGE CALCULATION: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "donorcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "700" // Humanitarian aid
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_oda_dac_members_by_year"
+ }
+ }, // PART 4 OECD DONORS (DAC MEMBERS) AVERAGE ODA: (4i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode",
+ "year"
+
+
+ ],
+ "aggregations": [
+ ]
+ },
+ "rid": {
+ "uid": "sd"
+ }
+ }, // (4ii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value_count",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": 1
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value_count"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "count_dac_members"
+ }
+ },
+
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "700" // Humanitarian aid
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_dac_members_by_donor_year"}
+
+ }, // (4iii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"aggregated_oecd"}
+ }, // (4v): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "count_dac_members"
+ },
+ {
+ "uid": "aggregated_oecd"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ }
+ }, // (4vii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Join
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( aggregated_oecd_value / count_dac_members_value_count )"]
+ }
+ },
+ "rid": {
+ "uid": "avg_value"
+ }
+ }, // (4viii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "aggregated_oecd_unitcode"
+ ],
+ "rows": {
+ }
+ }
+ }, // (4ix): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "OECD Average of ODA in that Sector in that Recipient Country" // PART 4 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "OECD_AVG"
+ }
+ } // (4x): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ ]
+ },
+ {
+ id: "tot-oda-subsector", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% Sub Sector/Sector'){
+ serie.update({
+ yAxis: 'sector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'sector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }
+ },
+
+ filterFor: {
+
+ "filter_total_donor_recipient_subsector_oda": ['donorcode', 'recipientcode', 'parentsector_code', 'purposecode', 'year', 'oda'],
+ "filter_total_donor_recipient_sector_oda": ['donorcode', 'recipientcode', 'parentsector_code', 'year', 'oda'],
+
+ "filter_total_oda_dac_members_by_year": ['parentsector_code', 'year', 'oda'],
+ "filter_dac_members_by_donor_year": ['recipientcode', 'parentsector_code', 'purposecode', 'year', 'oda']
+ },
+
+ postProcess: [
+
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "subsector_donor_oda"
+ },
+ {
+ "uid": "sector_donor_oda"
+ },
+ {
+ "uid": "percentage_ODA"
+ },
+ {
+ "uid": "OECD_AVG"
+
+ }
+ ],
+ "parameters": {
+ }
+
+ }, // PART 5: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "700" // Humanitarian aid
+ ]
+ }
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "72010"
+ ]
+ }
+ ]
+ }
+
+ }
+ },
+ "rid": {
+ "uid": "filter_total_donor_recipient_subsector_oda"
+ }
+ }, // PART 1: TOTAL ODA FROM DONOR TO RECIPIENT FOR SUB SECTOR: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ }, // (1ii): TOTAL ODA FROM DONOR TO RECIPIENT FOR SUB SECTOR: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA of Sub Sector from Resource Partner in that Country"
+ },
+ "rid": {
+ "uid": "subsector_donor_oda"
+ }
+ }, // (1iii): TOTAL ODA FROM DONOR TO RECIPIENT FOR SUB SECTOR: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "700" // Humanitarian aid
+ ]
+ }
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_donor_recipient_sector_oda"
+ }
+ }, // PART 2: TOTAL ODA FROM DONOR TO RECIPIENT FOR SECTOR : (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"sector_ODA"}
+ }, // (2ii): TOTAL ODA FROM DONOR TO RECIPIENT FOR SECTOR : Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA of Sector from Resource Partner in that Country"
+ },
+ "rid": {
+ "uid": "sector_donor_oda"
+ }
+ }, // (2iii): TOTAL ODA FROM DONOR TO RECIPIENT FOR SECTOR : Add Column
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "subsector_donor_oda"
+ },
+ {
+ "uid": "sector_donor_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ }, // PART 3 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( subsector_donor_oda_value / sector_donor_oda_value )*100"]
+
+ }
+ }
+ }, // (3ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ },
+ "rid": {
+ "uid": "percentage_with_two_values"
+ }
+ }, // (3iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ }, // (3iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% Sub Sector/Sector" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "percentage_ODA"
+ }
+ }, // (3vi) PERCENTAGE CALCULATION: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "donorcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "700" // Humanitarian aid
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_oda_dac_members_by_year"
+ }
+ }, // PART 4 OECD DONORS (DAC MEMBERS) AVERAGE ODA: (4i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode",
+ "year"
+
+
+ ],
+ "aggregations": [
+ ]
+ },
+ "rid": {
+ "uid": "sd"
+ }
+ }, // (4ii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value_count",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": 1
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value_count"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "count_dac_members"
+ }
+ },
+
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "700" // Humanitarian aid
+ ]
+ }
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "72010"
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_dac_members_by_donor_year"}
+
+ }, // (4iii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"aggregated_oecd"}
+ }, // (4v): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "count_dac_members"
+ },
+ {
+ "uid": "aggregated_oecd"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ }
+ }, // (4vii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Join
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( aggregated_oecd_value / count_dac_members_value_count )"]
+ }
+ },
+ "rid": {
+ "uid": "avg_value"
+ }
+ }, // (4viii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "aggregated_oecd_unitcode"
+ ],
+ "rows": {
+ }
+ }
+ }, // (4ix): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "OECD Average of ODA in that Sub Sector in that Country"
+ },
+ "rid": {
+ "uid": "OECD_AVG"
+ }
+ } // (4x): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ ]
+ },
+ {
+ id: 'top-channel-categories', // TOP CHANNEL OF DELIVERY CATEGORIES
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["channelsubcategory_name"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#56adc3'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ recipientcode: ["625"],
+ donorcode: ["1"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "channelsubcategory_code", "channelsubcategory_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-sectors', // TOP SECTORS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["parentsector_name"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ colors: ['#5DA58D'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ recipientcode: ["625"],
+ donorcode: ["1"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "parentsector_name", "parentsector_code"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-sectors-others', // TOP SECTORS Vs OTHER SECTORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["indicator"], //x axis and series
+ series: ["unitname"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ pie: {
+ showInLegend: true
+ },
+ series: {
+ point: {
+ events: {
+ legendItemClick: function () {
+ return false; // <== returning false will cancel the default action
+ }
+ }
+ }
+ }
+ },
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+ },
+
+ filterFor: {
+ "filter_top_10_sectors_sum": ['recipientcode', 'donorocode', 'year', 'oda'],
+ "filter_all_sectors_sum": ['recipientcode', 'donorocode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "top_10_sectors_sum"
+ // RESULT OF PART 1: TOTAL ODA for TOP 10 SECTORS
+ },
+ {
+ "uid": "others"
+ // RESULT OF PART 3: TOTAL ODA OTHERS CALCULATION (TOTAL ODA ALL SECTORS (PART 2) - TOTAL ODA FOR TOP 10 Sectors)
+ }
+ ],
+ "parameters": {},
+ "rid": {
+ "uid": "union_process"
+ }
+ },
+ // PART 4: UNION is the FINAL PART IN THE PROCESS
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "parentsector_code",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "625"
+ ]
+ }
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_top_10_sectors_sum"
+ }
+ },
+ // PART 1: TOTAL ODA for TOP 10 SECTORS: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "parentsector_code"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ // (1ii): TOTAL ODA for TOP 10 SECTORS: Group by
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ // (1iii): TOTAL ODA for TOP 10 SECTORS: Order by
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ // (1iv): TOTAL ODA for TOP 10 SECTORS: Limit
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ // (1vi): TOTAL ODA for TOP 10 SECTORS: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Top Sectors"
+ // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "top_10_sectors_sum"
+ }
+ },
+ // (1vii): TOTAL ODA for TOP 10 PARTNERS: Add Column
+ {
+ "name": "group",
+ "sid":[{"uid":"filtered_dataset"}],
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ // PART 2i: TOTAL ODA for ALL SECTORS: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "sum of all sectors"
+ // PART 2 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "top_all_sectors_sum"
+ }
+ },
+ // (2ii): TOTAL ODA for ALL SECTORS : Add Column
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "top_all_sectors_sum"
+ },
+ {
+ "uid": "top_10_sectors_sum"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ]
+ ],
+ "values": []
+ },
+ "rid": {
+ "uid": "join_process_total_sectors"
+ }
+ },
+ // PART 3: TOTAL ODA OTHERS CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "join_process_total_sectors"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": [
+ "1 = 1"
+ ],
+ "values": [
+ "top_all_sectors_sum_value - top_10_sectors_sum_value"
+ ]
+ }
+ }
+ },
+ // (3ii): TOTAL ODA OTHERS CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "value",
+ "unitcode"
+ ]
+ }
+ },
+ // (3iii): TOTAL ODA OTHERS CALCULATION: Filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Other Sectors"
+ // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "others"
+ }
+ }
+ // (3iv): TOTAL ODA OTHERS CALCULATION: Add Column
+ ]
+ },
+ {
+ id: 'top-subsectors', // TOP SUB SECTORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["purposename"], //x axis and series
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ recipientcode: ["625"],
+ donorcode: ["1"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "purposename"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ }
+ ]
+ }
+ }
+ });
\ No newline at end of file
diff --git a/config/browse/config-other-donor.js b/config/browse/config-other-donor.js
new file mode 100644
index 00000000..f12a9c97
--- /dev/null
+++ b/config/browse/config-other-donor.js
@@ -0,0 +1,4414 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ id: 'OTHER_SECTORS',
+ filter: {
+ donorcode: {
+ selector: {
+ id: "dropdown",
+ default: ["1"], // Austria
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-3",
+ cl: {
+ uid: "crs_donors",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ parentsector_code: {
+ selector: {
+ id: "dropdown",
+ config: { //Selectize configuration
+ maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-sm-3",
+ cl: {
+ uid: "crs_dac",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ purposecode: {
+ selector: {
+ id: "dropdown",
+ config: {
+ maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ "uid": "crs_dac",
+ "version": "2016",
+ "level": 2,
+ "levels": 2
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ },
+ dependencies: {
+ "parentsector_code": {id: "parent", event: "select"} //obj or array of obj
+ }
+ },
+ "year-from": {
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2000],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ "year-to": {
+
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2014],
+ config: {
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+
+ dependencies: {
+ "year-from": {id: "min", event: "select"}
+ },
+
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ oda: {
+ selector: {
+ id: "dropdown",
+ default: ['adam_usd_commitment'],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ uid: "crs_flow_amounts",
+ version: "2016"
+ },
+ template: {
+ hideHeaderIcon: false,
+ headerIconClassName: 'glyphicon glyphicon-info-sign',
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ }
+
+ },
+
+
+ dashboard: {
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ {
+ id: "tot-oda", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ xAxis: {
+ type: 'datetime'
+ }
+ }
+ },
+
+ filterFor: {
+ "filter_total_ODA": ['donorcode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_ODA"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "total_oda"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA"
+ }
+ }
+ ]
+ },
+ {
+ id: "tot-oda-sector", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% Sector/Total'){
+ serie.update({
+ yAxis: 'subsector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'subsector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }
+ },
+
+ filterFor: {
+ "filter_donor_sector_oda": ['donorcode', 'parentsector_code', 'year', 'oda'],
+ "filter_total_donor_oda": ['donorcode', 'year', 'oda'],
+
+ "filter_total_oda_dac_members_by_year": ['parentsector_code', 'year', 'oda'],
+ "filter_dac_members_by_donor_year": ['parentsector_code', 'year', 'oda']
+ },
+
+ postProcess: [
+
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "donor_sector_oda" // RESULT OF PART 1: TOTAL ODA FROM DONOR IN SECTOR
+ },
+ {
+ "uid": "total_donor_oda" // RESULT OF PART 2: TOTAL ODA FOR DONOR (ALL SECTORS)
+ },
+ {
+ "uid":"percentage_ODA" // RESULT OF PART 3: PERCENTAGE CALCULATION (ODA FROM DONOR IN SECTOR / TOTAL ODA FROM DONOR x 100)
+ },
+ {
+ "uid":"OECD_AVG" // RESULT OF PART 4: OECD DONORS (DAC MEMBERS) AVERAGE ODA IN SELECTED SECTOR
+ }
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ }, // PART 5: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_donor_sector_oda"
+ }
+ }, // PART 1: TOTAL ODA FROM DONOR IN SECTOR: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "tt"
+ }
+ }, // (1ii): TOTAL ODA FROM DONOR IN SECTOR: Group by
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "tt"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA from Resource Partner in Sector" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "donor_sector_oda"
+ }
+ }, // (1iii): TOTAL ODA FROM DONOR IN SECTOR: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_donor_oda"
+ }
+ }, // PART 2: TOTAL ODA FOR DONOR: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+
+ }, // (2ii): TOTAL ODA FOR DONOR: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA from Resource Partner" // PART 2 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_donor_oda"
+ }
+ }, // (2iii): TOTAL ODA FOR DONOR: Add Column
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "donor_sector_oda"
+ },
+ {
+ "uid": "total_donor_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ }, // PART 3 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( donor_sector_oda_value / total_donor_oda_value )*100"]
+
+ }
+ }
+ }, // (3ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ },
+ "rid": {
+ "uid": "percentage_with_two_values"
+ }
+ }, // (3iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ }, // (3iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% Sector/Total" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "percentage_ODA"
+ }
+ }, // (3vi) PERCENTAGE CALCULATION: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_oda_dac_members_by_year"
+ }
+ }, // PART 4 OECD DONORS (DAC MEMBERS) AVERAGE ODA: (4i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"aggregated_oecd"}
+ }, // (4ii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "donorcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_dac_members_by_donor_year"}
+
+ }, // (4iii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode",
+ "year"
+ ],
+ "aggregations": [
+ ]
+ },
+ "rid": {
+ "uid": "sd"
+ }
+ }, // (4iv): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value_count",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": 1
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ }, // (4v): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value_count"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "count_dac_members"
+ }
+ }, // (4vi): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "count_dac_members"
+ },
+ {
+ "uid": "aggregated_oecd"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ }
+ }, // (4vii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Join
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( aggregated_oecd_value / count_dac_members_value_count )"]
+ }
+ },
+ "rid": {
+ "uid": "avg_value"
+ }
+ }, // (4viii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "aggregated_oecd_unitcode"
+ ],
+ "rows": {
+ }
+ }
+ }, // (4ix): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "OECD Average of ODA in Sector" // PART 4 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "OECD_AVG"
+ }
+ } // (4x): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ ]
+ },
+ {
+ id: "tot-oda-subsector", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% Sub Sector/Sector'){
+ serie.update({
+ yAxis: 'subsector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'subsector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }
+ /* config: {
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+
+ series: [{
+ name: '% Sub Sector/Total',
+ yAxis: 1,
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ }//,
+
+ // {
+ // name: 'ODA from Resource Partner in Sector'//,
+ // type: 'column'
+ // },
+ // {
+ // name: 'Total ODA from Resource Partner'//,
+ // // type: 'column'
+ //},
+ // {
+ //name: 'OECD Average of ODA in that Sector'//,
+ // type: 'column'
+ //}
+ ],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+ }
+ }
+
+ }*/
+ },
+
+ filterFor: {
+ "filter_donor_sector_oda": ['donorcode', 'parentsector_code', 'year', 'oda'],
+ "filter_donor_subsector_oda": ['donorcode', 'parentsector_code', 'purposecode', 'year', 'oda'],
+
+ "filter_total_oda_dac_members_by_year": ['parentsector_code', 'purposecode', 'year', 'oda'],
+ "filter_dac_members_by_donor_year": ['parentsector_code', 'year', 'oda']
+ },
+
+ postProcess: [
+
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "donor_sector_oda" // RESULT OF PART 1: TOTAL ODA FROM DONOR IN SECTOR
+ },
+ {
+ "uid": "donor_subsector_oda" // RESULT OF PART 2: TOTAL ODA FOR DONOR (ALL SECTORS)
+ },
+ {
+ "uid":"percentage_ODA" // RESULT OF PART 3: PERCENTAGE CALCULATION (ODA FROM DONOR IN SECTOR / TOTAL ODA FROM DONOR x 100)
+ },
+ {
+ "uid":"OECD_AVG" // RESULT OF PART 4: OECD DONORS (DAC MEMBERS) AVERAGE ODA IN SELECTED SECTOR
+ }
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ }, // PART 5: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_donor_sector_oda"
+ }
+ }, // PART 1: TOTAL ODA FROM DONOR IN SECTOR: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ }, // (1ii): TOTAL ODA FROM DONOR IN SECTOR: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA from Resource Partner in Sector" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "donor_sector_oda"
+ }
+ }, // (1iii): TOTAL ODA FROM DONOR IN SECTOR: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "60020"
+ ]
+ }
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_donor_subsector_oda"
+ }
+ }, // PART 2: TOTAL ODA FOR DONOR: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+
+ }, // (2ii): TOTAL ODA FOR DONOR: Group by
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "total_ODA"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA from Resource Partner in Sub Sector" // PART 2 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "donor_subsector_oda"
+ }
+ }, // (2iii): TOTAL ODA FOR DONOR: Add Column
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "donor_sector_oda"
+ },
+ {
+ "uid": "donor_subsector_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process"}
+ }, // PART 3 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( donor_subsector_oda_value / donor_sector_oda_value )*100"]
+
+ }
+ }
+ }, // (3ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ },
+ "rid": {
+ "uid": "percentage_with_two_values"
+ }
+ }, // (3iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ }, // (3iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% Sub Sector/Sector" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "percentage_ODA"
+ }
+ }, // (3vi) PERCENTAGE CALCULATION: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "60020"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_oda_dac_members_by_year"
+ }
+ }, // PART 4 OECD DONORS (DAC MEMBERS) AVERAGE ODA: (4i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"aggregated_oecd"}
+ }, // (4ii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "donorcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_dac_members_by_donor_year"}
+
+ }, // (4iii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode",
+ "year"
+ ],
+ "aggregations": [
+ ]
+ },
+ "rid": {
+ "uid": "sd"
+ }
+ }, // (4iv): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value_count",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": 1
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ }, // (4v): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value_count"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "count_dac_members"
+ }
+ }, // (4vi): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "count_dac_members"
+ },
+ {
+ "uid": "aggregated_oecd"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ }
+ }, // (4vii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Join
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( aggregated_oecd_value / count_dac_members_value_count )"]
+ }
+ },
+ "rid": {
+ "uid": "avg_value"
+ }
+ }, // (4viii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "aggregated_oecd_unitcode"
+ ],
+ "rows": {
+ }
+ }
+ }, // (4ix): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "OECD Average of ODA in that Sub Sector" // PART 4 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "OECD_AVG"
+ }
+ } // (4x): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ ]
+ },
+ {
+ id: "tot-oda-gni", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% ODA/GNI'){
+ serie.update({
+ yAxis: 'percent-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+
+ var isVisible2 = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% OECD Average of ODA/GNI'){
+ serie.update({
+ yAxis: 'percent-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+
+ if(!isVisible && !isVisible2){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+ else {
+ if(isVisible || isVisible2) {
+ this.options.yAxis[1].title.text = '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'percent-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }/*,
+ config: {
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ series: [{
+ name: '% ODA/GNI',
+ yAxis: 1,
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ },
+ {
+ name: '% OECD Average of ODA/GNI',
+ yAxis: 1,
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ }
+ ],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }*/
+ },
+
+
+ filterFor: {
+ "filter_total_ODA": ['donorcode', 'year', 'oda'],
+ "filter_gni_donor_oda": ['donorcode', 'year'],
+
+ "all_subsectors_sum": ['year', 'oda'],
+ "filter_GNI_sum": ['year']
+ },
+
+
+ postProcess: [
+
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_donor_oda"
+ },
+ {
+ "uid": "gni_donor_oda"
+ },
+ {
+ "uid":"ODA_on_GNI"
+ },
+ {
+ "uid": "oecd_oda_gni"
+ }
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_ODA"}
+ }, // PART 1: TOTAL ODA FOR DONOR (ALL SECTORS): (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA from Resource Partner"
+ },
+ "rid": {
+ "uid": "total_donor_oda"
+ }
+ },
+
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_donors_gni"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_gni_donor_oda"
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Resource Partner GNI"
+ },
+ "rid": {
+ "uid": "gni_donor_oda"
+ }
+ },
+
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "gni_donor_oda"
+ },
+ {
+ "uid": "total_donor_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process_oda_gni"}
+ },
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process_oda_gni"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( total_donor_oda_value / gni_donor_oda_value)*100"]
+ }
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% ODA/GNI"
+ },
+ "rid": {
+ "uid": "ODA_on_GNI"
+ }
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"all_subsectors_sum"}
+ },
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_donors_gni"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_GNI_sum"
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "GNI_sum"
+ }
+ },
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "GNI_sum"
+ },
+ {
+ "uid": "all_subsectors_sum"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid": {
+ "uid": "join_oecd_avg"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "join_oecd_avg"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": [
+ "1 = 1"
+ ],
+ "values": [
+ " ( all_subsectors_sum_value / GNI_sum_value)*100"
+ ]
+ }
+ }
+ },
+
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% OECD Average of ODA/GNI"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code"
+ },
+ "value": "percentage"
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode",
+ "indicator"
+ ]
+ },
+ "rid":{
+ "uid":"oecd_oda_gni"
+ }
+ }
+
+
+ ]
+ /*postProcess: [
+
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_donor_oda" // RESULT OF PART 1: TOTAL ODA FOR DONOR (ALL SECTORS)
+ },
+ {
+ "uid": "gni_donor_oda" // RESULT OF PART 2: GNI OF DONOR
+ },
+ {
+ "uid":"percentage_ODA_GNI" // RESULT OF PART 3: PERCENTAGE CALCULATION (TOTAL ODA FOR DONOR / GNI FOR DONOR x 100)
+ },
+ {
+ "uid":"percentage_OECD_AVG_GNI" // RESULT OF PART 5 (PART 4 used to calculated OECD_AVG): PERCENTAGE CALCULATION (OECD DONORS AVERAGE ODA / GNI FOR DONOR x 100)
+ }
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+
+ }, // PART 6: UNION is the FINAL PART IN THE PROCESS
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_total_ODA"}
+ }, // PART 1: TOTAL ODA FOR DONOR (ALL SECTORS): (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"total_ODA"}
+
+ }, // (1ii): TOTAL ODA FOR DONOR (ALL SECTORS): Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA from Resource Partner"
+ },
+ "rid": {
+ "uid": "total_donor_oda"
+ }
+ }, // (1iii): TOTAL ODA FOR DONOR (ALL SECTORS): Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_donors_gni"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_gni_donor_oda"
+ }
+ }, // PART 2: GNI OF DONOR: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ }, // (2ii): GNI OF DONOR: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Resource Partner GNI"
+ },
+ "rid": {
+ "uid": "gni_donor_oda"
+ }
+ }, // (2iii): GNI OF DONOR: Add Column
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "gni_donor_oda"
+ },
+ {
+ "uid": "total_donor_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process_oda_gni"}
+ }, // PART 3 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process_oda_gni"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( total_donor_oda_value / gni_donor_oda_value)*100"]
+ }
+ }
+ }, // (3ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ }
+ }, // (3iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ }, // (3iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% ODA/GNI"
+ },
+ "rid": {
+ "uid": "percentage_ODA_GNI"
+ }
+ }, // (3vi) PERCENTAGE CALCULATION: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_oda_dac_members_by_year"
+ }
+ }, // PART 4 OECD DONORS (DAC MEMBERS) AVERAGE ODA: (4i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ },
+ "rid":{"uid":"aggregated_oecd"}
+ }, // (4ii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "donorcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "dac_member": {
+ "enumeration": [
+ "t"
+ ]
+ },
+ /!*"parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },*!/
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_dac_members_by_donor_year"}
+
+ }, // (4iii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode",
+ "year"
+ ],
+ "aggregations": [
+ ]
+ },
+ "rid": {
+ "uid": "sd"
+ }
+ }, // (4iv): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value_count",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": 1
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ }, // (4v): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value_count"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ },
+ "rid": {
+ "uid": "count_dac_members"
+ }
+ }, // (4vi): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Group by
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "count_dac_members"
+ },
+ {
+ "uid": "aggregated_oecd"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ }
+ }, // (4vii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Join
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( aggregated_oecd_value / count_dac_members_value_count )"]
+ }
+ },
+ "rid": {
+ "uid": "avg_value"
+ }
+ }, // (4viii): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "aggregated_oecd_unitcode"
+ ],
+ "rows": {
+ }
+ }
+ }, // (4ix): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Filter
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "OECD Average of ODA" // PART 4 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "OECD_AVG"
+ }
+ }, // (4x): OECD DONORS (DAC MEMBERS) AVERAGE ODA: Add Column
+
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "OECD_AVG"
+ },
+ {
+ "uid": "gni_donor_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process_oecd_avg_gni"}
+ }, // PART 5 PERCENTAGE CALCULATION [OECD AVG/GNI]: (5i) Join
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process_oecd_avg_gni"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":[" ( OECD_AVG_value / gni_donor_oda_value)*100"]
+ }
+ }
+ }, // (5ii) PERCENTAGE CALCULATION [OECD AVG/GNI]: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ }
+ }, // (5iii) PERCENTAGE CALCULATION [OECD AVG/GNI]: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [{
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ }, // (5iv) PERCENTAGE CALCULATION [OECD AVG/GNI]: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% OECD Average of ODA/GNI"
+ },
+ "rid": {
+ "uid": "percentage_OECD_AVG_GNI"
+ }
+ } // (5vi) PERCENTAGE CALCULATION [OECD AVG/GNI]: Add Column
+ ]*/
+ },
+ {
+ id: 'top-recipients', // TOP RECIPIENTS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["recipientname"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ colors: ['#5DA58D'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+
+ filterFor: ['donorcode', 'parentsector_code', 'purposecode', 'year', 'oda'],
+
+ filter: { //FX-filter format
+ donorcode: ["1"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientname", "recipientcode"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE recipientcode NOT IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ "queryParameters": [
+ {"value": '298'}, {"value": '498'}, {"value": '798'}, {"value": '89'},
+ {"value": '589'}, {"value": '889'}, {"value": '189'}, {"value": '289'},
+ {"value": '389'}, {"value": '380'}, {"value": '489'}, {"value": '789'},
+ {"value": '689'}, {"value": '619'}, {"value": '679'}
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-recipients-others', // TOP RECIPIENTS Vs OTHER RECIPIENTS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["indicator"], //x axis and series
+ series: ["unitname"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#5DA58D'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ pie: {
+ showInLegend: true
+ },
+ series: {
+ point: {
+ events: {
+ legendItemClick: function () {
+ return false; // <== returning false will cancel the default action
+ }
+ }
+ }
+ }
+ },
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+ },
+ filterFor: {
+ "filter_top_10_recipients_sum": ['donorcode', 'parentsector_code', 'purposecode', 'year', 'oda'],
+ "filter_all_recipients_sum": ['donorcode', 'parentsector_code', 'purposecode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "top_10_recipients_sum"
+ },
+ {
+ "uid":"others"
+ }
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_top_10_recipients_sum"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE recipientcode NOT IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ "queryParameters": [
+ {"value": '298'}, {"value": '498'}, {"value": '798'}, {"value": '89'},
+ {"value": '589'}, {"value": '889'}, {"value": '189'}, {"value": '289'},
+ {"value": '389'}, {"value": '380'}, {"value": '489'}, {"value": '789'},
+ {"value": '689'}, {"value": '619'}, {"value": '679'}
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Top Recipient Countries"
+ },
+ "rid": {
+ "uid": "top_10_recipients_sum"
+ }
+ },
+ {
+ "name": "group",
+ "sid":[{"uid":"filtered_dataset"}],
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+
+ ]
+ }
+ },
+ // NEED TO VERIFY HOW TO DO THIS
+ // {
+ // "name": "select",
+ // "parameters": {
+ // "query": "WHERE recipientcode NOT IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ // "queryParameters": [
+ // {"value": '298'}, {"value": '498'}, {"value": '798'}, {"value": '89'},
+ // {"value": '589'}, {"value": '889'}, {"value": '189'}, {"value": '289'},
+ // {"value": '389'}, {"value": '380'}, {"value": '489'}, {"value": '789'},
+ // {"value": '689'}, {"value": '619'}, {"value": '679'}
+ // ]
+ // }
+ // },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "sum of all recipients"
+ },
+ "rid": {
+ "uid": "top_all_recipients_sum"
+ }
+ },
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "top_all_recipients_sum"
+ },
+ {
+ "uid": "top_10_recipients_sum"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process_total_recipients"}
+ },
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process_total_recipients"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":["top_all_recipients_sum_value - top_10_recipients_sum_value"]
+ }
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "value",
+ "unitcode"
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Other Recipients"
+ },
+ "rid": {
+ "uid": "others"
+ }
+ }
+ ]
+ },
+ {
+ id: 'top-sectors', // TOP SECTORS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["parentsector_name"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+
+ filterFor: ['donorcode', 'year', 'oda'],
+
+ filter: { //FX-filter format
+ donorcode: ["1"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "parentsector_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-sectors-others', // TOP SECTORS Vs OTHER SECTORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["indicator"], //x axis and series
+ series: ["unitname"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ pie: {
+ showInLegend: true
+ },
+ series: {
+ point: {
+ events: {
+ legendItemClick: function () {
+ return false; // <== returning false will cancel the default action
+ }
+ }
+ }
+ }
+ },
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+ },
+ filterFor: {
+ "filter_top_10_sectors_sum": ['donorcode', 'year', 'oda'],
+ "filter_top_all_sectors_sum": ['donorcode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "top_10_sectors_sum"
+ },
+ {
+ "uid": "others"
+ }
+ ],
+ "parameters": {},
+ "rid": {
+ "uid": "union_process"
+ }
+ },
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "parentsector_code",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "1"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_top_10_sectors_sum"
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "parentsector_code"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Top Sectors"
+ },
+ "rid": {
+ "uid": "top_10_sectors_sum"
+ }
+ },
+ {
+ "name": "group",
+ "sid":[{"uid":"filtered_dataset"}],
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "sum of all sectors"
+ },
+ "rid": {
+ "uid": "top_all_sectors_sum"
+ }
+ },
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "top_all_sectors_sum"
+ },
+ {
+ "uid": "top_10_sectors_sum"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ]
+ ],
+ "values": []
+ },
+ "rid": {
+ "uid": "join_process_total_sectors"
+ }
+ },
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "join_process_total_sectors"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": [
+ "1 = 1"
+ ],
+ "values": [
+ "top_all_sectors_sum_value - top_10_sectors_sum_value"
+ ]
+ }
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "value",
+ "unitcode"
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Other Sectors"
+ },
+ "rid": {
+ "uid": "others"
+ }
+ }
+ ]
+ },
+ {
+ id: 'top-channel-categories', // TOP CHANNEL OF DELIVERY CATEGORIES
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["channelsubcategory_name"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#56adc3'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+
+ filterFor: ['donorcode', 'year', 'parentsector_code', 'purposecode', 'oda'],
+
+ filter: { //FX-filter format
+ donorcode: ["1"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "channelsubcategory_code", "channelsubcategory_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-subsectors', // TOP SUB SECTORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["purposename"], //x axis and series
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+
+ },
+
+ filterFor: ['donorcode', 'year', 'parentsector_code', 'oda'],
+
+ filter: { //FX-filter format
+ donorcode: ["1"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "purposename"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'oda-regional', // REGIONAL DISTRIBUTION
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["donorcode"], //x axis
+ series: ["un_continent_code"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: true,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ inverted: true
+ },
+ plotOptions: {
+ series: {
+ stacking: 'percent',
+ dataLabels: {
+ enabled: true,
+ color: 'white',
+ style: {
+ fontWeight: 'normal',
+ textShadow: '0'
+ },
+ formatter: function () {
+ var percent = Math.round(this.point.percentage);
+ if (percent > 0)
+ return Math.round(this.point.percentage) + '%';
+ else
+ return this.point.percentage.toFixed(2) + '%';
+ }
+ }
+ },
+ column: {
+ minPointLength: 5
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ useHTML: true,
+ labelFormatter: function () {
+ return '' + this.name + ' (' + this.yData + ' USD Mil)
';
+ }
+ }
+ }
+ },
+ yAxis: {
+ min: 0,
+ title: {
+ text: '%',
+ align: 'high'
+ }
+ },
+ xAxis: {
+ labels: {
+ enabled: false
+ }
+ },
+ tooltip: {
+ formatter: function () {
+ var percent = Math.round(this.point.percentage);
+
+ if (percent < 1)
+ percent = this.point.percentage.toFixed(2);
+
+ return '' + this.series.name + ':' + '
' + ' ' + percent + '% ' +
+ ' (' + Highcharts.numberFormat(this.y, 2, '.', ',') + ' USD Mil)'
+ }
+ }
+ }
+ },
+
+ filterFor: ['donorcode', 'year', 'parentsector_code', 'purposecode', 'oda'],
+
+ filter: { //FX-filter format
+ donorcode: ["1"],
+ year: [{value: 2000, parent: 'from'}, {value: 2014, parent: 'to'}]
+ },
+
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode", "un_continent_code"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE un_continent_code<>?",
+ "queryParameters": [{"value": ''}]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ }
+ ]
+ },
+ {
+ id: 'country-map',
+ type: 'map',
+ config: {
+ geoSubject: 'gaul0',
+ colorRamp: 'GnBu', //Blues, Greens,
+ //colorRamp values: http://fenixrepo.fao.org/cdn/fenix/fenix-ui-map-datasets/colorramp.png
+
+ legendtitle: 'ODA',
+
+ fenix_ui_map: {
+
+ plugins: {
+ fullscreen: false,
+ disclaimerfao: false
+ },
+ guiController: {
+ overlay: false,
+ baselayer: false,
+ wmsLoader: false
+ },
+
+ baselayers: {
+ "cartodb": {
+ title_en: "Baselayer",
+ url: 'http://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png',
+ subdomains: 'abcd',
+ maxZoom: 19
+ }
+ },
+ labels: true,
+ boundaries: true
+ }
+ },
+
+ filterFor: ['donorcode', 'year', 'parentsector_code', 'purposecode', 'oda'],
+
+ filter: { //FX-filter format
+ donorcode: ["1"],
+ year: [{value: 2000, parent: 'from'}, {value: 2014, parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "gaul0"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["unitname"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE gaul0<>?",
+ "queryParameters": [{"value": "NA"}]
+ }
+ }
+ ]
+ }
+ ]
+ }
+ }
+ });
\ No newline at end of file
diff --git a/config/browse/config-other-sector.js b/config/browse/config-other-sector.js
new file mode 100644
index 00000000..4d77eac7
--- /dev/null
+++ b/config/browse/config-other-sector.js
@@ -0,0 +1,2455 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+ id: 'OTHER_SECTORS',
+ filter: {
+ parentsector_code: {
+ selector: {
+ id: "dropdown",
+ default: ["600"],
+ config: { //Selectize configuration
+ maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-md-3",
+ cl: {
+ uid: "crs_dac",
+ version: "2016",
+ level: 1,
+ levels: 1
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ purposecode: {
+ selector: {
+ id: "dropdown",
+ config: {
+ maxItems: 1,
+ placeholder: "All",
+ plugins: ['remove_button'],
+ mode: 'multi'
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ codes: ["60010", "60020", "60030", "60040", "60061", "60062", "60063"],
+ "uid": "crs_dac",
+ "version": "2016",
+ "level": 2,
+ "levels": 2
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ },
+ dependencies: {
+ "parentsector_code": {id: "parent", event: "select"}
+ }
+ },
+ "year-from": {
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2000],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ "year-to": {
+ selector: {
+ id: "dropdown",
+ from: 2000,
+ to: 2014,
+ default: [2014],
+ config: {
+ maxItems: 1
+ }
+ },
+ className: "col-sm-2",
+ format: {
+ type: "static",
+ output: "time"
+ },
+ dependencies: {
+ "year-from": {id: "min", event: "select"}
+ },
+ template: {
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ },
+ oda: {
+ selector: {
+ id: "dropdown",
+ default: ['adam_usd_commitment'],
+ config: { //Selectize configuration
+ maxItems: 1
+ }
+ },
+ className: "col-sm-4",
+ cl: {
+ uid: "crs_flow_amounts",
+ version: "2016"
+ },
+ template: {
+ hideHeaderIcon: false,
+ frankie: true,
+ headerIconClassName: 'glyphicon glyphicon-info-sign',
+ hideSwitch: true,
+ hideRemoveButton: true
+ }
+ }
+
+ },
+ dashboard: {
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ {
+ id: "tot-oda-sector", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% Sector/Total ODA'){
+ serie.update({
+ yAxis: 'subsector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'subsector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+
+ }
+ },
+
+ filterFor: {
+ "filter_total_sector_oda": ['parentsector_code', 'year', 'oda'],
+ "filter_total_oda": ['year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_sector_oda" // RESULT OF PART 1: TOTAL ODA for the selected Sector
+ },
+ {
+ "uid": "total_oda" // RESULT OF PART 2: TOTAL ODA for ALL Sectors
+ },
+ {
+ "uid": "percentage_ODA" // RESULT OF PART 3: PERCENTAGE CALCULATION (TOTAL ODA SECTOR / TOTAL ODA for ALL Sectors x 100)
+ }
+ ],
+ "parameters": {},
+ "rid": {
+ "uid": "union_process"
+ }
+ }, // PART 4: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ rid: {uid: "filter_total_sector_oda"}
+ }, // PART 1: TOTAL ODA FOR SECTOR: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ }, // (1ii): TOTAL ODA FOR SECTOR: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA Sector" // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_sector_oda"
+ }
+ }, // (1iii): TOTAL ODA FOR SECTOR: Add Column
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_oda"
+ }
+
+ }, //PART 2: TOTAL ODA for ALL Sectors: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ }, //(2ii): TOTAL ODA for ALL Sectors: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA" // PART 2 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_oda"
+ }
+ }, //(2iii): TOTAL ODA for ALL Sectors: Add Column
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_sector_oda"
+ },
+ {
+ "uid": "total_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ]
+ ],
+ "values": []
+ },
+ "rid": {
+ "uid": "join_process"
+ }
+ }, // PART 3 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "join_process"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1=1"],
+ "values": ["(total_sector_oda_value/total_oda_value)*100"]
+ }
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ }, // (3ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ },
+ "rid": {
+ "uid": "percentage_with_two_values"
+ }
+ }, // (3iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [
+ {
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }
+ ]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ }, // (3iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% Sector/Total ODA" // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "percentage_ODA"
+ }
+ } // (3vi) PERCENTAGE CALCULATION: Add Column
+ ]
+ },
+ {
+ id: "tot-oda-subsector", //ref [data-item=':id']
+ type: "chart", //chart || map || olap,
+ config: {
+ type: "line",
+ x: ["year"], //x axis
+ series: ["indicator"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function(event) {
+ var _that = this;
+ var hasSubSector = false;
+
+ $.each(this.series, function (i, serie) {
+ if(serie.name == 'Total ODA'){
+ serie.update({
+ visible: false
+ })
+ }
+ });
+
+ var isVisible = $.each(_that.series, function (i, serie) {
+ if(serie.name == '% Sub Sector/Sector'){
+ serie.update({
+ yAxis: 'sector-axis',
+ dashStyle: 'shortdot',
+ marker: {
+ radius: 3
+ }
+ });
+
+ return true;
+ }
+ });
+
+ if(!isVisible){
+ this.options.yAxis[1].title.text = '';
+ this.yAxis[1].visible = false;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ } else {
+ this.options.yAxis[1].title.text= '%';
+ this.yAxis[1].visible = true;
+ this.yAxis[1].isDirty = true;
+ this.redraw();
+ }
+
+ }
+ }
+ },
+ xAxis: {
+ type: 'datetime'
+ },
+ yAxis: [{ //Primary Axis in default template
+ }, { // Secondary Axis
+ id: 'sector-axis',
+ gridLineWidth: 0,
+ title: {
+ text: '%'
+ },
+ opposite: true
+ }],
+ exporting: {
+ chartOptions: {
+ legend: {
+ enabled: true
+ }
+
+ }
+ }
+ }
+ },
+
+ filterFor: {
+ "filter_total_sector_oda": ['parentsector_code', 'year', 'oda'],
+ "filter_total_subsector_oda": ['parentsector_code', 'purposecode', 'year', 'oda'],
+ "filter_total_oda": ['year', 'oda']
+ },
+
+ postProcess:[
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "total_sector_oda"
+ // RESULT OF PART 1: TOTAL ODA for the selected Sector
+ },
+ {
+ "uid": "total_subsector_oda"
+ // RESULT OF PART 2: TOTAL ODA for the selected Sub Sector
+ },
+ {
+ "uid": "total_oda"
+ // RESULT OF PART 3: TOTAL ODA for ALL Sectors
+ },
+ {
+ "uid": "percentage_ODA"
+ // RESULT OF PART 4: PERCENTAGE CALCULATION (TOTAL ODA SUB SECTOR / TOTAL ODA for SECTOR x 100)
+ }
+ ],
+ "parameters": {},
+ "rid": {
+ "uid": "union_process"
+ }
+ },
+ // PART 5: UNION is the FINAL PART IN THE PROCESS
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ rid: {
+ uid: "filter_total_sector_oda"
+ }
+ },
+ // PART 1: TOTAL ODA FOR SECTOR: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ // (1ii): TOTAL ODA FOR SECTOR: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA Sector"
+ // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_sector_oda"
+ }
+ },
+ // (1iii): TOTAL ODA FOR SECTOR: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "60010"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ rid: {
+ uid: "filter_total_subsector_oda"
+ }
+ },
+ // PART 2: TOTAL ODA FOR SUB SECTOR: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ // (1ii): TOTAL ODA FOR SUB SECTOR: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "ODA Sub Sector"
+ // PART 2 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_subsector_oda"
+ }
+ },
+ // (2iii): TOTAL ODA FOR SUB SECTOR: Add Column
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "year",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "purposecode": {
+ "codes": [
+ {
+ "uid": "crs_purposes",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "donorcode": {
+ "codes": [
+ {
+ "uid": "crs_donors",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "recipientcode": {
+ "codes": [
+ {
+ "uid": "crs_recipients",
+ "version": "2016",
+ "codes": [
+ "NA"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_total_oda"
+ }
+ },
+ //PART 3: TOTAL ODA for ALL Sectors: (2i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "year"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ //(3ii): TOTAL ODA for ALL Sectors: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Total ODA"
+ // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "total_oda"
+ }
+ },
+ //(3iii): TOTAL ODA for ALL Sectors: Add Column
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "total_sector_oda"
+ },
+ {
+ "uid": "total_subsector_oda"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "year"
+ }
+ ]
+ ],
+ "values": []
+ },
+ "rid": {
+ "uid": "join_process"
+ }
+ },
+ // PART 4 PERCENTAGE CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "join_process"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": [
+ "1=1"
+ ],
+ "values": [
+ "(total_subsector_oda_value/total_sector_oda_value)*100"
+ ]
+ }
+ },
+ "rid": {
+ "uid": "percentage_Value"
+ }
+ },
+ // (4ii) PERCENTAGE CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "year",
+ "value"
+ ],
+ "rows": {}
+ },
+ "rid": {
+ "uid": "percentage_with_two_values"
+ }
+ },
+ // (4iii) PERCENTAGE CALCULATION: filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "id": "unitcode",
+ "title": {
+ "EN": "Measurement Unit"
+ },
+ "domain": {
+ "codes": [
+ {
+ "idCodeList": "crs_units",
+ "version": "2016",
+ "level": 1
+ }
+ ]
+ },
+ "dataType": "code",
+ "subject": "um"
+ },
+ "value": "percentage"
+ }
+ },
+ // (4iv) PERCENTAGE CALCULATION: Add Column (Measurement Unit Code)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "% Sub Sector/Sector"
+ // PART 4 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "percentage_ODA"
+ }
+ }
+ // (4vi) PERCENTAGE CALCULATION: Add Column
+ ]
+ },
+ {
+ id: 'top-partners', // TOP DONORS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["donorname"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ parentsector_code: ["600"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorname"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-partners-others', // TOP RESOURCE PARTNERS Vs OTHER RESOURCE PARTNERS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["indicator"], //x axis and series
+ series: ["unitname"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#008080'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ pie: {
+ showInLegend: true
+ },
+ series: {
+ point: {
+ events: {
+ legendItemClick: function () {
+ return false; // <== returning false will cancel the default action
+ }
+ }
+ }
+ }
+ },
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+ },
+
+ filterFor: {
+ "filter_top_10_donors_sum": ['parentsector_code', 'purposecode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "top_10_donors_sum"
+ // RESULT OF PART 1: TOTAL ODA for TOP 10 PARTNERS
+ },
+ {
+ "uid": "others"
+ // RESULT OF PART 3: TOTAL ODA OTHERS CALCULATION (TOTAL ODA ALL PARTNERS (PART 2) - TOTAL ODA FOR TOP 10 Partners)
+ }
+ ],
+ "parameters": {},
+ "rid": {
+ "uid": "union_process"
+ }
+ },
+ // PART 4: UNION is the FINAL PART IN THE PROCESS
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "donorcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid": {
+ "uid": "filter_top_10_donors_sum"
+ }
+ },
+ // PART 1: TOTAL ODA for TOP 10 PARTNERS: (1i) Filter
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "donorcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ // (1ii): TOTAL ODA for TOP 10 PARTNERS: Group by
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ // (1iii): TOTAL ODA for TOP 10 PARTNERS: Order by
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ // (1iv): TOTAL ODA for TOP 10 PARTNERS: Limit
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ // (1vi): TOTAL ODA for TOP 10 PARTNERS: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Top Resource Partners"
+ // PART 1 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "top_10_donors_sum"
+ }
+ },
+ // (1vii): TOTAL ODA for TOP 10 PARTNERS: Add Column
+ {
+ "name": "group",
+ "sid":[{"uid":"filtered_dataset"}],
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ // (2ii): TOTAL ODA for ALL PARTNERS: Group by
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "sum of all donors"
+ // PART 2 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "top_all_donors_sum"
+ }
+ },
+ // (2iii): TOTAL ODA for ALL PARTNERS : Add Column
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "top_all_donors_sum"
+ },
+ {
+ "uid": "top_10_donors_sum"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ]
+ ],
+ "values": []
+ },
+ "rid": {
+ "uid": "join_process_total_donors"
+ }
+ },
+ // PART 3: TOTAL ODA OTHERS CALCULATION: (3i) Join
+ {
+ "name": "addcolumn",
+ "sid": [
+ {
+ "uid": "join_process_total_donors"
+ }
+ ],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": [
+ "1 = 1"
+ ],
+ "values": [
+ "top_all_donors_sum_value - top_10_donors_sum_value"
+ ]
+ }
+ }
+ },
+ // (3ii): TOTAL ODA OTHERS CALCULATION: Add Column
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "value",
+ "unitcode"
+ ]
+ }
+ },
+ // (3iii): TOTAL ODA OTHERS CALCULATION: Filter (filter out what is not needed)
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Other Resource Partners"
+ // PART 3 FINAL INDICATOR NAME
+ },
+ "rid": {
+ "uid": "others"
+ }
+ }
+ // (3iv): TOTAL ODA OTHERS CALCULATION: Add Column
+ ]
+ },
+ {
+ id: 'top-recipients', // TOP RECIPIENTS
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["recipientname"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+ config: {
+ colors: ['#5DA58D'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ parentsector_code: ["600"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientname", "recipientcode"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE recipientcode NOT IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ "queryParameters": [
+ {"value": '298'}, {"value": '498'}, {"value": '798'}, {"value": '89'},
+ {"value": '589'}, {"value": '889'}, {"value": '189'}, {"value": '289'},
+ {"value": '389'}, {"value": '380'}, {"value": '489'}, {"value": '789'},
+ {"value": '689'}, {"value": '619'}, {"value": '679'}
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-recipients-others', // TOP RECIPIENTS Vs OTHER RECIPIENTS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["indicator"], //x axis and series
+ series: ["unitname"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#5DA58D'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ pie: {
+ showInLegend: true
+ },
+ series: {
+ point: {
+ events: {
+ legendItemClick: function () {
+ return false; // <== returning false will cancel the default action
+ }
+ }
+ }
+ }
+ },
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+ },
+
+ filterFor: {
+ "filter_top_10_recipients_sum": ['parentsector_code', 'purposecode', 'year', 'oda']
+ },
+
+ postProcess: [
+ {
+ "name": "union",
+ "sid": [
+ {
+ "uid": "top_10_recipients_sum"
+ },
+ {
+ "uid":"others"
+ }
+ ],
+ "parameters": {
+ },
+ "rid":{"uid":"union_process"}
+ },
+
+ {
+ "name": "filter",
+ "sid": [
+ {
+ "uid": "adam_usd_aggregation_table"
+ }
+ ],
+ "parameters": {
+ "columns": [
+ "recipientcode",
+ "value",
+ "unitcode"
+ ],
+ "rows": {
+ "oda": {
+ "enumeration": [
+ "usd_commitment"
+ ]
+ },
+ "parentsector_code": {
+ "codes": [
+ {
+ "uid": "crs_dac",
+ "version": "2016",
+ "codes": [
+ "600"
+ ]
+ }
+ ]
+ },
+ "year": {
+ "time": [
+ {
+ "from": 2000,
+ "to": 2014
+ }
+ ]
+ }
+ }
+ },
+ "rid":{"uid":"filter_top_10_recipients_sum"}
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "recipientcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ },
+ {
+ "columns": [
+ "unitcode"
+ ],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE recipientcode NOT IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ "queryParameters": [
+ {"value": '298'}, {"value": '498'}, {"value": '798'}, {"value": '89'},
+ {"value": '589'}, {"value": '889'}, {"value": '189'}, {"value": '289'},
+ {"value": '389'}, {"value": '380'}, {"value": '489'}, {"value": '789'},
+ {"value": '689'}, {"value": '619'}, {"value": '679'}
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ },
+ "rid":{"uid":"filtered_dataset"}
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10,
+ "page": 1
+ }
+ },
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Top Recipient Countries"
+ },
+ "rid": {
+ "uid": "top_10_recipients_sum"
+ }
+ },
+ {
+ "name": "group",
+ "sid":[{"uid":"filtered_dataset"}],
+ "parameters": {
+ "by": [
+ "unitcode"
+ ],
+ "aggregations": [
+ {
+ "columns": [
+ "value"
+ ],
+ "rule": "SUM"
+ }
+
+ ]
+ }
+ },
+ // NEED TO VERIFY HOW TO DO THIS
+ // {
+ // "name": "select",
+ // "parameters": {
+ // "query": "WHERE recipientcode NOT IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", // skipping regional recipient countries (e.g. "Africa, regional"; "North of Sahara, regional")
+ // "queryParameters": [
+ // {"value": '298'}, {"value": '498'}, {"value": '798'}, {"value": '89'},
+ // {"value": '589'}, {"value": '889'}, {"value": '189'}, {"value": '289'},
+ // {"value": '389'}, {"value": '380'}, {"value": '489'}, {"value": '789'},
+ // {"value": '689'}, {"value": '619'}, {"value": '679'}
+ // ]
+ // }
+ // },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "sum of all recipients"
+ },
+ "rid": {
+ "uid": "top_all_recipients_sum"
+ }
+ },
+ {
+ "name": "join",
+ "sid": [
+ {
+ "uid": "top_all_recipients_sum"
+ },
+ {
+ "uid": "top_10_recipients_sum"
+ }
+ ],
+ "parameters": {
+ "joins": [
+ [
+
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+ ],
+ [
+ {
+ "type": "id",
+ "value": "unitcode"
+ }
+
+ ]
+ ],
+ "values": [
+ ]
+ },
+ "rid":{"uid":"join_process_total_recipients"}
+ },
+ {
+ "name": "addcolumn",
+ "sid":[{"uid":"join_process_total_recipients"}],
+ "parameters": {
+ "column": {
+ "dataType": "number",
+ "id": "value",
+ "title": {
+ "EN": "Value"
+ },
+ "subject": null
+ },
+ "value": {
+ "keys": ["1 = 1"],
+ "values":["top_all_recipients_sum_value - top_10_recipients_sum_value"]
+ }
+ }
+ },
+ {
+ "name": "filter",
+ "parameters": {
+ "columns": [
+ "value",
+ "unitcode"
+ ]
+ }
+ },
+ {
+ "name": "addcolumn",
+ "parameters": {
+ "column": {
+ "dataType": "text",
+ "id": "indicator",
+ "title": {
+ "EN": "Indicator"
+ },
+ "domain": {
+ "codes": [
+ {
+ "extendedName": {
+ "EN": "Adam Processes"
+ },
+ "idCodeList": "adam_processes"
+ }
+ ]
+ },
+ "subject": null
+ },
+ "value": "Other Recipients"
+ },
+ "rid": {
+ "uid": "others"
+ }
+ }
+ ]
+ },
+ {
+ id: 'top-channel-categories', // TOP CHANNEL OF DELIVERY CATEGORIES
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["channelsubcategory_name"], //x axis
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ colors: ['#56adc3'],
+ legend: {
+ title: {
+ text: null
+ }
+ },
+ plotOptions: {
+ column: {
+ events: {
+ legendItemClick: function () {
+ return false;
+ }
+ }
+ },
+ allowPointSelect: false
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ parentsector_code: ["600"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "channelsubcategory_code", "channelsubcategory_name"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'top-subsectors', // TOP SUB SECTORS
+ type: 'chart',
+ config: {
+ type: "pieold",
+ x: ["purposename"], //x axis and series
+ series: ["flowcategory_name"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: false,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ events: {
+ load: function (event) {
+ if (this.options.chart.forExport) {
+ Highcharts.each(this.series, function (series) {
+ series.update({
+ dataLabels: {
+ enabled: false
+ }
+ }, false);
+ });
+ this.redraw();
+ }
+ }
+ }
+
+ },
+ tooltip: {
+ style: {width: '200px', whiteSpace: 'normal'},
+ formatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.percentage.toFixed(2) + '% (' + val + ')';
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }
+ }
+
+ },
+ filter: { //FX-filter format
+ parentsector_code: ["600"],
+ year: [{value: "2000", parent: 'from'}, {value: "2014", parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "purposename"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["flowcategory_name"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ },
+ {
+ "name": "page",
+ "parameters": {
+ "perPage": 10, //top 10
+ "page": 1
+ }
+ }]
+ },
+ {
+ id: 'oda-regional', // REGIONAL DISTRIBUTION
+ type: 'chart',
+ config: {
+ type: "column",
+ x: ["unitcode"], //x axis
+ series: ["un_continent_code"], // series
+ y: ["value"],//Y dimension
+ aggregationFn: {"value": "sum"},
+ useDimensionLabelsIfExist: true,// || default raw else fenixtool
+
+ config: {
+ chart: {
+ inverted: true
+ },
+ plotOptions: {
+ series: {
+ stacking: 'percent',
+ dataLabels: {
+ enabled: true,
+ color: 'white',
+ style: {
+ fontWeight: 'normal',
+ textShadow: '0'
+ },
+ formatter: function () {
+ var percent = Math.round(this.point.percentage);
+ if (percent > 0)
+ return Math.round(this.point.percentage) + '%';
+ else
+ return this.point.percentage.toFixed(2) + '%';
+ }
+ }
+ },
+ column: {
+ minPointLength: 5
+ }
+ },
+ exporting: {
+ buttons: {
+ toggleDataLabelsButton: {
+ enabled: false
+ }
+ },
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ useHTML: true,
+ labelFormatter: function () {
+ return '' + this.name + ' (' + this.yData + ' USD Mil)
';
+ }
+ }
+ }
+ },
+ yAxis: {
+ min: 0,
+ title: {
+ text: '%',
+ align: 'high'
+ }
+ },
+ xAxis: {
+ labels: {
+ enabled: false
+ }
+ },
+ tooltip: {
+ formatter: function () {
+ var percent = Math.round(this.point.percentage);
+
+ if (percent < 1)
+ percent = this.point.percentage.toFixed(2);
+
+ return '' + this.series.name + ':' + '
' + ' ' + percent + '% ' +
+ ' (' + Highcharts.numberFormat(this.y, 2, '.', ',') + ' USD Mil)'
+ }
+ }
+ }
+ },
+ filter: { //FX-filter format
+ parentsector_code: ["600"],
+ year: [{value: 2000, parent: 'from'}, {value: 2014, parent: 'to'}]
+ },
+
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "unitcode", "un_continent_code"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE un_continent_code<>?",
+ "queryParameters": [{"value": ''}]
+ }
+ },
+ {
+ "name": "order",
+ "parameters": {
+ "value": "DESC"
+ }
+ }
+ ]
+ },
+ {
+ id: 'country-map',
+ type: 'map',
+ config: {
+ geoSubject: 'gaul0',
+ colorRamp: 'GnBu', //Blues, Greens,
+ //colorRamp values: http://fenixrepo.fao.org/cdn/fenix/fenix-ui-map-datasets/colorramp.png
+
+ legendtitle: 'ODA',
+
+ fenix_ui_map: {
+
+ plugins: {
+ fullscreen: false,
+ disclaimerfao: false
+ },
+ guiController: {
+ overlay: false,
+ baselayer: false,
+ wmsLoader: false
+ },
+
+ baselayers: {
+ "cartodb": {
+ title_en: "Baselayer",
+ url: 'http://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png',
+ subdomains: 'abcd',
+ maxZoom: 19
+ }
+ },
+ labels: true,
+ boundaries: true
+ }
+ },
+
+ filter: { //FX-filter format
+ parentsector_code: ["600"],
+ year: [{value: 2000, parent: 'from'}, {value: 2014, parent: 'to'}]
+ },
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "gaul0"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["unitname"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE gaul0<>?",
+ "queryParameters": [{"value": "NA"}]
+ }
+ }
+ ]
+ }
+ ]
+ }
+ }
+});
\ No newline at end of file
diff --git a/config/browse/config.js b/config/browse/config.js
deleted file mode 100644
index 75fab516..00000000
--- a/config/browse/config.js
+++ /dev/null
@@ -1,3887 +0,0 @@
-/*global define*/
-
-define(function () {
-
- 'use strict';
-
- return {
-
- SECONDARY_MENU: {
- url: 'config/browse/secondary_menu.json'
- },
-
- "sector": {
-
- download: {
- "target": "6.PROTECTIVE FUNCTIONS AND SELECTIVE ECOSYSTEM SERVICES.zip"
- },
-
- filter: [
- {
- "type": "distinct",
- "uid": "FLUDE_TOPIC_6",
- "column": "indicator",
- "containerType": "baseContainer",
- "title": "Indicator",
- "defaultCodes": ["SoilWatProt"],
- "components": [
- {
- "type": "codelist",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "uid" : "FLUDE_INDICATORS",
- "title": {"EN": "Distinct"},
- // name is the ID output in tehe filter getValues()
- "name": "indicator",
- "config": {
- "defaultsource": []
- }
- }
- ]
- },
- {
- "type": "static",
- "containerType": "baseContainer",
- "title": "Year",
- "components": [
- {
- "type": "time",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "title": {"EN": "Year"},
- "name": "year",
- config: {
- "defaultsource": [
- {"value": "2015", "label": "2015", "selected": true},
- {"value": "2010", "label": "2010", "selected": false},
- {"value": "2005", "label": "2005", "selected": false},
- {"value": "2000", "label": "2000", "selected": false},
- {"value": "1990", "label": "1990", "selected": false}
- ]
- }
- }
- ]
- },
- {
- "type": "codelist",
- "containerType": "baseContainer",
- "title": "Domains",
- "components": [
- {
- "uid": "FLUDE_DOMAINS",
- "type": "codelist",
- "name": "domain",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "title": {"EN": "Codelist"},
-
- config: {
- "defaultsource": [
- //{"value": null, "label": "All", "selected": true},
- //{"value": null, "label": "All", "selected": true, "removeFilter": true},
- ],
- "enableMultiselection": true
- }
- }
- ]
- },
- {
- "type": "codelist",
- "containerType": "baseContainer",
- "title": "Incomes",
- "components": [
- {
- "uid": "FLUDE_INCOMES",
- "type": "codelist",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "title": {"EN": "Codelist"},
- "name": "incomes",
- config: {
- "defaultsource": [
- //{"value": null, "label": "All", "selected": true},
- ],
- "enableMultiselection": true
- }
- }
- ]
- },
- {
- "type": "codelist",
- "containerType": "baseContainer",
- "title": "Subregions",
- "components": [
- {
- "uid": "FLUDE_SUBREGIONS",
- "type": "codelist",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "title": {"EN": "Codelist"},
- "name": "subregion",
- config: {
- "defaultsource": [
- //{"value": null, "label": "All", "selected": true},
- ],
- "enableMultiselection": true
- }
- }
- ]
- }
- ],
-
- dashboard: {
- //data cube's uid
- uid: "FLUDE_TOPIC_6",
-
- //data base filter
- filter: [],
-
- //bridge configuration
- bridge: {
-
- type: "d3p"
-
- },
-
- /*
- * in case bridge is WDS this is the cube metadata.
- * if bridge is D3P this is ignored
- * */
- metadata: {},
-
- items: [
- {
- id: 'item-1',
- type: 'map',
- class: "fx-map-chart",
- //needed if layout = injected
- container: "#item-1",
- config: {
- container: "#item-1" ,
- leaflet: {
- zoomControl: false,
- attributionControl: true,
- scrollWheelZoom: false,
- minZoom: 2
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year', 'domain', 'incomes', 'subregion'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2010,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "SoilWatProt"
- ]
- }
- ]
- }
- }
- }
- }
- ]
- },
- {
- id: 'item-2',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-2",
- config: {
- container: "#item-2",
- adapter: {
- type: "standard",
- xDimensions: 'time',
- yDimensions: 'element',
- valueDimensions: 'value',
- seriesDimensions: ['country']
- },
- template: {
- //"title": "Top 25..."
- },
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year', 'domain', 'incomes', 'subregion'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "SoilWatProt"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "order",
- "parameters": {
- "value": "DESC"
- }
- },
- {
- "name": "page",
- "parameters": {
- "perPage": 25,
- "page": 1
- }
- }
- ]
- },
- {
- id: 'item-3',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-3",
- config: {
- container: "#item-3",
- adapter: {
- type: "standard",
- xDimensions: 'year',
- yDimensions: 'indicator',
- valueDimensions: 'value',
- seriesDimensions: ['region']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "SoilWatProt"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "region", "year", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "region": "ASC",
- "year": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-4',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-4",
- config: {
- container: "#item-4",
- adapter: {
- type: "pie",
- valueDimensions: 'value',
- seriesDimensions: ['region']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- plotBackgroundColor: null,
- plotBorderWidth: null,
- plotShadow: false,
- type: 'pie'
- },
- title: {
- //text: 'Browser market shares January, 2015 to May, 2015'
- },
- tooltip: {
- pointFormat: '{series.name}: {point.percentage:.1f}%'
- },
- plotOptions: {
- pie: {
- allowPointSelect: true,
- cursor: 'pointer',
- dataLabels: {
- enabled: true
- },
- showInLegend: true
- }
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2010,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "SoilWatProt"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "region", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "region": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-5',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-5",
- config: {
- container: "#item-5",
- adapter: {
- type: "standard",
- xDimensions: 'year',
- yDimensions: 'indicator',
- valueDimensions: 'value',
- seriesDimensions: ['subregion']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "SoilWatProt"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "subregion", "year", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "subregion": "ASC",
- "year": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-6',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-6",
- config: {
- container: "#item-6",
- adapter: {
- type: "pie",
- valueDimensions: 'value',
- seriesDimensions: ['subregion']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- plotBackgroundColor: null,
- plotBorderWidth: null,
- plotShadow: false,
- type: 'pie'
- },
- title: {
- //text: 'Browser market shares January, 2015 to May, 2015'
- },
- tooltip: {
- pointFormat: '{series.name}: {point.percentage:.1f}%'
- },
- plotOptions: {
- pie: {
- allowPointSelect: true,
- cursor: 'pointer',
- dataLabels: {
- enabled: true
- },
- showInLegend: true
- }
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2010,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "SoilWatProt"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "subregion", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "subregion": "ASC"
- }
- }
- ]
- },
-
- {
- id: 'item-7',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-7",
- config: {
- container: "#item-7",
- adapter: {
- type: "standard",
- xDimensions: 'year',
- yDimensions: 'indicator',
- valueDimensions: 'value',
- seriesDimensions: ['domain']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "SoilWatProt"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "domain", "year", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "domain": "ASC",
- "year": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-8',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-8",
- config: {
- container: "#item-8",
- adapter: {
- type: "pie",
- valueDimensions: 'value',
- seriesDimensions: ['domain']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- plotBackgroundColor: null,
- plotBorderWidth: null,
- plotShadow: false,
- type: 'pie'
- },
- title: {
- //text: 'Browser market shares January, 2015 to May, 2015'
- },
- tooltip: {
- pointFormat: '{series.name}: {point.percentage:.1f}%'
- },
- plotOptions: {
- pie: {
- allowPointSelect: true,
- cursor: 'pointer',
- dataLabels: {
- enabled: true
- },
- showInLegend: true
- }
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2010,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "SoilWatProt"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "domain", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "domain": "ASC"
- }
- }
- ]
- },
-
- {
- id: 'item-9',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-9",
- config: {
- container: "#item-9",
- adapter: {
- type: "standard",
- xDimensions: 'year',
- yDimensions: 'indicator',
- valueDimensions: 'value',
- seriesDimensions: ['incomes']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "SoilWatProt"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "incomes", "year", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "incomes": "ASC",
- "year": "ASC"
- }
- }
- ]
- },
-
- {
- id: 'item-10',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-10",
- config: {
- container: "#item-10",
- adapter: {
- type: "pie",
- valueDimensions: 'value',
- seriesDimensions: ['incomes']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- plotBackgroundColor: null,
- plotBorderWidth: null,
- plotShadow: false,
- type: 'pie'
- },
- title: {
- //text: 'Browser market shares January, 2015 to May, 2015'
- },
- tooltip: {
- pointFormat: '{series.name}: {point.percentage:.1f}%'
- },
- plotOptions: {
- pie: {
- allowPointSelect: true,
- cursor: 'pointer',
- dataLabels: {
- enabled: true
- },
- showInLegend: true
- }
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2010,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "SoilWatProt"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "incomes", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "incomes": "ASC"
- }
- }
- ]
- }
-
-
- ]
- }
- },
-
- "country_sector": {
- download: {
- "target": "1.FOREST AREA AND CHARACTERISTICS.zip"
- },
-
- filter: [
- {
- "type": "distinct",
- "uid": "FLUDE_TOPIC_1",
- "column": "indicator",
- "containerType": "baseContainer",
- "title": "Indicator",
- "defaultCodes": ["Forest"],
- "components": [
- {
- "type": "codelist",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "uid" : "FLUDE_INDICATORS",
- "title": {"EN": "Distinct"},
- // name is the ID output in tehe filter getValues()
- "name": "indicator",
- "config": {
- "defaultsource": []
- }
-
- }
- ]
- },
- {
- "type": "static",
- "containerType": "baseContainer",
- "title": "Year",
- "components": [
- {
- "type": "time",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "title": {"EN": "Year"},
- "name": "year",
- config: {
- "defaultsource": [
- {"value": "2015", "label": "2015", "selected": true},
- {"value": "2010", "label": "2010", "selected": false},
- {"value": "2005", "label": "2005", "selected": false},
- {"value": "2000", "label": "2000", "selected": false},
- {"value": "1990", "label": "1990", "selected": false}
- ]
- }
- }
- ]
- },
- {
- "type": "codelist",
- "containerType": "baseContainer",
- "title": "Domains",
- "components": [
- {
- "uid": "FLUDE_DOMAINS",
- "type": "codelist",
- "name": "domain",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "title": {"EN": "Codelist"},
-
- config: {
- "defaultsource": [
- //{"value": null, "label": "All", "selected": true},
- //{"value": null, "label": "All", "selected": true, "removeFilter": true},
- ],
- "enableMultiselection": true
- }
- }
- ]
- },
- {
- "type": "codelist",
- "containerType": "baseContainer",
- "title": "Incomes",
- "components": [
- {
- "uid": "FLUDE_INCOMES",
- "type": "codelist",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "title": {"EN": "Codelist"},
- "name": "incomes",
- config: {
- "defaultsource": [
- //{"value": null, "label": "All", "selected": true},
- ],
- "enableMultiselection": true
- }
- }
- ]
- },
- {
- "type": "codelist",
- "containerType": "baseContainer",
- "title": "Subregions",
- "components": [
- {
- "uid": "FLUDE_SUBREGIONS",
- "type": "codelist",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "title": {"EN": "Codelist"},
- "name": "subregion",
- config: {
- "defaultsource": [
- //{"value": null, "label": "All", "selected": true},
- ],
- "enableMultiselection": true
- }
- }
- ]
- }
- ],
-
- dashboard: {
- //data cube's uid
- uid: "FLUDE_TOPIC_1",
-
- //data base filter
- filter: [],
-
- //bridge configuration
- bridge: {
-
- type: "d3p"
-
- },
-
- /*
- * in case bridge is WDS this is the cube metadata.
- * if bridge is D3P this is ignored
- * */
- metadata: {},
-
- items: [
- {
- id: 'item-1',
- type: 'map',
- class: "fx-map-chart",
- //needed if layout = injected
- container: "#item-1",
- config: {
- container: "#item-1",
- leaflet: {
- zoomControl: false,
- attributionControl: true,
- scrollWheelZoom: false,
- minZoom: 2
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year', 'domain', 'incomes', 'subregion'],
- forbiddenValues: {
- year: {time: [{from: 2015, to: 2015}]},
- domain: {removeFilter: true}
- },
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2015,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "Forest"
- ]
- }
- ]
- }
- }
- }
- }
- ]
- },
- {
- id: 'item-2',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-2",
- config: {
- container: "#item-2",
- adapter: {
- type: "standard",
- xDimensions: 'time',
- yDimensions: 'element',
- valueDimensions: 'value',
- seriesDimensions: ['country']
- },
- template: {
- //"title": "Top 25..."
- },
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year', 'domain', 'incomes', 'subregion'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2015,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "Forest"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "order",
- "parameters": {
- "value": "DESC"
- }
- },
- {
- "name": "page",
- "parameters": {
- "perPage": 25,
- "page": 1
- }
- }
- ]
- },
- {
- id: 'item-3',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-3",
- config: {
- container: "#item-3",
- adapter: {
- type: "standard",
- xDimensions: 'year',
- yDimensions: 'indicator',
- valueDimensions: 'value',
- seriesDimensions: ['region']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "Forest"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "region", "year", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
-
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "region": "ASC",
- "year": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-4',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-4",
- config: {
- container: "#item-4",
- adapter: {
- type: "pie",
- valueDimensions: 'value',
- seriesDimensions: ['region']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- plotBackgroundColor: null,
- plotBorderWidth: null,
- plotShadow: false,
- type: 'pie'
- },
- title: {
- //enable : false
- text: ''
- },
- tooltip: {
- pointFormat: '{series.name}: {point.percentage:.1f}%'
- },
- plotOptions: {
- pie: {
- allowPointSelect: true,
- cursor: 'pointer',
- dataLabels: {
- enabled: true
- },
- showInLegend: true
- }
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2015,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "Forest"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "region", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "region": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-5',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-5",
- config: {
- container: "#item-5",
- adapter: {
- type: "standard",
- xDimensions: 'year',
- yDimensions: 'indicator',
- valueDimensions: 'value',
- seriesDimensions: ['subregion']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- crosshairs: "mixed",
- shared: true
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "Forest"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "subregion", "year", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "subregion": "ASC",
- "year": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-6',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-5",
- config: {
- container: "#item-6",
- adapter: {
- type: "standard",
- xDimensions: 'year',
- yDimensions: 'indicator',
- valueDimensions: 'value',
- seriesDimensions: ['domain']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "Forest"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "domain", "year", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "domain": "ASC",
- "year": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-7',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-7",
- config: {
- container: "#item-7",
- adapter: {
- type: "standard",
- xDimensions: 'year',
- yDimensions: 'indicator',
- valueDimensions: 'value',
- seriesDimensions: ['incomes']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "Forest"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "incomes", "year", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "incomes": "ASC",
- "year": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-8',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-8",
- config: {
- container: "#item-8",
- adapter: {
- type: "pie",
- valueDimensions: 'value',
- seriesDimensions: ['subregion']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- plotBackgroundColor: null,
- plotBorderWidth: null,
- plotShadow: false,
- type: 'pie'
- },
- title: {
- //text: 'Browser market shares January, 2015 to May, 2015'
- },
- tooltip: {
- pointFormat: '{series.name}: {point.percentage:.1f}%'
- },
- plotOptions: {
- pie: {
- allowPointSelect: true,
- cursor: 'pointer',
- dataLabels: {
- enabled: true
- },
- showInLegend: true
- }
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2015,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "Forest"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "subregion", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "subregion": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-9',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-9",
- config: {
- container: "#item-9",
- adapter: {
- type: "pie",
- valueDimensions: 'value',
- seriesDimensions: ['domain']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- plotBackgroundColor: null,
- plotBorderWidth: null,
- plotShadow: false,
- type: 'pie'
- },
- title: {
- //text: 'Browser market shares January, 2015 to May, 2015'
- },
- tooltip: {
- pointFormat: '{series.name}: {point.percentage:.1f}%'
- },
- plotOptions: {
- pie: {
- allowPointSelect: true,
- cursor: 'pointer',
- dataLabels: {
- enabled: true
- },
- showInLegend: true
- }
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2015,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "Forest"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "domain", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "domain": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-10',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-10",
- config: {
- container: "#item-10",
- adapter: {
- type: "pie",
- valueDimensions: 'value',
- seriesDimensions: ['incomes']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- plotBackgroundColor: null,
- plotBorderWidth: null,
- plotShadow: false,
- type: 'pie'
- },
- title: {
- //text: 'Browser market shares January, 2015 to May, 2015'
- },
- tooltip: {
- pointFormat: '{series.name}: {point.percentage:.1f}%'
- },
- plotOptions: {
- pie: {
- allowPointSelect: true,
- cursor: 'pointer',
- dataLabels: {
- enabled: true
- },
- showInLegend: true
- }
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2015,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "Forest"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "incomes", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "incomes": "ASC"
- }
- }
- ]
- }
- ]
- }
- },
-
- "donor_sector": {
-
- download: {
- "target": "2.PRODUCTION.zip"
- },
-
- filter: [
- {
- "type": "distinct",
- "uid": "FLUDE_TOPIC_2",
- "column": "indicator",
- "containerType": "baseContainer",
- "title": "Indicator",
- "defaultCodes": ["ProdFor"],
- "components": [
- {
- "type": "codelist",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "uid" : "FLUDE_INDICATORS",
- "title": {"EN": "Distinct"},
- // name is the ID output in tehe filter getValues()
- "name": "indicator",
- "config": {
- "defaultsource": []
- }
- }
- ]
- },
- {
- "type": "static",
- "containerType": "baseContainer",
- "title": "Year",
- "components": [
- {
- "type": "time",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "title": {"EN": "Year"},
- "name": "year",
- config: {
- "defaultsource": [
- {"value": "2015", "label": "2015", "selected": true},
- {"value": "2010", "label": "2010", "selected": false},
- {"value": "2005", "label": "2005", "selected": false},
- {"value": "2000", "label": "2000", "selected": false},
- {"value": "1990", "label": "1990", "selected": false}
- ]
- }
- }
- ]
- },
- {
- "type": "codelist",
- "containerType": "baseContainer",
- "title": "Domains",
- "components": [
- {
- "uid": "FLUDE_DOMAINS",
- "type": "codelist",
- "name": "domain",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "title": {"EN": "Codelist"},
-
- config: {
- "defaultsource": [
- //{"value": null, "label": "All", "selected": true},
- //{"value": null, "label": "All", "selected": true, "removeFilter": true},
- ],
- "enableMultiselection": true
- }
- }
- ]
- },
- {
- "type": "codelist",
- "containerType": "baseContainer",
- "title": "Incomes",
- "components": [
- {
- "uid": "FLUDE_INCOMES",
- "type": "codelist",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "title": {"EN": "Codelist"},
- "name": "incomes",
- config: {
- "defaultsource": [
- //{"value": null, "label": "All", "selected": true},
- ],
- "enableMultiselection": true
- }
- }
- ]
- },
- {
- "type": "codelist",
- "containerType": "baseContainer",
- "title": "Subregions",
- "components": [
- {
- "uid": "FLUDE_SUBREGIONS",
- "type": "codelist",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "title": {"EN": "Codelist"},
- "name": "subregion",
- config: {
- "defaultsource": [
- //{"value": null, "label": "All", "selected": true},
- ],
- "enableMultiselection": true
- }
- }
- ]
- }
- ],
-
- dashboard: {
- //data cube's uid
- uid: "FLUDE_TOPIC_2",
-
- //data base filter
- filter: [],
-
- //bridge configuration
- bridge: {
-
- type: "d3p"
-
- },
-
- /*
- * in case bridge is WDS this is the cube metadata.
- * if bridge is D3P this is ignored
- * */
- metadata: {},
-
- items: [
- {
- id: 'item-1',
- type: 'map',
- class: "fx-map-chart",
- //needed if layout = injected
- container: "#item-1",
- config: {
- container: "#item-1",
- leaflet: {
- zoomControl: false,
- attributionControl: true,
- scrollWheelZoom: false,
- minZoom: 2
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year', 'domain', 'incomes', 'subregion'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2015,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "ProdFor"
- ]
- }
- ]
- }
- }
- }
- }
- ]
- },
- {
- id: 'item-2',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-2",
- config: {
- container: "#item-2",
- adapter: {
- type: "standard",
- xDimensions: 'time',
- yDimensions: 'element',
- valueDimensions: 'value',
- seriesDimensions: ['country']
- },
- template: {
- //"title": "Top 25..."
- },
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year', 'domain', 'incomes', 'subregion'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2015,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "ProdFor"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "order",
- "parameters": {
- "value": "DESC"
- }
- },
- {
- "name": "page",
- "parameters": {
- "perPage": 25,
- "page": 1
- }
- }
- ]
- },
- {
- id: 'item-3',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-3",
- config: {
- container: "#item-3",
- adapter: {
- type: "standard",
- xDimensions: 'year',
- yDimensions: 'indicator',
- valueDimensions: 'value',
- seriesDimensions: ['region']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "ProdFor"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "region", "year", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "region": "ASC",
- "year": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-7',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-7",
- config: {
- container: "#item-7",
- adapter: {
- type: "pie",
- valueDimensions: 'value',
- seriesDimensions: ['region']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- plotBackgroundColor: null,
- plotBorderWidth: null,
- plotShadow: false,
- type: 'pie'
- },
- title: {
- //text: 'Browser market shares January, 2015 to May, 2015'
- },
- tooltip: {
- pointFormat: '{series.name}: {point.percentage:.1f}%'
- },
- plotOptions: {
- pie: {
- allowPointSelect: true,
- cursor: 'pointer',
- dataLabels: {
- enabled: true
- },
- showInLegend: true
- }
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2015,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "ProdFor"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "region", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "region": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-4',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-4",
- config: {
- container: "#item-4",
- adapter: {
- type: "standard",
- xDimensions: 'year',
- yDimensions: 'indicator',
- valueDimensions: 'value',
- seriesDimensions: ['subregion']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "ProdFor"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "subregion", "year", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "subregion": "ASC",
- "year": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-5',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-5",
- config: {
- container: "#item-5",
- adapter: {
- type: "standard",
- xDimensions: 'year',
- yDimensions: 'indicator',
- valueDimensions: 'value',
- seriesDimensions: ['domain']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "ProdFor"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "domain", "year", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "domain": "ASC",
- "year": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-6',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-6",
- config: {
- container: "#item-6",
- adapter: {
- type: "standard",
- xDimensions: 'year',
- yDimensions: 'indicator',
- valueDimensions: 'value',
- seriesDimensions: ['incomes']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "ProdFor"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "incomes", "year", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "incomes": "ASC",
- "year": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-8',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-8",
- config: {
- container: "#item-8",
- adapter: {
- type: "pie",
- valueDimensions: 'value',
- seriesDimensions: ['subregion']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- plotBackgroundColor: null,
- plotBorderWidth: null,
- plotShadow: false,
- type: 'pie'
- },
- title: {
- //text: 'Browser market shares January, 2015 to May, 2015'
- },
- tooltip: {
- pointFormat: '{series.name}: {point.percentage:.1f}%'
- },
- plotOptions: {
- pie: {
- allowPointSelect: true,
- cursor: 'pointer',
- dataLabels: {
- enabled: true
- },
- showInLegend: true
- }
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2015,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "ProdFor"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "subregion", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "subregion": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-9',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-9",
- config: {
- container: "#item-9",
- adapter: {
- type: "pie",
- valueDimensions: 'value',
- seriesDimensions: ['domain']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- plotBackgroundColor: null,
- plotBorderWidth: null,
- plotShadow: false,
- type: 'pie'
- },
- title: {
- //text: 'Browser market shares January, 2015 to May, 2015'
- },
- tooltip: {
- pointFormat: '{series.name}: {point.percentage:.1f}%'
- },
- plotOptions: {
- pie: {
- allowPointSelect: true,
- cursor: 'pointer',
- dataLabels: {
- enabled: true
- },
- showInLegend: true
- }
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2015,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "ProdFor"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "domain", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": [
- "um"
- ],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "domain": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-10',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-10",
- config: {
- container: "#item-10",
- adapter: {
- type: "pie",
- valueDimensions: 'value',
- seriesDimensions: ['incomes']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- plotBackgroundColor: null,
- plotBorderWidth: null,
- plotShadow: false,
- type: 'pie'
- },
- title: {
- //text: 'Browser market shares January, 2015 to May, 2015'
- },
- tooltip: {
- pointFormat: '{series.name}: {point.percentage:.1f}%'
- },
- plotOptions: {
- pie: {
- allowPointSelect: true,
- cursor: 'pointer',
- dataLabels: {
- enabled: true
- },
- showInLegend: true
- }
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2015,
- "to": 2015
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "ProdFor"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "incomes", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "incomes": "ASC"
- }
- }
- ]
- }
- ]
- }
- },
-
- "country_donor_sector": {
-
- download: {
- "target": "3.DISTURBANCE AND FOREST DEGRADATION.zip"
- },
-
- filter: [
- {
- "type": "distinct",
- "uid": "FLUDE_TOPIC_3",
- "column": "indicator",
- "containerType": "baseContainer",
- "title": "Indicator",
- "defaultCodes": ["InvSppAreaToT"],
- "components": [
- {
- "type": "codelist",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "uid" : "FLUDE_INDICATORS",
- "title": {"EN": "Distinct"},
- // name is the ID output in tehe filter getValues()
- "name": "indicator",
- "config": {
- "defaultsource": []
- }
- }
- ]
- },
- {
- "type": "static",
- "containerType": "baseContainer",
- "title": "Year",
- "components": [
- {
- "type": "time",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "title": {"EN": "Year"},
- "name": "year",
- config: {
- "defaultsource": [
- {"value": "2010", "label": "2010", "selected": true},
- {"value": "2005", "label": "2005", "selected": false},
- {"value": "2000", "label": "2000", "selected": false},
- {"value": "1990", "label": "1990", "selected": false}
- ]
- }
- }
- ]
- },
- {
- "type": "codelist",
- "containerType": "baseContainer",
- "title": "Domains",
- "components": [
- {
- "uid": "FLUDE_DOMAINS",
- "type": "codelist",
- "name": "domain",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "title": {"EN": "Codelist"},
-
- config: {
- "defaultsource": [
- //{"value": null, "label": "All", "selected": true},
- //{"value": null, "label": "All", "selected": true, "removeFilter": true},
- ],
- "enableMultiselection": true
- }
- }
- ]
- },
- {
- "type": "codelist",
- "containerType": "baseContainer",
- "title": "Incomes",
- "components": [
- {
- "uid": "FLUDE_INCOMES",
- "type": "codelist",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "title": {"EN": "Codelist"},
- "name": "incomes",
- config: {
- "defaultsource": [
- //{"value": null, "label": "All", "selected": true},
- ],
- "enableMultiselection": true
- }
- }
- ]
- },
- {
- "type": "codelist",
- "containerType": "baseContainer",
- "title": "Subregions",
- "components": [
- {
- "uid": "FLUDE_SUBREGIONS",
- "type": "codelist",
- "componentType": "dropDownList-FENIX",
- "lang": "EN",
- "title": {"EN": "Codelist"},
- "name": "subregion",
- config: {
- "defaultsource": [
- //{"value": null, "label": "All", "selected": true}
- ],
- "enableMultiselection": true
- }
- }
- ]
- }
- ],
-
- dashboard: {
- //data cube's uid
- uid: "FLUDE_TOPIC_3",
-
- //data base filter
- filter: [],
-
- //bridge configuration
- bridge: {
-
- type: "d3p"
-
- },
-
- /*
- * in case bridge is WDS this is the cube metadata.
- * if bridge is D3P this is ignored
- * */
- metadata: {},
-
- items: [
- {
- id: 'item-1',
- type: 'map',
- class: "fx-map-chart",
- //needed if layout = injected
- container: "#item-1",
- config: {
- container: "#item-1",
- leaflet: {
- zoomControl: false,
- attributionControl: true,
- scrollWheelZoom: false ,
- minZoom: 2
- }
-
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year', 'domain', 'incomes', 'subregion'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2010,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "InvSppAreaToT"
- ]
- }
- ]
- }
- }
- }
- }
- ]
- },
-
-
- {
- id: 'item-2',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-2",
- config: {
- container: "#item-2",
- adapter: {
- type: "standard",
- xDimensions: 'time',
- yDimensions: 'element',
- valueDimensions: 'value',
- seriesDimensions: ['country']
- },
- template: {
- //"title": "Top 25..."
- },
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year', 'domain', 'incomes', 'subregion'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "InvSppAreaToT"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "order",
- "parameters": {
- "value": "DESC"
- }
- },
- {
- "name": "page",
- "parameters": {
- "perPage": 25,
- "page": 1
- }
- }
- ]
- },
- {
- id: 'item-3',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-3",
- config: {
- container: "#item-3",
- adapter: {
- type: "standard",
- xDimensions: 'year',
- yDimensions: 'indicator',
- valueDimensions: 'value',
- seriesDimensions: ['region']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "InvSppAreaToT"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "region", "year", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "region": "ASC",
- "year": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-7',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-7",
- config: {
- container: "#item-7",
- adapter: {
- type: "pie",
- valueDimensions: 'value',
- seriesDimensions: ['region']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- plotBackgroundColor: null,
- plotBorderWidth: null,
- plotShadow: false,
- type: 'pie'
- },
- title: {
- //text: 'Browser market shares January, 2015 to May, 2015'
- },
- tooltip: {
- pointFormat: '{series.name}: {point.percentage:.1f}%'
- },
- plotOptions: {
- pie: {
- allowPointSelect: true,
- cursor: 'pointer',
- dataLabels: {
- enabled: true
- },
- showInLegend: true
- }
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2010,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "InvSppAreaToT"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "region", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "region": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-4',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-4",
- config: {
- container: "#item-4",
- adapter: {
- type: "standard",
- xDimensions: 'year',
- yDimensions: 'indicator',
- valueDimensions: 'value',
- seriesDimensions: ['subregion']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "InvSppAreaToT"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "subregion", "year", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "subregion": "ASC",
- "year": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-5',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-5",
- config: {
- container: "#item-5",
- adapter: {
- type: "standard",
- xDimensions: 'year',
- yDimensions: 'indicator',
- valueDimensions: 'value',
- seriesDimensions: ['domain']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "InvSppAreaToT"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "domain", "year", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "domain": "ASC",
- "year": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-6',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-6",
- config: {
- container: "#item-6",
- adapter: {
- type: "standard",
- xDimensions: 'year',
- yDimensions: 'indicator',
- valueDimensions: 'value',
- seriesDimensions: ['incomes']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 1990,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "InvSppAreaToT"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "incomes", "year", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "incomes": "ASC",
- "year": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-8',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-8",
- config: {
- container: "#item-8",
- adapter: {
- type: "pie",
- valueDimensions: 'value',
- seriesDimensions: ['subregion']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- plotBackgroundColor: null,
- plotBorderWidth: null,
- plotShadow: false,
- type: 'pie'
- },
- title: {
- //text: 'Browser market shares January, 2015 to May, 2015'
- },
- tooltip: {
- pointFormat: '{series.name}: {point.percentage:.1f}%'
- },
- plotOptions: {
- pie: {
- allowPointSelect: true,
- cursor: 'pointer',
- dataLabels: {
- enabled: true
- },
- showInLegend: true
- }
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2010,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "InvSppAreaToT"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "subregion", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "subregion": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-9',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-9",
- config: {
- container: "#item-9",
- adapter: {
- type: "pie",
- valueDimensions: 'value',
- seriesDimensions: ['domain']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- type: "column"
- },
- tooltip: {
- valueSuffix: ' 1000 HA'
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2010,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "InvSppAreaToT"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "domain", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "domain": "ASC"
- }
- }
- ]
- },
- {
- id: 'item-10',
- type: 'chart',
- class: "fx-timeseries-ecample",
- //needed if layout = injected
- container: "#item-10",
- config: {
- container: "#item-10",
- adapter: {
- type: "pie",
- valueDimensions: 'value',
- seriesDimensions: ['incomes']
- },
- template: {},
- creator: {
- chartObj: {
- chart: {
- plotBackgroundColor: null,
- plotBorderWidth: null,
- plotShadow: false,
- type: 'pie'
- },
- title: {
- //text: 'Browser market shares January, 2015 to May, 2015'
- },
- tooltip: {
- pointFormat: '{series.name}: {point.percentage:.1f}%'
- },
- plotOptions: {
- pie: {
- allowPointSelect: true,
- cursor: 'pointer',
- dataLabels: {
- enabled: true
- },
- showInLegend: true
- }
- }
- }
- }
- },
- // for now it takes the id, TODO: add uid as well
- allowedFilter: ['indicator', 'year'],
- filter: [
- {
- "name": "filter",
- "parameters": {
- "rows": {
- "year": {
- "time": [
- {
- "from": 2010,
- "to": 2010
- }
- ]
- },
- "indicator": {
- "codes": [
- {
- "uid": "FLUDE_INDICATORS",
- "codes": [
- "InvSppAreaToT"
- ]
- }
- ]
- }
- }
- }
- },
- {
- "name": "group",
- "parameters": {
- "by": [
- "incomes", "indicator"
- ],
- "aggregations": [
- {
- "columns": ["value"],
- "rule": "AVG"
- },
- {
- "columns": ["um"],
- "rule": "FIRST"
- }
- ]
- }
- },
- {
- "name": "order",
- "parameters": {
- "incomes": "ASC"
- }
- }
- ]
- }
-
-
- ]
- }
- }
-
- }
-
-
-
-});
\ No newline at end of file
diff --git a/config/browse/flude-topics.json b/config/browse/flude-topics.json
deleted file mode 100644
index fe7974bf..00000000
--- a/config/browse/flude-topics.json
+++ /dev/null
@@ -1,42 +0,0 @@
-{
- "multiple" : false,
- "width" : "99%",
- "data": [
- {
- "id": "FLUDE_TOPIC_1",
- "text": "Forest Area and Characteristics "
- },
- {
- "id": "FLUDE_TOPIC_2",
- "text": "Production"
- },
- {
- "id": "FLUDE_TOPIC_3",
- "text": "Disturbance and Forest Degradation"
- },
- {
- "id": "FLUDE_TOPIC_4",
- "text": "Measuring Progress towards SFM"
- },
- {
- "id": "FLUDE_TOPIC_5",
- "text": "Biodiversity and Conservation"
- },
- {
- "id": "FLUDE_TOPIC_6",
- "text": "Protective Functions and Selective Ecosystem Services"
- },
- {
- "id": "FLUDE_TOPIC_7",
- "text": "Economics/Livelihood"
- },
- {
- "id": "FLUDE_TOPIC_8",
- "text": "Ownership"
- },
- {
- "id": "ANNUAL_DATA",
- "text": "Annual Data"
- }
- ]
-}
\ No newline at end of file
diff --git a/config/browse/lateral_menu.json b/config/browse/lateral_menu.json
deleted file mode 100644
index 8bef67b9..00000000
--- a/config/browse/lateral_menu.json
+++ /dev/null
@@ -1,89 +0,0 @@
-{
- "core": {
- "multiple": false,
- "data": [
- {
- "id": "demographic",
- "text": "Demographic and social stats",
- "state" : {
- "opened" : true
- },
- "children": [
- {
- "id": "population",
- "text": "Population"
- },
- {
- "id": "education",
- "text": "Education"
- },
- {
- "id": "health",
- "text": "Health"
- },
- {
- "id": "labour",
- "text": "Labour"
- }
- ]
- },
- {
- "id": "economics",
- "text": "Economic statistics",
- "state" : {
- "opened" : true
- },
- "children": [
- {
- "id": "balance_of_payments",
- "text": "Balance of Payments"
- },
-
-
- {
- "id": "gdp",
- "text": "GDP"
- },
-
- {
- "id": "monetary_statistics",
- "text": "Monetary Statistics"
- },
- {
- "id": "financial_flows",
- "text": "Financial Flows"
- },
- {
- "id": "public_finance",
- "text": "Public Finance"
- },
- {
- "id": "debt",
- "text": "Debt"
- },
- {
- "id": "inflation",
- "text": "Inflation"
- },
- {
- "id": "energy",
- "text": "Energy"
- },
- {
- "id": "tourism",
- "text": "Tourism"
- },
- {
- "id": "infrastructure",
- "text": "Infrastructure"
- }
-
- ]
- }
- ]
- },
- "plugins": [
- "checkbox",
- "wholerow"
- ]
-}
\ No newline at end of file
diff --git a/config/browse/resume_countries.json b/config/browse/resume_countries.json
deleted file mode 100644
index b651918c..00000000
--- a/config/browse/resume_countries.json
+++ /dev/null
@@ -1,148 +0,0 @@
-{
- "DZA": {
- "title": "Algeria",
- "flag": "",
- "gaul_code": "4",
- "area": "2381741",
- "capital_city": "Algiers",
- "currency": "Algerian Dinar"
- },
- "AGO": {
- "title": "Angola",
- "flag": "",
- "gaul_code": "8",
- "area": "1246700",
- "capital_city": "Luanda",
- "currency": "Angola Kwanza"
- },
- "BEN": {
- "title": "Benin",
- "flag": "",
- "gaul_code": "29",
- "area": "114763",
- "capital_city": "Porto Novo",
- "currency": "CFA Franc"
- },
- "BWA": {
- "title": "Botswana",
- "flag": "",
- "gaul_code": "35",
- "area": "581730",
- "capital_city": "Gaborone",
- "currency": "Botswana Pula"
- },
- "BFA": {
- "title": "Burkina Faso",
- "flag": "",
- "gaul_code": "42",
- "area": "274000",
- "capital_city": "Ouagadougou",
- "currency": "CFA Franc"
- },
- "COD": {
- "title": "Congo, Dem. Republic",
- "flag": "",
- "gaul_code": "68",
- "area": "2345409",
- "capital_city": "Kinshasa",
- "currency": "Congolese Franc"
- },
- "EGY": {
- "title": "Egypt",
- "flag": "",
- "gaul_code": "40765",
- "area": "1001449",
- "capital_city": "Cairo ",
- "currency": "Egyptian Pound"
- },
- "KEN": {
- "title": "Kenya",
- "flag": "",
- "gaul_code": "133",
- "area": "610000",
- "capital_city": "Nairobi",
- "currency": "Kenyan Shilling"
- },
- "SEN": {
- "title": "Senegal",
- "flag": "",
- "gaul_code": "217",
- "area": "196722",
- "capital_city": "Dakar",
- "currency": "CFA Franc"
- },
- "ETH": {
- "title": "Ethiopia",
- "flag": "",
- "gaul_code": "79",
- "area": "1104300",
- "capital_city": "Addis Ababa",
- "currency": "Ethiopian Birr"
- },
- "TZA": {
- "title": "Tanzania",
- "flag": "",
- "gaul_code": "257",
- "area": "945090",
- "capital_city": "Dar es Salaam",
- "currency": "Tanzanian Shilling"
- },
- "UGA": {
- "title": "Uganda",
- "flag": "",
- "gaul_code": "253",
- "area": "241550.7",
- "capital_city": "Kampala",
- "currency": "Uganda Shilling"
- },
- "NGA": {
- "title": "Nigeria",
- "flag": "",
- "gaul_code": "182",
- "area": "923768",
- "capital_city": "Abuja",
- "currency": "Naira"
- },
- "COG": {
- "title": "Congo",
- "flag": "",
- "gaul_code": "59",
- "area": "342000",
- "capital_city": "Brazzaville",
- "currency": "CFA Franc"
- },
- "BDI": {
- "title": "Burundi",
- "flag": "",
- "gaul_code": "43",
- "area": "27834",
- "capital_city": "Bujumbura",
- "currency": "Burundi Franc"
- },
- "CMR": {
- "title": "Cameroon",
- "flag": "",
- "gaul_code": "45",
- "area": "475650",
- "capital_city": "Yaounde",
- "currency": "CFA Franc"
- },
- "CPV": {
- "title": "Cabo Verde",
- "flag": "",
- "gaul_code": "47",
- "area": "4033",
- "capital_city": "Praia",
- "currency": "Escudo"
- },
- "CAF": {
- "title": "Central African Republic",
- "flag": "",
- "gaul_code": "49",
- "area": "622984",
- "capital_city": "Bangui",
- "currency": "CFA Franc"
- }
-
-
-}
diff --git a/config/event_category.js b/config/event_category.js
deleted file mode 100644
index c2140c7a..00000000
--- a/config/event_category.js
+++ /dev/null
@@ -1,6 +0,0 @@
-define({
- "1":"AFO technical workshops",
- "2":"AFO conferences & events",
- "3":"AFO partners' events",
- "4":"AFO partners' corner"
-});
\ No newline at end of file
diff --git a/config/home/home-config.js b/config/home/home-config.js
new file mode 100644
index 00000000..71457e98
--- /dev/null
+++ b/config/home/home-config.js
@@ -0,0 +1,94 @@
+/*global define*/
+
+define(function () {
+
+ 'use strict';
+
+ return {
+
+ dashboard: {
+ //default dataset id
+ uid: "adam_usd_commitment",
+
+ items: [
+ {
+ id: 'home-map',
+ type: 'map',
+ config: {
+ geoSubject: 'gaul0',
+ colorRamp: 'Blues',//'GnBu', //Blues, Greens,
+ //colorRamp values: http://fenixrepo.fao.org/cdn/fenix/fenix-ui-map-datasets/colorramp.png
+
+ legendtitle: 'ODA 2014',
+
+ fenix_ui_map: {
+
+ plugins: {
+ fullscreen: false,
+ disclaimerfao: false
+ },
+ guiController: {
+ overlay: false,
+ baselayer: false,
+ wmsLoader: false
+ },
+
+ baselayers: {
+ "cartodb": {
+ title_en: "Baselayer",
+ url: 'http://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png',
+ subdomains: 'abcd',
+ maxZoom: 19
+ }
+ },
+ labels: true,
+ boundaries: true
+ }
+ },
+
+ filter: { //FX-filter format
+ //parentsector_code: ["600"],
+ year: [{value: 2014, parent: 'from'}, {value: 2014, parent: 'to'}]
+ },
+ //["10019", 94.14012907569995, "160", 5 more...]
+ //[ "10019", "160", "million_usd", "Million USD", "Upper Middle Income Countries and Territories
+ // (UMICs)", "Mauritius", "Million USD" ]
+ postProcess: [
+ {
+ "name": "group",
+ "parameters": {
+ "by": [
+ "gaul0"
+ ],
+ "aggregations": [
+ {
+ "columns": ["value"],
+ "rule": "SUM"
+ },
+ {
+ "columns": ["unitcode"],
+ "rule": "first"
+ },
+ {
+ "columns": ["unitname"],
+ "rule": "first"
+ }
+ ]
+ }
+ },
+ {
+ "name": "select",
+ "parameters": {
+ "query": "WHERE gaul0<>?",
+ "queryParameters": [{"value": "NA"}]
+ }
+ }
+ ]//
+ }
+ ]
+ }
+ }
+
+
+
+});
\ No newline at end of file
diff --git a/config/home/test-data.js b/config/home/test-data.js
new file mode 100644
index 00000000..ec0dec58
--- /dev/null
+++ b/config/home/test-data.js
@@ -0,0 +1,34 @@
+define(function() {
+ return [
+ ["152","Malawi",10016,"LDCs"],
+ ["152","Malawi",10016,"LDCs"],
+ ["181","Niger",10016,"LDCs"],
+ ["181","Niger",10016,"LDCs"],
+ ["181","Niger",10016,"LDCs"],
+ ["205","Rwanda",10016,"LDCs"],
+ ["217","Senegal",10016,"LDCs"],
+ ["257","United Republic of Tanzania",10016,"LDCs"],
+ ["257","United Republic of Tanzania",10016,"LDCs"],
+ ["257","United Republic of Tanzania",10016,"LDCs"],
+ ["257","United Republic of Tanzania",10016,"LDCs"],
+ ["257","United Republic of Tanzania",10016,"LDCs"],
+ ["270","Zambia",10016,"LDCs"],
+ ["270","Zambia",10016,"LDCs"],
+ ["270","Zambia",10016,"LDCs"],
+ ["42","Burkina Faso",10016,"LDCs"],
+ ["90","Gambia",10016,"LDCs"],
+ ["105","Guinea-Bissau",10016,"LDCs"],
+ ["155","Mali",10016,"LDCs"],
+ ["155","Mali",10016,"LDCs"],
+ ["181","Niger",10016,"LDCs"],
+ ["181","Niger",10016,"LDCs"],
+ ["181","Niger",10016,"LDCs"],
+ ["205","Rwanda",10016,"LDCs"],
+ ["205","Rwanda",10016,"LDCs"],
+ ["221","Sierra Leone",10016,"LDCs"],
+ ["257","United Republic of Tanzania",10016,"LDCs"],
+ ["270","Zambia",10016,"LDCs"],
+ ["180","Nicaragua",10018,"LMICs"],
+ ["180","Nicaragua",10018,"LMICs"]
+ ];
+});
\ No newline at end of file
diff --git a/config/submodules/fx-chart/highcharts_template.js b/config/submodules/fx-chart/highcharts_template.js
index 4ad4417a..af74132d 100644
--- a/config/submodules/fx-chart/highcharts_template.js
+++ b/config/submodules/fx-chart/highcharts_template.js
@@ -5,262 +5,397 @@ define(function () {
return {
- //Line chart
chart: {
- events: {},
-
- type: 'line', //Tipo di grafico: area, areaspline, boxplot, bubble, column, line, pie, scatter, spline
-
- alignTicks: false,
- backgroundColor: '#FFFFFF', //Colore di background
- //borderColor: '#3fa8da', //Colore bordo intorno
- //borderWidth: 1, //Spessore bordo intorno
- //borderRadius: 0, //Smusso bordo intorno
- //margin: [5,5,5,5], //Margine intorno (vince sullo spacing)
- spacing: [20, 1, 1, 1],//Spacing intorno (molto simile al margin - Di default il bottom è 15, qui l'ho messo a 10 per essere uguale agli altri)
- //plotBackgroundColor: 'red', //Colore di background solo area chart
- plotBorderColor: '#ffffff', //Colore bordo intorno solo area chart
- plotBorderWidth: 0, //Spessore bordo intorno solo area chart
- //showAxes: false, //Mostra gli assi quando le serie sono aggiunte dinamicamente
- style: {
- fontFamily: 'FrutigerLTW02-45Light', // Font di tutto
- fontSize: '12px', // La dimensione qui vale solo per i titoli
- fontWeight: 300 // Con Roboto è molto bello giocare con i pesi
- },
- zoomType: 'xy', //Attiva lo zoom e stabilisce in quale dimensione
- //selectionMarkerFill: 'rgba(0,0,0,0.25)',//Colore di fonfo della selezione per lo zoom (trasparente per far vedere sotto)
+ //spacing: [10, 10, 27, 10], // better spacing when chart exports
+ spacing: [10, 10, 27, 10], // was [10, 10, 15, 10]
+ events: {
+ load: function (event) {
+
+ Highcharts.setOptions({
+ lang: {
+ toggleDataLabels: 'Display/hide values on the chart',
+ printDownload: 'Print and Download chart options'
+ }
+ });
+
+ // if(this.series.length < 2){
+ // $.each(this.series, function (i, serie) {
+ // serie.update({
+ // showInLegend: false
+ // })
+ // });
+ //this.redraw();
+ // }
+
+ if (this.options.chart.forExport) {
+ this.xAxis[0].update({
+ categories: this.xAxis[0].categories,
+ labels: {
+ style: {
+ width: '50px',
+ fontSize: '6px'
+ },
+ step: 1
+ }
+ }, false);
+
+ Highcharts.each(this.yAxis, function (y) {
+ y.update({
+ title: {
+ style: {
+ fontSize: '6px'
+ }
+ },
+ labels: {
+ style: {
+ fontSize: '6px'
+ }
+ }
+ }, false);
+ });
+ $.each(this.series, function (i, serie) {
+ if(!serie.visible){
+ serie.update({
+ showInLegend: false
+ })
+ } else {
+ if(serie.options.dataLabels.enabled){
+ serie.update({
+ marker : {
+ radius: 2
+ },
+ dataLabels: {
+ enabled: true,
+ style: {
+ fontSize: '6px'
+ }
+ }
+ })
+ } else {
+ serie.update({
+ marker: {
+ radius: 2
+ }
+ })
+ }
+ }
+ });
- resetZoomButton: {
- position: {
- align: 'right', //Allineamento zoom orizzontale
- //verticalAlign:'middle' //Allineamento zoom verticale
- x: -10 //Posizione del pulsante rispetto all'allineamento (valori positivi > destra) e al PLOT
+ /** Highcharts.each(this.series, function (series) {
+ series.update({
+ marker : {
+ radius: 2
+ },
+ dataLabels: {
+ enabled: true,
+ style: {
+ fontSize: '6px',
+ color: series.color,
+ textShadow: 0
+ }
+ }
+ }, false);
+
+ });**/
+ this.redraw();
+ }
},
- theme: {
- fill: '#FFFFFF', //Colore di background pulsante reset zoom
- stroke: '#666666', //Colore di stroke pulsante reset zoom
- width: 60, //Larghezza del pulsante reset
- //r:0, //Smusso pulsante reset zoom
- style: {
- textAlign: 'center', //CSS style aggiunto da me per centrare il testo
- fontSize: 10
- },
- states: {
- hover: {
- fill: '#e6e6e6', //Colore di background hover pulsante reset zoom
- stroke: '#666666', //Colore di stroke hover pulsante reset zoom
- style: {
- //color: 'white' //Colore testo hover pulsante reset zoom
- }
+ beforePrint: function (event) {
+ var $chart = $(this.renderTo);
+
+ var parent = $(this.renderTo).parent().prev();
+ var title = parent.find("p").text();
+
+ //Set chart title and set subtitle to empty string
+ this.setTitle(
+ {text: title, style: {
+ fontSize: '12px'
+ }}, {text: ""});
+
+ //Only show in the legend the series that are visible
+ $.each(this.series, function (i, serie) {
+ if(!serie.visible){
+ serie.update({
+ showInLegend: false
+ })
}
+ });
+
+
+ if(this.options.chart.type === 'pie') {
+ // Configure printing of pie charts
+ /** this.options.exporting = {
+ chartOptions: {
+ legend: {
+ title: '',
+ enabled: true,
+ align: 'center',
+ layout: 'vertical',
+ useHTML: true,
+ labelFormatter: function () {
+ var val = this.y;
+ if (val.toFixed(0) < 1) {
+ val = (val * 1000).toFixed(2) + ' K'
+ } else {
+ val = val.toFixed(2) + ' USD Mil'
+ }
+
+ return '' + this.name.trim() + ': ' + this.percentage.toFixed(2) + '% (' + val + ')
';
+ }
+ }
+ }
+ }**/
}
+
+ //Hide buttons and legend title
+ $chart.find('.highcharts-button').hide();
+ $chart.find('.highcharts-legend-title').hide();
+ },
+ afterPrint: function (event) {
+ var $chart = $(this.renderTo);
+
+ //Reset series availability in legend, if it was hidden
+ $.each(this.series, function (i, serie) {
+ if(!serie.visible){
+ serie.update({
+ showInLegend: true
+ })
+ }
+ });
+
+ //Reset title and subtitle
+ this.setTitle(
+ {text: ""}, {text: "Hover for values and click and drag to zoom"});
+
+ //Re-show buttons and legend title
+ $chart.find('.highcharts-button').show();
+ $chart.find('.highcharts-legend-title').show();
}
}
+
},
- colors: [ //Colori delle charts
-
- '#0D6CAC',
- '#D5E4EB',
- '#356B76',
- '#5895BE',
- '#e19a0e',
- '#bf4343'
- ],
+
credits: {
- enabled: false //Attiva o disattiva il link di HighCharts dalla chart
+ enabled: true,
+ position: {
+ align: 'left',
+ x: 5
+ },
+ text: 'Source: OECD-CRS',
+ href: ''
},
+
exporting: {
+ sourceWidth: 700,
buttons: {
contextButton: {
- menuItems: [{
- textKey: 'downloadPNG',
- onclick: function () {
- this.exportChart();
+
+ text: "Print/Download",
+ _titleKey: "printDownload",
+ symbol: null
+
+ //, menuItems: [{
+ // textKey: 'downloadPNG',
+ // onclick: function () {
+ // this.exportChart();
+ // }
+ // }, {
+ // textKey: 'downloadJPEG',
+ // onclick: function () {
+ // this.exportChart({
+ // type: 'image/jpeg'
+ // });
+ // }
+ // }]
+ },
+ toggleDataLabelsButton: {
+ text: "Display Values",
+ _titleKey: "toggleDataLabels",
+ onclick: function (){
+
+ var button = this.exportSVGElements[2],
+ $button = $(button.element.lastChild),
+ text = $button.text() == "Display Values" ? "Hide Values" : "Display Values";
+
+ button.attr({
+ text: text
+ });
+
+ for(var idx = 0; idx < this.series.length; idx++){
+ var opt = this.series[idx].options;
+ var isShown = !opt.dataLabels.enabled;
+ this.series[idx].update({dataLabels: {enabled: isShown, style: {
+ // fontSize: '7px',
+ color: this.series[idx].color,
+ textShadow: 0
+ }}});
}
- }, {
- textKey: 'downloadJPEG',
- onclick: function () {
- this.exportChart({
- type: 'image/jpeg'
- });
+
+ }
+ }//,
+ // customPrintButton: {
+ // text: "Print",
+ // symbol: "url(/demo/gfx/sun.png)",
+ // _titleKey: "toggleDataLabels",
+ // onclick: function (){
+ // var $chart = $(this.renderTo);
+ // var highchartObj = $chart.highcharts();
+
+ // highchartObj.print();
+
+ // }
+ // }
+ },
+
+
+ chartOptions: {
+
+ xAxis: {
+ labels: {
+ y: 15,
+ style: {
+ fontSize: '6px'
}
- }]
- }
- }
- },
- navigation: { //Modifica lo stile dei bottoni e spesso del solo bottone dell'esportazione (lo sfondo)
- buttonOptions: {
- theme: {
- 'stroke-width': 1, // Peso stroke del bottone
- stroke: '#666666', // Colore stroke del bottone
- r: 0, // Smusso stroke del bottone,
- states: {
- hover: {
- stroke: '#666666', // Press stroke del bottone
- fill: '#e6e6e6' // Rollover del bottone
- },
- select: {
- stroke: '#666666', // Press stroke del bottone
- fill: '#e6e6e6' // Press Fill del bottone
+ }
+ },
+ yAxis: {
+ title: {
+ style: {
+ fontSize: '7px'
+ }
+ },
+ labels: {
+ style: {
+ fontSize: '6px'
}
}
- }
- }
- },
- legend: { //Modifica style della legenda
- enabled: true, //Attiva la legenda
- floating: false, // IMPORTANTE - Permette alla plot area di stare sotto alla legenda - si guadagna molto spazio
-
- //margin: 100, //Margine dell'intero blocco legenda dall'area di PLOT (Solo quando non è floating)
- //padding: 20, //Padding del box legenda (Ingrandisce il box)
- backgroundColor: '#FFFFFF', //Colore di sfondo della legenda
- //layout: 'horizontal', //Tipologia di legenda
- align: 'center', //Allineamento orizzontale del box della legenda (left, center, right)
- verticalAlign: 'bottom', //allineamento verticale della legenda (top, middle, bottom)
- //width: 200, //Larghezza della legenda (Aggiunge Margini e padding)
- //x: -8,//Offset della posizione della legenda rispetto all'allineamento (valori positivi > destra)
- //y: -8,//Offset della posizione della legenda rispetto all'allineamento (valori positivi > verso il basso)
- //maxHeight: 90, //IMPORTANTE - Indica l'altezza massima della legenda, se superata, mostra la paginazione (vedi sotto)
- //borderColor: '#666666', //Colore del bordo della legenda
- borderWidth: 0, //Spessore bordo della legenda
- //borderRadius: 3, //Smusso della legenda
- //itemDistance: 10, //Distanza X degli elementi quando la legenda è in verticale
- //symbolWidth: 20, //Larghezza del simbolo rettangolo quando la legenda ne ha uno (accanto al nome - default 16)
- //symbolHeight: 20, //Altezza del simbolo rettangolo quando la legenda ne ha uno (accanto al nome - default 12)
- //symbolRadius: 3, //Smusso del simbolo rettangolo quando la legenda ne ha uno (default 2)
- symbolPadding: 10, //Distanza tra simbolo e legenda (default 5)
- //itemMarginBottom: 5, //Margine inferiore di ogni elemento della legenda
- //itemMarginTop: 5, //Margine superiore di ogni elemento della legenda
- //lineHeight: 20, //Altezza di ogni elemento della legenda (il valore di default è 16)
- itemStyle: {
- cursor: 'pointer',
- color: '#666666',
- fontSize: '14px',
- fontWeight: 300
- },
- itemHiddenStyle: { //Colore dell'elemento legenda quando è disattivato
- color: '#eeeeee'
- },
- itemHoverStyle: { //Colore dell'elemento legenda in rollover
- color: '#3ca7da'
- },
- navigation: { //Paginazione Legenda - stilizzazione
- activeColor: '#3ca7da', //Colore freccia attiva legenda
- inactiveColor: '#666666', //Colore freccia disattiva legenda
- arrowSize: 8, //Dimensioni freccia
- animation: true, //Attiva/Disattiva animazione
- style: { //Stile CSS applicato solo alla navigazione della legenda
- color: '#666666',
- fontSize: '10px'
- }
- }
- },
-/* plotOptions: {
- series: {
- allowPointSelect: true, //Permette di selezionare i punti della chart
- //pointPlacement: "on", Per partire dall'origine
- animation: { // Configura l'animazione di entrata
- duration: 1000,
- easing: 'swing'
},
- connectNulls: true,
- cropThreshold: 3,
- lineWidth: 1, // IMPORTANTE - Cambia lo spessore delle linee della chart
- states: {
- hover: {
- lineWidth: 1
+ title: {
+ style: {
+ fontSize: '8px',
+ fontWeight: 'bold'
}
},
- fillColor: {
+ subtitle: {
+ style: {
+ fontSize: '8px'
+ },
+ align: 'center'
},
- marker: {
- enabled: false, //Attiva o disattiva i marker
- //symbol: 'url(http://www.mentaltoy.com/resources/logoChart.png)', //Questo paramentro carica un simbolo personalizzato. Si può anche avere una chart con marker diverse sulle linee
- symbol: 'circle', // Tipologia di marker
- radius: 4,
- lineWidth: 1,
- states: {
- hover: {
- enabled: true, // Attiva o disattiva il marker quando si passa sopra la chart
- symbol: 'circle',
- radius: 5,
- lineWidth: 2
- }
+ credits: {
+ style: {
+ fontSize: '6px',
+ margin: '30px'
+ }
+
+ },
+ legend: {
+ title: {
+ text: null
+ },
+
+ itemDistance: 50,
+ itemMarginBottom: 5,
+
+ labelFormatter: function(){
+ return ''+this.name+'';
+ },
+ itemStyle: {
+ fontSize: '6px',
+ fontWeight: 'normal'
+ },
+ enabled: false//, only one series and all info in title and subtitle
+ },
+ plotOptions: {
+ series: {
+ lineWidth: 1
+ }
+ },
+ series: {
+ // marker : {
+ // radius: 2
+ //},
+ dataLabels: {
+ enabled: false
+ // style: {
+ // fontSize: '6px',
+ // color: this.series.color,
+ // textShadow: 0
+ // }
}
}
+
}
- },*/
- title: {
- //enabled: false,
- text: '',
- x: -20 //center
- },
- subtitle: {
- text: 'FRA Data',
- x: -20
},
- xAxis: {
- gridLineWidth: 1, // IMPORTANTE - Attiva le linee verticali
- lineColor: '#e0e0e0',
- tickColor: '#e0e0e0',
- gridLineColor: '#eeeeee',
- tickLength: 7,
- //tickmarkPlacement: 'on', Per partire dall'origine
- labels: {
- y: 25,
- style: {
- color: '#666666',
- fontWeight: '300',
- fontSize: 12
- }
+
+ plotOptions: {
+ pie: {
+ allowPointSelect: true,
+ cursor: 'pointer',
+ dataLabels: {
+ enabled: false
+ },
+ showInLegend: true // shows legend for pie
},
- //type: 'datetime',
-/* dateTimeLabelFormats: { // don't display the dummy year
- //month: '%e. %b',
- year: '%Y'
- },*/
- title: {
- enabled: false,
- text: 'null'
+ series: {
+ stickyTracking: false // ensures tooltip displays only when point is hovered on
}
},
- yAxis: {
- gridLineWidth: 1, // IMPORTANTE - Attiva le linee verticali
- lineWidth: 1,
- //tickWidth: 1,
- lineColor: '#e0e0e0',
- gridLineColor: '#eeeeee',
- labels: {
- style: {
- color: '#666666',
- fontWeight: '300',
- fontSize: 12
- }
- },
+ legend: {
title: {
- enabled: false,
- text: 'null'
+ text: 'Click to hide/show'
},
- plotLines: [
- {
- value: 0,
- width: 1
- }
- ]
+ align: 'center',
+ padding: 0,
+ itemDistance: 40,
+ itemStyle: {
+ fontSize: '12px'
+ },
+ itemHiddenStyle: {
+ color: '#CCC', //Default
+ fontWeight: 'bold' //Makes it a little darker, more visible
+ }
},
+
+ subtitle: {
+ text: 'Hover for values and click and drag to zoom',
+ align: 'left',
+ x: 10
+ },
+
+ yAxis: [{ //Primary Axis
+ title: {
+ enabled: true,
+ text: 'USD Millions'
+ }
+ }],
+
+ xAxis: {crosshair: false}, // removes 'blue' highlight when hovering over points
+
+
tooltip: {
- //valueSuffix: '',
- // backgroundColor: 'rgba(255, 255, 255, 0.95)',
- borderWidth: 1,
- shadow: true,
- crosshairs: "mixed",
- // shared: true
+ formatter: function () {
+ if(!this.series.options.dataLabels.enabled) { // hide tooltip if data labels enabled
+ var unit = 'USD Mil';
+
+ if (this.series.name.indexOf('%') >= 0)
+ unit = '%'
+
+ return '' + this.x + ': ' +
+ this.series.name + '
' +
+ Highcharts.numberFormat(this.y, 2, '.', ',') + ' ' + unit;
+ } else {
+ return false;
+ }
+
+ }
+
}
};
diff --git a/config/submodules/fx-chart/jvenn_template.js b/config/submodules/fx-chart/jvenn_template.js
new file mode 100644
index 00000000..b980b06b
--- /dev/null
+++ b/config/submodules/fx-chart/jvenn_template.js
@@ -0,0 +1,23 @@
+/*global define*/
+define(function () {
+
+ 'use strict';
+
+ return {
+ displayMode: 'classic', //default = 'classic' or 'edwards'
+ displayStat: 'true', // default = true
+ xAxis: {
+ categories: []
+ },
+ series: [],
+ exporting: false,
+ width: '600',
+ colors: ["rgb(86,145,195)","rgb(118,190,166)","rgb(86,99,195)"]//,
+
+ //template: {
+ // id: "label2",
+ // css: [{left: '400px'}]
+ // }
+ //searchInput: false
+ };
+});
\ No newline at end of file
diff --git a/config/submodules/fx-filter/Config-bak.js b/config/submodules/fx-filter/Config-bak.js
new file mode 100644
index 00000000..3d70ce8c
--- /dev/null
+++ b/config/submodules/fx-filter/Config-bak.js
@@ -0,0 +1,25 @@
+/*global define*/
+define([
+ 'config/Config'
+], function (C) {
+ 'use strict';
+
+ 'use strict';
+
+ var SERVER = C.SERVER;
+ var SERVER_POSTFIX = C.CODELIST_POSTFIX;
+ var SERVICE = C.CODELIST_SERVICE;
+
+ return {
+
+ SERVER :SERVER,
+ //SERVICE_BASE_ADDRESS: SERVER + "d3s_dev/msd",
+ SERVICE_POSTFIX: SERVER_POSTFIX,
+ SERVICE_BASE_ADDRESS: SERVER + SERVICE,
+ D3S_METADATA_URL: SERVER + SERVICE + "/resources/",
+ D3S_CODELIST_URL: SERVER + SERVICE+SERVER_POSTFIX,
+ D3S_FILTER_CODES : SERVER + SERVICE + "/codes/filter",
+ OVERWRITE_DEFAULT_CONFIG : true ,
+ lang: "EN"
+ };
+});
diff --git a/config/submodules/fx-filter/Config.js b/config/submodules/fx-filter/Config.js
deleted file mode 100644
index 7651f41f..00000000
--- a/config/submodules/fx-filter/Config.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/*global define*/
-define([
- 'config/Config'
-], function (C) {
- 'use strict';
-
- 'use strict';
-
- var SERVER = C.SERVER;
-
- return {
-
- SERVER :SERVER,
- SERVICE_BASE_ADDRESS: SERVER + "d3s_dev/msd"
-
- };
-});
diff --git a/config/submodules/fx-menu/top_menu.json b/config/submodules/fx-menu/top_menu.json
index 5e366111..09a5fbe3 100644
--- a/config/submodules/fx-menu/top_menu.json
+++ b/config/submodules/fx-menu/top_menu.json
@@ -7,7 +7,7 @@
},
"target": "#home",
"label": {
- "EN": "Home"
+ "EN": ""
}
},
{
@@ -21,41 +21,20 @@
},
{
"attrs": {
- "id": "datamgmt"
+ "id": "analyse"
},
- "a_attrs": {
- "rel": "external"
- },
- "target": "datamgmt.html",
- "label": {
- "EN": "Data Management"
- }
- },
- {
- "attrs": {
- "id": "analysis"
- },
- "target": "#analysis",
- "label": {
- "EN": "Download"
- }
- },
- {
- "attrs": {
- "id": "domains"
- },
- "target": "#domains",
+ "target": "#analyse",
"label": {
- "EN": "Compare"
+ "EN": "Analyse Data"
}
},
{
"attrs": {
- "id": "methods"
+ "id": "profiles"
},
- "target": "#methods",
+ "target": "#profiles",
"label": {
- "EN": "Methods and Standards"
+ "EN": "Resource Partner Profiles"
}
}
],
diff --git a/config/submodules/fx-menu/top_menu_data_mng.json b/config/submodules/fx-menu/top_menu_data_mng.json
index 9ac9971d..0a739ae6 100644
--- a/config/submodules/fx-menu/top_menu_data_mng.json
+++ b/config/submodules/fx-menu/top_menu_data_mng.json
@@ -10,7 +10,7 @@
},
"target": "./index.html#home",
"label": {
- "EN": "Home"
+ "EN": ""
}
},
{
diff --git a/config/submodules/fx-olap/dataConfig.js b/config/submodules/fx-olap/dataConfig.js
new file mode 100644
index 00000000..6f70bcfa
--- /dev/null
+++ b/config/submodules/fx-olap/dataConfig.js
@@ -0,0 +1,94 @@
+/*global define*/
+define({
+ "rows":["recipientcode","recipientcode_EN"],
+ "cols":["year"],
+ "vals":["Value","Flag"],
+ "hiddenAttributes":["Value","Flag","Unit"],
+ /*"rows": [
+ "Element",
+ "Area",
+ "Item"
+ ],
+ "cols": ["Year"],
+ "vals": [
+ "Value",
+ "Flag"
+ ],
+ "hiddenAttributes":[
+ "AreaCode",
+ "ElementCode",
+ "ItemCode",
+ "Unit",
+ "Value",
+ "Flag",
+ "VarOrder1",
+ "VarOrder2",
+ "VarOrder3",
+ "VarOrder4"
+ ]
+ ,*/
+ "derivedAttributes": {"Unit":function(ret){return " "},"Flag":function(ret){return ""}},
+ "InstanceRenderers":[{label:"Table",func:"Table"},{label:"line chart",func:"line chart"}],
+ "InstanceAggregators":[{label:"Sum2",func:"Sum2"},{label:"Sum",func:"Sum"}],
+ "showAgg": false,
+ "showRender": false,
+ "showUnit": false,
+ "showCode": true,
+ "showFlags": false,
+ "csvText": "ADAM",
+ "cellRenderFunction": function (value, unit, flag, showUnit, showFlag) {
+ var ret = "";
+ ret += ""+ Math.floor(value.replace(" ","")*100)/100 + "
";
+ if (showUnit) {ret += " [" + unit + "]";}
+ if (showFlag && flag!="") {ret += "(" + flag + ")
";}
+ return ret + "";
+ }
+}
+);
+/*define({
+ "rows": [
+ ["Indicator", "Indicator_Code"], ["Source_Type", "Source_Code"], ["Country", "Country_Code"],
+ ["Qualifier", "Qualifier_Code"]
+ ],
+ "cols": ["Year"],
+ "vals": [
+ "Value", "Flag", "Unit"
+ ],
+ "hiddenAttributes": [
+ "Value", "Flag", "Year_Code", "Unit"
+ ],
+ "InstanceRenderers": [
+ {label: "Grid", func: "Table"},
+ {label: "OLAP", func: "OLAP"},
+ {label: "Area", func: "Area"}
+ ],
+ "InstanceAggregators": [
+ {label: "SumUnit", func: "Sum2"}
+ ],
+ derivedAttributes: {},
+ linkedAttributes: [["Qualifier", "Qualifier_Code"],
+ ["Indicator_Code", "Indicator"],
+ ["Source_Code", "Source"], ["Country", "Country_Code"]],
+ "showAgg": false,
+ "showRender": false,
+ "showUnit": false,
+ "showCode": false,
+ "showFlags": true,
+ "csvText": "RLM",
+ "cellRenderFunction": function (value, unit, flag, showUnit, showFlag) {
+ var ret = "";
+
+ ret += "" + value + "
";
+
+ if (showUnit) {
+ ret += " [" + unit + "]";
+ }
+
+ if (showFlag && flag!="") {
+ ret += "(" + flag + ")
";
+ }
+
+ return ret + "";
+ }
+});
+*/
diff --git a/config/submodules/fx-olap/gridoption.js b/config/submodules/fx-olap/gridoption.js
new file mode 100644
index 00000000..0d700dd5
--- /dev/null
+++ b/config/submodules/fx-olap/gridoption.js
@@ -0,0 +1,19 @@
+define({
+ // id: grid_demo_id,
+ //width: "100%", //"100%", // 700,
+ //height: "400", //"100%", // 330,
+ // container: "grid_demo_id" + "_div",
+ //replaceContainer: true,
+ //dataset: dsOption,
+ //resizable: false,
+ //columns: colsOption,
+ pageSize: 150
+ //pageSizeList: [15, 25, 50, 150],
+ //SigmaGridPath: 'grid/',
+ //toolbarContent: 'nav | goto | pagesize ', /*| mybutton |*/
+ /*onMouseOver: function(value, record, cell, row, colNo, rowNo, columnObj, grid) {
+ if (columnObj && columnObj.toolTip) {grid.showCellToolTip(cell, columnObj.toolTipWidth);}
+ else {grid.hideCellToolTip();}
+ },
+ onMouseOut: function(value, record, cell, row, colNo, rowNo, columnObj, grid) {grid.hideCellToolTip();}*/
+});
\ No newline at end of file
diff --git a/css/.gitignore b/css/.gitignore
new file mode 100644
index 00000000..5509140f
--- /dev/null
+++ b/css/.gitignore
@@ -0,0 +1 @@
+*.DS_Store
diff --git a/dist/css/index.css b/dist/css/index.css
index d4d6c805..cdb95bf6 100644
--- a/dist/css/index.css
+++ b/dist/css/index.css
@@ -2,7547 +2,15269 @@
/* Dist - Index */
/* RLM - Variables */
/* Variables */
-/* Fenix Utils*/
-/* Fenix Style No Variables */
-/* Utils */
-/* Base */
-/* Fenix Fonts Import */
-/* Eldorado */
-/* ELDORADO FONT STANDARD CONFIGURATION*/
-/* Eldorado */
-@font-face {
- font-family: 'eldorado_stroke';
- src: url("http://fenixapps.fao.org/repository/fenix-ui-common/css/fonts/eldorado/eldorado_stroke.eot");
- src: url("http://fenixapps.fao.org/repository/fenix-ui-common/css/fonts/eldorado/eldorado_stroke.eot?#iefix") format("embedded-opentype"), url("http://fenixapps.fao.org/repository/fenix-ui-common/css/fonts/eldorado/eldorado_stroke.woff") format("woff"), url("http://fenixapps.fao.org/repository/fenix-ui-common/css/fonts/eldorado/eldorado_stroke.ttf") format("truetype"), url("http://fenixapps.fao.org/repository/fenix-ui-common/css/fonts/eldorado/eldorado_stroke.svg#RobotoRegular") format("svg");
- font-weight: normal;
- font-style: normal; }
-[class^="icojam_"], [class*=" icojam_"] {
- font-family: 'eldorado_stroke';
- speak: none;
- font-style: normal;
- font-weight: normal;
- font-variant: normal;
- text-transform: none;
- line-height: 1;
- /* Better Font Rendering =========== */
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale; }
+.fx-sandbox {
+ padding: 0 5px; }
-/* Active Icons */
-.icojam_button_new_1:before {
- content: "\eb2a"; }
+/*!
+ * Bootstrap v3.3.5 (http://getbootstrap.com)
+ * Copyright 2011-2015 Twitter, Inc.
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
+ */
+/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
+html {
+ font-family: sans-serif;
+ -ms-text-size-adjust: 100%;
+ -webkit-text-size-adjust: 100%; }
-.icojam_button_foward_1:before {
- content: "\eb26"; }
+body {
+ margin: 0; }
-.icojam_document_text:before {
- content: "\eb26"; }
+article,
+aside,
+details,
+figcaption,
+figure,
+footer,
+header,
+hgroup,
+main,
+menu,
+nav,
+section,
+summary {
+ display: block; }
-.icojam_grid_thumbnails:before {
- content: "\e9a8"; }
+audio,
+canvas,
+progress,
+video {
+ display: inline-block;
+ vertical-align: baseline; }
-.icojam_elevation_4:before {
- content: "\e80d"; }
+audio:not([controls]) {
+ display: none;
+ height: 0; }
-.icojam_swap_horizontal_1:before {
- content: "\eb45"; }
+[hidden],
+template {
+ display: none; }
-.icojam_wedding_jewel:before {
- content: "\e96c"; }
+a {
+ background-color: transparent; }
-.icojam_inbox_receive:before {
- content: "\ea49"; }
+a:active,
+a:hover {
+ outline: 0; }
-.icojam_button_delete_1:before {
- content: "\eb24"; }
+abbr[title] {
+ border-bottom: 1px dotted; }
-.icojam_copybook_2:before {
- content: "\e7b5"; }
+b,
+strong {
+ font-weight: bold; }
-.icojam_user:before {
- content: "\ebbb"; }
+dfn {
+ font-style: italic; }
-.icojam_exit_1:before {
- content: "\eaeb"; }
+h1 {
+ font-size: 2em;
+ margin: 0.67em 0; }
-/* Icons */
-.icojam_fla:before {
- content: "\e777"; }
+mark {
+ background: #ff0;
+ color: #000; }
-.icojam_flac:before {
- content: "\e778"; }
+small {
+ font-size: 80%; }
-.icojam_gif:before {
- content: "\e779"; }
+sub,
+sup {
+ font-size: 75%;
+ line-height: 0;
+ position: relative;
+ vertical-align: baseline; }
-.icojam_html:before {
- content: "\e77a"; }
+sup {
+ top: -0.5em; }
-.icojam_icl:before {
- content: "\e77b"; }
+sub {
+ bottom: -0.25em; }
-.icojam_icns:before {
- content: "\e77c"; }
+img {
+ border: 0; }
-.icojam_ico:before {
- content: "\e77d"; }
+svg:not(:root) {
+ overflow: hidden; }
-.icojam_ini:before {
- content: "\e77e"; }
+figure {
+ margin: 1em 40px; }
+
+hr {
+ box-sizing: content-box;
+ height: 0; }
+
+pre {
+ overflow: auto; }
+
+code,
+kbd,
+pre,
+samp {
+ font-family: monospace, monospace;
+ font-size: 1em; }
+
+button,
+input,
+optgroup,
+select,
+textarea {
+ color: inherit;
+ font: inherit;
+ margin: 0; }
-.icojam_iso:before {
- content: "\e77f"; }
+button {
+ overflow: visible; }
-.icojam_jpg:before {
- content: "\e780"; }
+button,
+select {
+ text-transform: none; }
-.icojam_log:before {
- content: "\e781"; }
+button,
+html input[type="button"],
+input[type="reset"],
+input[type="submit"] {
+ -webkit-appearance: button;
+ cursor: pointer; }
-.icojam_midi:before {
- content: "\e782"; }
+button[disabled],
+html input[disabled] {
+ cursor: default; }
-.icojam_mkv:before {
- content: "\e783"; }
+button::-moz-focus-inner,
+input::-moz-focus-inner {
+ border: 0;
+ padding: 0; }
-.icojam_mov:before {
- content: "\e784"; }
+input {
+ line-height: normal; }
-.icojam_mp3:before {
- content: "\e785"; }
+input[type="checkbox"],
+input[type="radio"] {
+ box-sizing: border-box;
+ padding: 0; }
-.icojam_mp4:before {
- content: "\e786"; }
+input[type="number"]::-webkit-inner-spin-button,
+input[type="number"]::-webkit-outer-spin-button {
+ height: auto; }
-.icojam_mpg:before {
- content: "\e787"; }
+input[type="search"] {
+ -webkit-appearance: textfield;
+ box-sizing: content-box; }
-.icojam_ogg:before {
- content: "\e788"; }
+input[type="search"]::-webkit-search-cancel-button,
+input[type="search"]::-webkit-search-decoration {
+ -webkit-appearance: none; }
-.icojam_ogm:before {
- content: "\e789"; }
+fieldset {
+ border: 1px solid #c0c0c0;
+ margin: 0 2px;
+ padding: 0.35em 0.625em 0.75em; }
-.icojam_otf:before {
- content: "\e78a"; }
+legend {
+ border: 0;
+ padding: 0; }
-.icojam_pdf:before {
- content: "\e78b"; }
+textarea {
+ overflow: auto; }
-.icojam_png:before {
- content: "\e78c"; }
+optgroup {
+ font-weight: bold; }
-.icojam_ppt:before {
- content: "\e78d"; }
+table {
+ border-collapse: collapse;
+ border-spacing: 0; }
-.icojam_pptx:before {
- content: "\e78e"; }
+td,
+th {
+ padding: 0; }
-.icojam_psd:before {
- content: "\e78f"; }
+/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
+@media print {
+ *,
+ *:before,
+ *:after {
+ background: transparent !important;
+ color: #000 !important;
+ box-shadow: none !important;
+ text-shadow: none !important; }
-.icojam_ra:before {
- content: "\e790"; }
+ a,
+ a:visited {
+ text-decoration: underline; }
-.icojam_rar:before {
- content: "\e791"; }
+ a[href]:after {
+ content: " (" attr(href) ")"; }
-.icojam_raw:before {
- content: "\e792"; }
+ abbr[title]:after {
+ content: " (" attr(title) ")"; }
-.icojam_rm:before {
- content: "\e793"; }
+ a[href^="#"]:after,
+ a[href^="javascript:"]:after {
+ content: ""; }
-.icojam_rtf:before {
- content: "\e794"; }
+ pre,
+ blockquote {
+ border: 1px solid #999;
+ page-break-inside: avoid; }
-.icojam_svg:before {
- content: "\e795"; }
+ thead {
+ display: table-header-group; }
-.icojam_svgz:before {
- content: "\e796"; }
+ tr,
+ img {
+ page-break-inside: avoid; }
-.icojam_swf:before {
- content: "\e797"; }
+ img {
+ max-width: 100% !important; }
-.icojam_sys:before {
- content: "\e798"; }
+ p,
+ h2,
+ h3 {
+ orphans: 3;
+ widows: 3; }
-.icojam_tga:before {
- content: "\e799"; }
+ h2,
+ h3 {
+ page-break-after: avoid; }
-.icojam_tif:before {
- content: "\e79a"; }
+ .navbar {
+ display: none; }
-.icojam_ttf:before {
- content: "\e79b"; }
+ .btn > .caret,
+ .dropup > .btn > .caret {
+ border-top-color: #000 !important; }
-.icojam_txt:before {
- content: "\e79c"; }
+ .label {
+ border: 1px solid #000; }
-.icojam_wav:before {
- content: "\e79d"; }
+ .table {
+ border-collapse: collapse !important; }
+ .table td,
+ .table th {
+ background-color: #fff !important; }
-.icojam_wma:before {
- content: "\e79e"; }
+ .table-bordered th,
+ .table-bordered td {
+ border: 1px solid #ddd !important; } }
+@font-face {
+ font-family: 'Glyphicons Halflings';
+ src: url("../fonts/bootstrap/glyphicons-halflings-regular.eot");
+ src: url("../fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/bootstrap/glyphicons-halflings-regular.woff2") format("woff2"), url("../fonts/bootstrap/glyphicons-halflings-regular.woff") format("woff"), url("../fonts/bootstrap/glyphicons-halflings-regular.ttf") format("truetype"), url("../fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg"); }
+.glyphicon {
+ position: relative;
+ top: 1px;
+ display: inline-block;
+ font-family: 'Glyphicons Halflings';
+ font-style: normal;
+ font-weight: normal;
+ line-height: 1;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale; }
-.icojam_wmv:before {
- content: "\e79f"; }
+.glyphicon-asterisk:before {
+ content: "\2a"; }
-.icojam_xls:before {
- content: "\e7a0"; }
+.glyphicon-plus:before {
+ content: "\2b"; }
-.icojam_xlsx:before {
- content: "\e7a1"; }
+.glyphicon-euro:before,
+.glyphicon-eur:before {
+ content: "\20ac"; }
-.icojam_xml:before {
- content: "\e7a2"; }
+.glyphicon-minus:before {
+ content: "\2212"; }
-.icojam_zip:before {
- content: "\e7a3"; }
+.glyphicon-cloud:before {
+ content: "\2601"; }
-.icojam_presentation:before {
- content: "\e9b1"; }
+.glyphicon-envelope:before {
+ content: "\2709"; }
-.icojam_document:before {
- content: "\ea3c"; }
+.glyphicon-pencil:before {
+ content: "\270f"; }
-.icojam_link_1:before {
- content: "\ea50"; }
+.glyphicon-glass:before {
+ content: "\e001"; }
-.icojam_base_search_in:before {
- content: "\e65e"; }
+.glyphicon-music:before {
+ content: "\e002"; }
-.icojam_add:before {
- content: "\e656"; }
+.glyphicon-search:before {
+ content: "\e003"; }
-.icojam_delete:before {
- content: "\e66a"; }
+.glyphicon-heart:before {
+ content: "\e005"; }
-.icojam_cancel_1:before {
- content: "\eb55"; }
+.glyphicon-star:before {
+ content: "\e006"; }
-.icojam_home2:before {
- content: "\e7c1"; }
+.glyphicon-star-empty:before {
+ content: "\e007"; }
-.icojam_geography_globe:before {
- content: "\e7be"; }
+.glyphicon-user:before {
+ content: "\e008"; }
-.icojam_notebook:before {
- content: "\e7eb"; }
+.glyphicon-film:before {
+ content: "\e009"; }
-.icojam_air_conditioning_external:before {
- content: "\e600"; }
+.glyphicon-th-large:before {
+ content: "\e010"; }
-.icojam_air_conditioning_internal:before {
- content: "\e601"; }
+.glyphicon-th:before {
+ content: "\e011"; }
-.icojam_blender:before {
- content: "\e602"; }
+.glyphicon-th-list:before {
+ content: "\e012"; }
-.icojam_blender_2:before {
- content: "\e603"; }
+.glyphicon-ok:before {
+ content: "\e013"; }
-.icojam_blender_3:before {
- content: "\e604"; }
+.glyphicon-remove:before {
+ content: "\e014"; }
-.icojam_bread_maker_multicookings:before {
- content: "\e605"; }
+.glyphicon-zoom-in:before {
+ content: "\e015"; }
-.icojam_citrus_squeezer:before {
- content: "\e606"; }
+.glyphicon-zoom-out:before {
+ content: "\e016"; }
-.icojam_coffee_machine:before {
- content: "\e607"; }
+.glyphicon-off:before {
+ content: "\e017"; }
-.icojam_coiled_heater:before {
- content: "\e608"; }
+.glyphicon-signal:before {
+ content: "\e018"; }
-.icojam_dishwasher:before {
- content: "\e609"; }
+.glyphicon-cog:before {
+ content: "\e019"; }
-.icojam_drill_perforator:before {
- content: "\e60a"; }
+.glyphicon-trash:before {
+ content: "\e020"; }
-.icojam_electric_kettle_teapot:before {
- content: "\e60b"; }
+.glyphicon-home:before {
+ content: "\e021"; }
-.icojam_electric_shaver:before {
- content: "\e60c"; }
+.glyphicon-file:before {
+ content: "\e022"; }
-.icojam_fan:before {
- content: "\e60d"; }
+.glyphicon-time:before {
+ content: "\e023"; }
-.icojam_fan_1:before {
- content: "\e60e"; }
+.glyphicon-road:before {
+ content: "\e024"; }
-.icojam_fan_dyson:before {
- content: "\e60f"; }
+.glyphicon-download-alt:before {
+ content: "\e025"; }
-.icojam_food_processor_1:before {
- content: "\e610"; }
+.glyphicon-download:before {
+ content: "\e026"; }
-.icojam_food_processor_2:before {
- content: "\e611"; }
+.glyphicon-upload:before {
+ content: "\e027"; }
-.icojam_freezer:before {
- content: "\e612"; }
+.glyphicon-inbox:before {
+ content: "\e028"; }
-.icojam_fridge_side_by_side:before {
- content: "\e613"; }
+.glyphicon-play-circle:before {
+ content: "\e029"; }
-.icojam_hairdryer:before {
- content: "\e614"; }
+.glyphicon-repeat:before {
+ content: "\e030"; }
-.icojam_heat_fan:before {
- content: "\e615"; }
+.glyphicon-refresh:before {
+ content: "\e031"; }
-.icojam_heater:before {
- content: "\e616"; }
+.glyphicon-list-alt:before {
+ content: "\e032"; }
-.icojam_iron:before {
- content: "\e617"; }
+.glyphicon-lock:before {
+ content: "\e033"; }
-.icojam_juicer:before {
- content: "\e618"; }
+.glyphicon-flag:before {
+ content: "\e034"; }
-.icojam_kitchen_hood:before {
- content: "\e619"; }
+.glyphicon-headphones:before {
+ content: "\e035"; }
-.icojam_kitchen_hood_1:before {
- content: "\e61a"; }
+.glyphicon-volume-off:before {
+ content: "\e036"; }
-.icojam_kitchen_timer:before {
- content: "\e61b"; }
+.glyphicon-volume-down:before {
+ content: "\e037"; }
-.icojam_metal_detector_multimeter_voltmeter:before {
- content: "\e61c"; }
+.glyphicon-volume-up:before {
+ content: "\e038"; }
-.icojam_microwave:before {
- content: "\e61d"; }
+.glyphicon-qrcode:before {
+ content: "\e039"; }
-.icojam_mixer:before {
- content: "\e61e"; }
+.glyphicon-barcode:before {
+ content: "\e040"; }
-.icojam_paper_shredder:before {
- content: "\e61f"; }
+.glyphicon-tag:before {
+ content: "\e041"; }
-.icojam_radiator:before {
- content: "\e620"; }
+.glyphicon-tags:before {
+ content: "\e042"; }
-.icojam_refrigerator:before {
- content: "\e621"; }
+.glyphicon-book:before {
+ content: "\e043"; }
-.icojam_samovar:before {
- content: "\e622"; }
+.glyphicon-bookmark:before {
+ content: "\e044"; }
-.icojam_scale_kitchen_weigher:before {
- content: "\e623"; }
+.glyphicon-print:before {
+ content: "\e045"; }
-.icojam_scales:before {
- content: "\e624"; }
+.glyphicon-camera:before {
+ content: "\e046"; }
-.icojam_sewing_machine:before {
- content: "\e625"; }
+.glyphicon-font:before {
+ content: "\e047"; }
-.icojam_stove:before {
- content: "\e626"; }
+.glyphicon-bold:before {
+ content: "\e048"; }
-.icojam_toaster:before {
- content: "\e627"; }
+.glyphicon-italic:before {
+ content: "\e049"; }
-.icojam_vacuum_cleaner:before {
- content: "\e628"; }
+.glyphicon-text-height:before {
+ content: "\e050"; }
-.icojam_waffle-iron:before {
- content: "\e629"; }
+.glyphicon-text-width:before {
+ content: "\e051"; }
-.icojam_washing_machine:before {
- content: "\e62a"; }
+.glyphicon-align-left:before {
+ content: "\e052"; }
-.icojam_yogurter:before {
- content: "\e62b"; }
+.glyphicon-align-center:before {
+ content: "\e053"; }
-.icojam_baby_monitor:before {
- content: "\e62c"; }
+.glyphicon-align-right:before {
+ content: "\e054"; }
-.icojam_baby_monitors:before {
- content: "\e62d"; }
+.glyphicon-align-justify:before {
+ content: "\e055"; }
-.icojam_ball:before {
- content: "\e62e"; }
+.glyphicon-list:before {
+ content: "\e056"; }
-.icojam_beanbag_maraca:before {
- content: "\e62f"; }
+.glyphicon-indent-left:before {
+ content: "\e057"; }
-.icojam_bib:before {
- content: "\e630"; }
+.glyphicon-indent-right:before {
+ content: "\e058"; }
-.icojam_bicycle_baby_infant:before {
- content: "\e631"; }
+.glyphicon-facetime-video:before {
+ content: "\e059"; }
-.icojam_birthday_newborn:before {
- content: "\e632"; }
+.glyphicon-picture:before {
+ content: "\e060"; }
-.icojam_blocks:before {
- content: "\e633"; }
+.glyphicon-map-marker:before {
+ content: "\e062"; }
-.icojam_body_suit:before {
- content: "\e634"; }
+.glyphicon-adjust:before {
+ content: "\e063"; }
-.icojam_bottle_infant:before {
- content: "\e635"; }
+.glyphicon-tint:before {
+ content: "\e064"; }
-.icojam_boy:before {
- content: "\e636"; }
+.glyphicon-edit:before {
+ content: "\e065"; }
-.icojam_breast_milk:before {
- content: "\e637"; }
+.glyphicon-share:before {
+ content: "\e066"; }
-.icojam_breast-feeding_mother:before {
- content: "\e638"; }
+.glyphicon-check:before {
+ content: "\e067"; }
-.icojam_buildingkit:before {
- content: "\e639"; }
+.glyphicon-move:before {
+ content: "\e068"; }
-.icojam_car:before {
- content: "\e63a"; }
+.glyphicon-step-backward:before {
+ content: "\e069"; }
-.icojam_chair_baby:before {
- content: "\e63b"; }
+.glyphicon-fast-backward:before {
+ content: "\e070"; }
-.icojam_chamber_pot:before {
- content: "\e63c"; }
+.glyphicon-backward:before {
+ content: "\e071"; }
-.icojam_duck_rubberduck:before {
- content: "\e63d"; }
+.glyphicon-play:before {
+ content: "\e072"; }
-.icojam_dummy_nipple:before {
- content: "\e63e"; }
+.glyphicon-pause:before {
+ content: "\e073"; }
-.icojam_embryo:before {
- content: "\e63f"; }
+.glyphicon-stop:before {
+ content: "\e074"; }
-.icojam_fertilization_sperm_ovum:before {
- content: "\e640"; }
+.glyphicon-forward:before {
+ content: "\e075"; }
-.icojam_fork_spoon_baby:before {
- content: "\e641"; }
+.glyphicon-fast-forward:before {
+ content: "\e076"; }
-.icojam_girl:before {
- content: "\e642"; }
+.glyphicon-step-forward:before {
+ content: "\e077"; }
-.icojam_horse_hobby_hobbyhorse:before {
- content: "\e643"; }
+.glyphicon-eject:before {
+ content: "\e078"; }
-.icojam_mobile_infant:before {
- content: "\e644"; }
+.glyphicon-chevron-left:before {
+ content: "\e079"; }
-.icojam_napkin:before {
- content: "\e645"; }
+.glyphicon-chevron-right:before {
+ content: "\e080"; }
-.icojam_pampers_briefs_diapers:before {
- content: "\e646"; }
+.glyphicon-plus-sign:before {
+ content: "\e081"; }
-.icojam_parental_control_off:before {
- content: "\e647"; }
+.glyphicon-minus-sign:before {
+ content: "\e082"; }
-.icojam_parental_control_on:before {
- content: "\e648"; }
+.glyphicon-remove-sign:before {
+ content: "\e083"; }
-.icojam_playpen:before {
- content: "\e649"; }
+.glyphicon-ok-sign:before {
+ content: "\e084"; }
-.icojam_preserves:before {
- content: "\e64a"; }
+.glyphicon-question-sign:before {
+ content: "\e085"; }
-.icojam_pyramid:before {
- content: "\e64b"; }
+.glyphicon-info-sign:before {
+ content: "\e086"; }
-.icojam_RC_car_radiocontrolled:before {
- content: "\e64c"; }
+.glyphicon-screenshot:before {
+ content: "\e087"; }
-.icojam_scales_baby:before {
- content: "\e64d"; }
+.glyphicon-remove-circle:before {
+ content: "\e088"; }
-.icojam_shirt:before {
- content: "\e64e"; }
+.glyphicon-ok-circle:before {
+ content: "\e089"; }
-.icojam_shoes:before {
- content: "\e64f"; }
+.glyphicon-ban-circle:before {
+ content: "\e090"; }
-.icojam_stadiometer:before {
- content: "\e650"; }
+.glyphicon-arrow-left:before {
+ content: "\e091"; }
-.icojam_stroller_cane:before {
- content: "\e651"; }
+.glyphicon-arrow-right:before {
+ content: "\e092"; }
-.icojam_teether:before {
- content: "\e652"; }
+.glyphicon-arrow-up:before {
+ content: "\e093"; }
-.icojam_tights:before {
- content: "\e653"; }
+.glyphicon-arrow-down:before {
+ content: "\e094"; }
-.icojam_ultrasound_diagnostics:before {
- content: "\e654"; }
+.glyphicon-share-alt:before {
+ content: "\e095"; }
-.icojam_videogame_baby:before {
- content: "\e655"; }
+.glyphicon-resize-full:before {
+ content: "\e096"; }
-.icojam_add:before {
- content: "\e656"; }
+.glyphicon-resize-small:before {
+ content: "\e097"; }
-.icojam_base:before {
- content: "\e657"; }
+.glyphicon-exclamation-sign:before {
+ content: "\e101"; }
-.icojam_base_check:before {
- content: "\e658"; }
+.glyphicon-gift:before {
+ content: "\e102"; }
-.icojam_base_connect:before {
- content: "\e659"; }
+.glyphicon-leaf:before {
+ content: "\e103"; }
-.icojam_base_delete:before {
- content: "\e65a"; }
+.glyphicon-fire:before {
+ content: "\e104"; }
-.icojam_base_favorite:before {
- content: "\e65b"; }
+.glyphicon-eye-open:before {
+ content: "\e105"; }
-.icojam_base_new:before {
- content: "\e65c"; }
+.glyphicon-eye-close:before {
+ content: "\e106"; }
-.icojam_base_remove:before {
- content: "\e65d"; }
+.glyphicon-warning-sign:before {
+ content: "\e107"; }
-.icojam_base_search_in:before {
- content: "\e65e"; }
+.glyphicon-plane:before {
+ content: "\e108"; }
-.icojam_check:before {
- content: "\e65f"; }
+.glyphicon-calendar:before {
+ content: "\e109"; }
-.icojam_comment_1:before {
- content: "\e660"; }
+.glyphicon-random:before {
+ content: "\e110"; }
-.icojam_comment_2:before {
- content: "\e661"; }
+.glyphicon-comment:before {
+ content: "\e111"; }
-.icojam_comment_3:before {
- content: "\e662"; }
+.glyphicon-magnet:before {
+ content: "\e112"; }
-.icojam_comment_baloon:before {
- content: "\e663"; }
+.glyphicon-chevron-up:before {
+ content: "\e113"; }
-.icojam_comment_chat:before {
- content: "\e664"; }
+.glyphicon-chevron-down:before {
+ content: "\e114"; }
-.icojam_comment_dream:before {
- content: "\e665"; }
+.glyphicon-retweet:before {
+ content: "\e115"; }
-.icojam_connect_close:before {
- content: "\e666"; }
+.glyphicon-shopping-cart:before {
+ content: "\e116"; }
-.icojam_credit_card:before {
- content: "\e667"; }
+.glyphicon-folder-close:before {
+ content: "\e117"; }
-.icojam_credit_card_back:before {
- content: "\e668"; }
+.glyphicon-folder-open:before {
+ content: "\e118"; }
-.icojam_credit_card_multi:before {
- content: "\e669"; }
+.glyphicon-resize-vertical:before {
+ content: "\e119"; }
-.icojam_delete:before {
- content: "\e66a"; }
+.glyphicon-resize-horizontal:before {
+ content: "\e120"; }
-.icojam_favorite:before {
- content: "\e66b"; }
+.glyphicon-hdd:before {
+ content: "\e121"; }
-.icojam_favorite_add:before {
- content: "\e66c"; }
+.glyphicon-bullhorn:before {
+ content: "\e122"; }
-.icojam_favorite_add_2:before {
- content: "\e66d"; }
+.glyphicon-bell:before {
+ content: "\e123"; }
-.icojam_favorite_add_3:before {
- content: "\e66e"; }
+.glyphicon-certificate:before {
+ content: "\e124"; }
-.icojam_favorite_add_4:before {
- content: "\e66f"; }
+.glyphicon-thumbs-up:before {
+ content: "\e125"; }
-.icojam_favorite_check_1:before {
- content: "\e670"; }
+.glyphicon-thumbs-down:before {
+ content: "\e126"; }
-.icojam_favorite_check_2:before {
- content: "\e671"; }
+.glyphicon-hand-right:before {
+ content: "\e127"; }
-.icojam_favorite_delete_1:before {
- content: "\e672"; }
+.glyphicon-hand-left:before {
+ content: "\e128"; }
-.icojam_favorite_delete_2:before {
- content: "\e673"; }
+.glyphicon-hand-up:before {
+ content: "\e129"; }
-.icojam_favorite_remove_1:before {
- content: "\e674"; }
+.glyphicon-hand-down:before {
+ content: "\e130"; }
-.icojam_favorite_remove_2:before {
- content: "\e675"; }
+.glyphicon-circle-arrow-right:before {
+ content: "\e131"; }
-.icojam_flag:before {
- content: "\e676"; }
+.glyphicon-circle-arrow-left:before {
+ content: "\e132"; }
-.icojam_gear:before {
- content: "\e677"; }
+.glyphicon-circle-arrow-up:before {
+ content: "\e133"; }
-.icojam_glass:before {
- content: "\e678"; }
+.glyphicon-circle-arrow-down:before {
+ content: "\e134"; }
-.icojam_home:before {
- content: "\e679"; }
+.glyphicon-globe:before {
+ content: "\e135"; }
-.icojam_key_1:before {
- content: "\e67a"; }
+.glyphicon-wrench:before {
+ content: "\e136"; }
-.icojam_key_2:before {
- content: "\e67b"; }
+.glyphicon-tasks:before {
+ content: "\e137"; }
-.icojam_lamp:before {
- content: "\e67c"; }
+.glyphicon-filter:before {
+ content: "\e138"; }
-.icojam_lamp_off:before {
- content: "\e67d"; }
+.glyphicon-briefcase:before {
+ content: "\e139"; }
-.icojam_lamp_on:before {
- content: "\e67e"; }
+.glyphicon-fullscreen:before {
+ content: "\e140"; }
-.icojam_lock:before {
- content: "\e67f"; }
+.glyphicon-dashboard:before {
+ content: "\e141"; }
-.icojam_minus:before {
- content: "\e680"; }
+.glyphicon-paperclip:before {
+ content: "\e142"; }
-.icojam_options_1:before {
- content: "\e681"; }
+.glyphicon-heart-empty:before {
+ content: "\e143"; }
-.icojam_options_2:before {
- content: "\e682"; }
+.glyphicon-link:before {
+ content: "\e144"; }
-.icojam_protect_1:before {
- content: "\e683"; }
+.glyphicon-phone:before {
+ content: "\e145"; }
-.icojam_protect_2:before {
- content: "\e684"; }
+.glyphicon-pushpin:before {
+ content: "\e146"; }
-.icojam_protect_3:before {
- content: "\e685"; }
+.glyphicon-usd:before {
+ content: "\e148"; }
-.icojam_recycle_bin_1:before {
- content: "\e686"; }
+.glyphicon-gbp:before {
+ content: "\e149"; }
-.icojam_recycle_bin_2:before {
- content: "\e687"; }
+.glyphicon-sort:before {
+ content: "\e150"; }
-.icojam_recycle_bin_3:before {
- content: "\e688"; }
+.glyphicon-sort-by-alphabet:before {
+ content: "\e151"; }
-.icojam_recycle_bin_4:before {
- content: "\e689"; }
+.glyphicon-sort-by-alphabet-alt:before {
+ content: "\e152"; }
-.icojam_recycle_bin_empty:before {
- content: "\e68a"; }
+.glyphicon-sort-by-order:before {
+ content: "\e153"; }
-.icojam_rss:before {
- content: "\e68b"; }
+.glyphicon-sort-by-order-alt:before {
+ content: "\e154"; }
-.icojam_search:before {
- content: "\e68c"; }
+.glyphicon-sort-by-attributes:before {
+ content: "\e155"; }
-.icojam_shopping_cart_1:before {
- content: "\e68d"; }
+.glyphicon-sort-by-attributes-alt:before {
+ content: "\e156"; }
-.icojam_shopping_cart_2:before {
- content: "\e68e"; }
+.glyphicon-unchecked:before {
+ content: "\e157"; }
-.icojam_shopping_cart_3:before {
- content: "\e68f"; }
+.glyphicon-expand:before {
+ content: "\e158"; }
-.icojam_shopping_cart_4:before {
- content: "\e690"; }
+.glyphicon-collapse-down:before {
+ content: "\e159"; }
-.icojam_star:before {
- content: "\e691"; }
+.glyphicon-collapse-up:before {
+ content: "\e160"; }
-.icojam_umbrella:before {
- content: "\e692"; }
+.glyphicon-log-in:before {
+ content: "\e161"; }
-.icojam_unlock:before {
- content: "\e693"; }
+.glyphicon-flash:before {
+ content: "\e162"; }
-.icojam_up:before {
- content: "\e694"; }
+.glyphicon-log-out:before {
+ content: "\e163"; }
-.icojam_wizard_1:before {
- content: "\e695"; }
+.glyphicon-new-window:before {
+ content: "\e164"; }
-.icojam_wizard_2:before {
- content: "\e696"; }
+.glyphicon-record:before {
+ content: "\e165"; }
-.icojam_airport:before {
- content: "\e697"; }
+.glyphicon-save:before {
+ content: "\e166"; }
-.icojam_ancient_building:before {
- content: "\e698"; }
+.glyphicon-open:before {
+ content: "\e167"; }
-.icojam_apartment:before {
- content: "\e699"; }
+.glyphicon-saved:before {
+ content: "\e168"; }
-.icojam_arch:before {
- content: "\e69a"; }
+.glyphicon-import:before {
+ content: "\e169"; }
-.icojam_bank:before {
- content: "\e69b"; }
+.glyphicon-export:before {
+ content: "\e170"; }
-.icojam_belfry:before {
- content: "\e69c"; }
+.glyphicon-send:before {
+ content: "\e171"; }
-.icojam_bridge_1:before {
- content: "\e69d"; }
+.glyphicon-floppy-disk:before {
+ content: "\e172"; }
-.icojam_bridge_2:before {
- content: "\e69e"; }
+.glyphicon-floppy-saved:before {
+ content: "\e173"; }
-.icojam_bridge_column:before {
- content: "\e69f"; }
+.glyphicon-floppy-remove:before {
+ content: "\e174"; }
-.icojam_building:before {
- content: "\e6a0"; }
+.glyphicon-floppy-save:before {
+ content: "\e175"; }
-.icojam_car_wash:before {
- content: "\e6a1"; }
+.glyphicon-floppy-open:before {
+ content: "\e176"; }
-.icojam_castle:before {
- content: "\e6a2"; }
+.glyphicon-credit-card:before {
+ content: "\e177"; }
-.icojam_catholic_church:before {
- content: "\e6a3"; }
+.glyphicon-transfer:before {
+ content: "\e178"; }
-.icojam_church:before {
- content: "\e6a4"; }
+.glyphicon-cutlery:before {
+ content: "\e179"; }
-.icojam_city:before {
- content: "\e6a5"; }
+.glyphicon-header:before {
+ content: "\e180"; }
-.icojam_downtown:before {
- content: "\e6a6"; }
+.glyphicon-compressed:before {
+ content: "\e181"; }
-.icojam_dwelling_house:before {
- content: "\e6a7"; }
+.glyphicon-earphone:before {
+ content: "\e182"; }
-.icojam_exhibition:before {
- content: "\e6a8"; }
+.glyphicon-phone-alt:before {
+ content: "\e183"; }
-.icojam_factory_1:before {
- content: "\e6a9"; }
+.glyphicon-tower:before {
+ content: "\e184"; }
-.icojam_factory_2:before {
- content: "\e6aa"; }
+.glyphicon-stats:before {
+ content: "\e185"; }
-.icojam_factory_3:before {
- content: "\e6ab"; }
+.glyphicon-sd-video:before {
+ content: "\e186"; }
-.icojam_fire:before {
- content: "\e6ac"; }
+.glyphicon-hd-video:before {
+ content: "\e187"; }
-.icojam_firefighters:before {
- content: "\e6ad"; }
+.glyphicon-subtitles:before {
+ content: "\e188"; }
-.icojam_for_rent:before {
- content: "\e6ae"; }
+.glyphicon-sound-stereo:before {
+ content: "\e189"; }
-.icojam_for_sale:before {
- content: "\e6af"; }
+.glyphicon-sound-dolby:before {
+ content: "\e190"; }
-.icojam_front_gate:before {
- content: "\e6b0"; }
+.glyphicon-sound-5-1:before {
+ content: "\e191"; }
-.icojam_garage_1:before {
- content: "\e6b1"; }
+.glyphicon-sound-6-1:before {
+ content: "\e192"; }
-.icojam_garage_2:before {
- content: "\e6b2"; }
+.glyphicon-sound-7-1:before {
+ content: "\e193"; }
-.icojam_garage_hangar:before {
- content: "\e6b3"; }
+.glyphicon-copyright-mark:before {
+ content: "\e194"; }
-.icojam_garage_multilevel:before {
- content: "\e6b4"; }
+.glyphicon-registration-mark:before {
+ content: "\e195"; }
-.icojam_government:before {
- content: "\e6b5"; }
+.glyphicon-cloud-download:before {
+ content: "\e197"; }
-.icojam_home_1:before {
- content: "\e6b6"; }
+.glyphicon-cloud-upload:before {
+ content: "\e198"; }
-.icojam_home_2:before {
- content: "\e6b7"; }
+.glyphicon-tree-conifer:before {
+ content: "\e199"; }
-.icojam_home_3:before {
- content: "\e6b8"; }
+.glyphicon-tree-deciduous:before {
+ content: "\e200"; }
-.icojam_home_4:before {
- content: "\e6b9"; }
+.glyphicon-cd:before {
+ content: "\e201"; }
-.icojam_home_farm:before {
- content: "\e6ba"; }
+.glyphicon-save-file:before {
+ content: "\e202"; }
-.icojam_hospital_clinic:before {
- content: "\e6bb"; }
+.glyphicon-open-file:before {
+ content: "\e203"; }
-.icojam_housemulti_storey:before {
- content: "\e6bc"; }
+.glyphicon-level-up:before {
+ content: "\e204"; }
-.icojam_house_1:before {
- content: "\e6bd"; }
+.glyphicon-copy:before {
+ content: "\e205"; }
-.icojam_house_2:before {
- content: "\e6be"; }
+.glyphicon-paste:before {
+ content: "\e206"; }
-.icojam_house_3:before {
- content: "\e6bf"; }
+.glyphicon-alert:before {
+ content: "\e209"; }
-.icojam_house_4:before {
- content: "\e6c0"; }
+.glyphicon-equalizer:before {
+ content: "\e210"; }
-.icojam_house_five_story:before {
- content: "\e6c1"; }
+.glyphicon-king:before {
+ content: "\e211"; }
-.icojam_house_four_stories:before {
- content: "\e6c2"; }
+.glyphicon-queen:before {
+ content: "\e212"; }
-.icojam_house_three_story:before {
- content: "\e6c3"; }
+.glyphicon-pawn:before {
+ content: "\e213"; }
-.icojam_house_two_storey_1:before {
- content: "\e6c4"; }
+.glyphicon-bishop:before {
+ content: "\e214"; }
-.icojam_house_two_storey_2:before {
- content: "\e6c5"; }
+.glyphicon-knight:before {
+ content: "\e215"; }
-.icojam_house_with_garage_1:before {
- content: "\e6c6"; }
+.glyphicon-baby-formula:before {
+ content: "\e216"; }
-.icojam_house_with_garage_2:before {
- content: "\e6c7"; }
+.glyphicon-tent:before {
+ content: "\26fa"; }
-.icojam_hovel_1:before {
- content: "\e6c8"; }
+.glyphicon-blackboard:before {
+ content: "\e218"; }
-.icojam_hovel_2:before {
- content: "\e6c9"; }
+.glyphicon-bed:before {
+ content: "\e219"; }
-.icojam_library_1:before {
- content: "\e6ca"; }
+.glyphicon-apple:before {
+ content: "\f8ff"; }
-.icojam_library_2:before {
- content: "\e6cb"; }
+.glyphicon-erase:before {
+ content: "\e221"; }
-.icojam_log_house:before {
- content: "\e6cc"; }
+.glyphicon-hourglass:before {
+ content: "\231b"; }
-.icojam_mosque:before {
- content: "\e6cd"; }
+.glyphicon-lamp:before {
+ content: "\e223"; }
-.icojam_obelisk:before {
- content: "\e6ce"; }
+.glyphicon-duplicate:before {
+ content: "\e224"; }
-.icojam_orthodox_church:before {
- content: "\e6cf"; }
+.glyphicon-piggy-bank:before {
+ content: "\e225"; }
-.icojam_palace_of_congresses:before {
- content: "\e6d0"; }
+.glyphicon-scissors:before {
+ content: "\e226"; }
-.icojam_park_1:before {
- content: "\e6d1"; }
+.glyphicon-bitcoin:before {
+ content: "\e227"; }
-.icojam_park_2:before {
- content: "\e6d2"; }
+.glyphicon-btc:before {
+ content: "\e227"; }
-.icojam_planetarium_observatory:before {
- content: "\e6d3"; }
+.glyphicon-xbt:before {
+ content: "\e227"; }
-.icojam_plant:before {
- content: "\e6d4"; }
+.glyphicon-yen:before {
+ content: "\00a5"; }
-.icojam_police:before {
- content: "\e6d5"; }
+.glyphicon-jpy:before {
+ content: "\00a5"; }
-.icojam_ranch:before {
- content: "\e6d6"; }
+.glyphicon-ruble:before {
+ content: "\20bd"; }
-.icojam_school_1:before {
- content: "\e6d7"; }
+.glyphicon-rub:before {
+ content: "\20bd"; }
-.icojam_school_2:before {
- content: "\e6d8"; }
+.glyphicon-scale:before {
+ content: "\e230"; }
-.icojam_sheriff:before {
- content: "\e6d9"; }
+.glyphicon-ice-lolly:before {
+ content: "\e231"; }
-.icojam_shop_1:before {
- content: "\e6da"; }
+.glyphicon-ice-lolly-tasted:before {
+ content: "\e232"; }
-.icojam_shop_2:before {
- content: "\e6db"; }
+.glyphicon-education:before {
+ content: "\e233"; }
-.icojam_shop_3:before {
- content: "\e6dc"; }
+.glyphicon-option-horizontal:before {
+ content: "\e234"; }
-.icojam_shop_4:before {
- content: "\e6dd"; }
+.glyphicon-option-vertical:before {
+ content: "\e235"; }
-.icojam_shopping_center:before {
- content: "\e6de"; }
+.glyphicon-menu-hamburger:before {
+ content: "\e236"; }
-.icojam_skyscraper_1:before {
- content: "\e6df"; }
+.glyphicon-modal-window:before {
+ content: "\e237"; }
-.icojam_skyscraper_2:before {
- content: "\e6e0"; }
+.glyphicon-oil:before {
+ content: "\e238"; }
-.icojam_skyscrapers_1:before {
- content: "\e6e1"; }
+.glyphicon-grain:before {
+ content: "\e239"; }
-.icojam_skyscrapers_2:before {
- content: "\e6e2"; }
+.glyphicon-sunglasses:before {
+ content: "\e240"; }
-.icojam_skyscrapers_3:before {
- content: "\e6e3"; }
+.glyphicon-text-size:before {
+ content: "\e241"; }
-.icojam_skyway:before {
- content: "\e6e4"; }
+.glyphicon-text-color:before {
+ content: "\e242"; }
-.icojam_station_gas:before {
- content: "\e6e5"; }
+.glyphicon-text-background:before {
+ content: "\e243"; }
-.icojam_station_petrol:before {
- content: "\e6e6"; }
+.glyphicon-object-align-top:before {
+ content: "\e244"; }
-.icojam_tent_camp:before {
- content: "\e6e7"; }
+.glyphicon-object-align-bottom:before {
+ content: "\e245"; }
-.icojam_terminal:before {
- content: "\e6e8"; }
+.glyphicon-object-align-horizontal:before {
+ content: "\e246"; }
-.icojam_theater_1:before {
- content: "\e6e9"; }
+.glyphicon-object-align-left:before {
+ content: "\e247"; }
-.icojam_theater_2:before {
- content: "\e6ea"; }
+.glyphicon-object-align-vertical:before {
+ content: "\e248"; }
-.icojam_train_station:before {
- content: "\e6eb"; }
+.glyphicon-object-align-right:before {
+ content: "\e249"; }
-.icojam_TV_tower_repeater:before {
- content: "\e6ec"; }
+.glyphicon-triangle-right:before {
+ content: "\e250"; }
-.icojam_university:before {
- content: "\e6ed"; }
+.glyphicon-triangle-left:before {
+ content: "\e251"; }
-.icojam_warehouse:before {
- content: "\e6ee"; }
+.glyphicon-triangle-bottom:before {
+ content: "\e252"; }
-.icojam_amphora:before {
- content: "\e6ef"; }
+.glyphicon-triangle-top:before {
+ content: "\e253"; }
-.icojam_awards:before {
- content: "\e6f0"; }
+.glyphicon-console:before {
+ content: "\e254"; }
-.icojam_books_1:before {
- content: "\e6f1"; }
+.glyphicon-superscript:before {
+ content: "\e255"; }
-.icojam_books_2:before {
- content: "\e6f2"; }
+.glyphicon-subscript:before {
+ content: "\e256"; }
-.icojam_crown_1:before {
- content: "\e6f3"; }
+.glyphicon-menu-left:before {
+ content: "\e257"; }
-.icojam_crown_2:before {
- content: "\e6f4"; }
+.glyphicon-menu-right:before {
+ content: "\e258"; }
-.icojam_death:before {
- content: "\e6f5"; }
+.glyphicon-menu-down:before {
+ content: "\e259"; }
-.icojam_eater:before {
- content: "\e6f6"; }
+.glyphicon-menu-up:before {
+ content: "\e260"; }
-.icojam_family:before {
- content: "\e6f7"; }
+* {
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box; }
-.icojam_ghost:before {
- content: "\e6f8"; }
+*:before,
+*:after {
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box; }
-.icojam_kill:before {
- content: "\e6f9"; }
+html {
+ font-size: 10px;
+ -webkit-tap-highlight-color: transparent; }
-.icojam_leader:before {
- content: "\e6fa"; }
+body {
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+ font-size: 14px;
+ line-height: 1.42857;
+ color: #333333;
+ background-color: #fff; }
+
+input,
+button,
+select,
+textarea {
+ font-family: inherit;
+ font-size: inherit;
+ line-height: inherit; }
-.icojam_mask:before {
- content: "\e6fb"; }
+a {
+ color: #337ab7;
+ text-decoration: none; }
+ a:hover, a:focus {
+ color: #23527c;
+ text-decoration: underline; }
+ a:focus {
+ outline: thin dotted;
+ outline: 5px auto -webkit-focus-ring-color;
+ outline-offset: -2px; }
-.icojam_matreshka_1:before {
- content: "\e6fc"; }
+figure {
+ margin: 0; }
-.icojam_matreshka_2:before {
- content: "\e6fd"; }
+img {
+ vertical-align: middle; }
-.icojam_nature:before {
- content: "\e6fe"; }
+.img-responsive {
+ display: block;
+ max-width: 100%;
+ height: auto; }
-.icojam_picture:before {
- content: "\e6ff"; }
+.img-rounded {
+ border-radius: 6px; }
+
+.img-thumbnail {
+ padding: 4px;
+ line-height: 1.42857;
+ background-color: #fff;
+ border: 1px solid #ddd;
+ border-radius: 4px;
+ -webkit-transition: all 0.2s ease-in-out;
+ -o-transition: all 0.2s ease-in-out;
+ transition: all 0.2s ease-in-out;
+ display: inline-block;
+ max-width: 100%;
+ height: auto; }
-.icojam_pillar:before {
- content: "\e700"; }
+.img-circle {
+ border-radius: 50%; }
-.icojam_smile_1:before {
- content: "\e701"; }
+hr {
+ margin-top: 20px;
+ margin-bottom: 20px;
+ border: 0;
+ border-top: 1px solid #eeeeee; }
-.icojam_smile_2:before {
- content: "\e702"; }
+.sr-only {
+ position: absolute;
+ width: 1px;
+ height: 1px;
+ margin: -1px;
+ padding: 0;
+ overflow: hidden;
+ clip: rect(0, 0, 0, 0);
+ border: 0; }
-.icojam_smile_3:before {
- content: "\e703"; }
+.sr-only-focusable:active, .sr-only-focusable:focus {
+ position: static;
+ width: auto;
+ height: auto;
+ margin: 0;
+ overflow: visible;
+ clip: auto; }
-.icojam_smile_4:before {
- content: "\e704"; }
+[role="button"] {
+ cursor: pointer; }
-.icojam_smile_disappointment:before {
- content: "\e705"; }
+h1, h2, h3, h4, h5, h6,
+.h1, .h2, .h3, .h4, .h5, .h6 {
+ font-family: inherit;
+ font-weight: 500;
+ line-height: 1.1;
+ color: inherit; }
+ h1 small,
+ h1 .small, h2 small,
+ h2 .small, h3 small,
+ h3 .small, h4 small,
+ h4 .small, h5 small,
+ h5 .small, h6 small,
+ h6 .small,
+ .h1 small,
+ .h1 .small, .h2 small,
+ .h2 .small, .h3 small,
+ .h3 .small, .h4 small,
+ .h4 .small, .h5 small,
+ .h5 .small, .h6 small,
+ .h6 .small {
+ font-weight: normal;
+ line-height: 1;
+ color: #777777; }
+
+h1, .h1,
+h2, .h2,
+h3, .h3 {
+ margin-top: 20px;
+ margin-bottom: 10px; }
+ h1 small,
+ h1 .small, .h1 small,
+ .h1 .small,
+ h2 small,
+ h2 .small, .h2 small,
+ .h2 .small,
+ h3 small,
+ h3 .small, .h3 small,
+ .h3 .small {
+ font-size: 65%; }
+
+h4, .h4,
+h5, .h5,
+h6, .h6 {
+ margin-top: 10px;
+ margin-bottom: 10px; }
+ h4 small,
+ h4 .small, .h4 small,
+ .h4 .small,
+ h5 small,
+ h5 .small, .h5 small,
+ .h5 .small,
+ h6 small,
+ h6 .small, .h6 small,
+ .h6 .small {
+ font-size: 75%; }
+
+h1, .h1 {
+ font-size: 36px; }
+
+h2, .h2 {
+ font-size: 30px; }
+
+h3, .h3 {
+ font-size: 24px; }
-.icojam_smile_fright:before {
- content: "\e706"; }
+h4, .h4 {
+ font-size: 18px; }
-.icojam_smile_surprise:before {
- content: "\e707"; }
+h5, .h5 {
+ font-size: 14px; }
-.icojam_smile_wink:before {
- content: "\e708"; }
+h6, .h6 {
+ font-size: 12px; }
-.icojam_sun:before {
- content: "\e709"; }
+p {
+ margin: 0 0 10px; }
-.icojam_wreath:before {
- content: "\e70a"; }
+.lead {
+ margin-bottom: 20px;
+ font-size: 16px;
+ font-weight: 300;
+ line-height: 1.4; }
+ @media (min-width: 768px) {
+ .lead {
+ font-size: 21px; } }
-.icojam_yin_yang:before {
- content: "\e70b"; }
+small,
+.small {
+ font-size: 85%; }
-.icojam_calculator:before {
- content: "\e70c"; }
+mark,
+.mark {
+ background-color: #fcf8e3;
+ padding: .2em; }
-.icojam_camera_betacam:before {
- content: "\e70d"; }
+.text-left {
+ text-align: left; }
-.icojam_camera_video_1:before {
- content: "\e70e"; }
+.text-right {
+ text-align: right; }
-.icojam_camera_video_2:before {
- content: "\e70f"; }
+.text-center {
+ text-align: center; }
-.icojam_channel_close:before {
- content: "\e710"; }
+.text-justify {
+ text-align: justify; }
-.icojam_channel_delete:before {
- content: "\e711"; }
+.text-nowrap {
+ white-space: nowrap; }
-.icojam_channel_favorite:before {
- content: "\e712"; }
+.text-lowercase {
+ text-transform: lowercase; }
-.icojam_channel_new:before {
- content: "\e713"; }
+.text-uppercase, .initialism {
+ text-transform: uppercase; }
-.icojam_channel_pause:before {
- content: "\e714"; }
+.text-capitalize {
+ text-transform: capitalize; }
-.icojam_channel_ready:before {
- content: "\e715"; }
+.text-muted {
+ color: #777777; }
-.icojam_channel_stop:before {
- content: "\e716"; }
+.text-primary {
+ color: #337ab7; }
-.icojam_channel_watch:before {
- content: "\e717"; }
+a.text-primary:hover,
+a.text-primary:focus {
+ color: #286090; }
-.icojam_computer:before {
- content: "\e718"; }
+.text-success {
+ color: #3c763d; }
-.icojam_connection:before {
- content: "\e719"; }
+a.text-success:hover,
+a.text-success:focus {
+ color: #2b542c; }
-.icojam_connection_close:before {
- content: "\e71a"; }
+.text-info {
+ color: #31708f; }
-.icojam_connection_delete:before {
- content: "\e71b"; }
+a.text-info:hover,
+a.text-info:focus {
+ color: #245269; }
-.icojam_connection_favorite:before {
- content: "\e71c"; }
+.text-warning {
+ color: #8a6d3b; }
-.icojam_connection_new:before {
- content: "\e71d"; }
+a.text-warning:hover,
+a.text-warning:focus {
+ color: #66512c; }
-.icojam_connection_ping:before {
- content: "\e71e"; }
+.text-danger {
+ color: #a94442; }
-.icojam_connection_ready:before {
- content: "\e71f"; }
+a.text-danger:hover,
+a.text-danger:focus {
+ color: #843534; }
-.icojam_dec_phone:before {
- content: "\e720"; }
+.bg-primary {
+ color: #fff; }
-.icojam_disc:before {
- content: "\e721"; }
+.bg-primary {
+ background-color: #337ab7; }
-.icojam_external_drive:before {
- content: "\e722"; }
+a.bg-primary:hover,
+a.bg-primary:focus {
+ background-color: #286090; }
-.icojam_fax_1:before {
- content: "\e723"; }
+.bg-success {
+ background-color: #dff0d8; }
-.icojam_fax_2:before {
- content: "\e724"; }
+a.bg-success:hover,
+a.bg-success:focus {
+ background-color: #c1e2b3; }
-.icojam_flashlight:before {
- content: "\e725"; }
+.bg-info {
+ background-color: #d9edf7; }
-.icojam_hard_disk:before {
- content: "\e726"; }
+a.bg-info:hover,
+a.bg-info:focus {
+ background-color: #afd9ee; }
-.icojam_hometheatre:before {
- content: "\e727"; }
+.bg-warning {
+ background-color: #fcf8e3; }
-.icojam_iphone_horizontal_1:before {
- content: "\e728"; }
+a.bg-warning:hover,
+a.bg-warning:focus {
+ background-color: #f7ecb5; }
-.icojam_iphone_horizontal_2:before {
- content: "\e729"; }
+.bg-danger {
+ background-color: #f2dede; }
-.icojam_iphone_vertical_1:before {
- content: "\e72a"; }
+a.bg-danger:hover,
+a.bg-danger:focus {
+ background-color: #e4b9b9; }
-.icojam_iphone_vertical_2:before {
- content: "\e72b"; }
+.page-header {
+ padding-bottom: 9px;
+ margin: 40px 0 20px;
+ border-bottom: 1px solid #eeeeee; }
-.icojam_joypad_games:before {
- content: "\e72c"; }
+ul,
+ol {
+ margin-top: 0;
+ margin-bottom: 10px; }
+ ul ul,
+ ul ol,
+ ol ul,
+ ol ol {
+ margin-bottom: 0; }
+
+.list-unstyled {
+ padding-left: 0;
+ list-style: none; }
-.icojam_keyboard:before {
- content: "\e72d"; }
+.list-inline {
+ padding-left: 0;
+ list-style: none;
+ margin-left: -5px; }
+ .list-inline > li {
+ display: inline-block;
+ padding-left: 5px;
+ padding-right: 5px; }
-.icojam_loudspeakers:before {
- content: "\e72e"; }
+dl {
+ margin-top: 0;
+ margin-bottom: 20px; }
-.icojam_mfu_xerox:before {
- content: "\e72f"; }
+dt,
+dd {
+ line-height: 1.42857; }
-.icojam_microphone:before {
- content: "\e730"; }
+dt {
+ font-weight: bold; }
-.icojam_mobile_phone:before {
- content: "\e731"; }
+dd {
+ margin-left: 0; }
-.icojam_monitor:before {
- content: "\e732"; }
+.dl-horizontal dd:before, .dl-horizontal dd:after {
+ content: " ";
+ display: table; }
+.dl-horizontal dd:after {
+ clear: both; }
+@media (min-width: 768px) {
+ .dl-horizontal dt {
+ float: left;
+ width: 160px;
+ clear: left;
+ text-align: right;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap; }
+ .dl-horizontal dd {
+ margin-left: 180px; } }
+
+abbr[title],
+abbr[data-original-title] {
+ cursor: help;
+ border-bottom: 1px dotted #777777; }
+
+.initialism {
+ font-size: 90%; }
+
+blockquote {
+ padding: 10px 20px;
+ margin: 0 0 20px;
+ font-size: 17.5px;
+ border-left: 5px solid #eeeeee; }
+ blockquote p:last-child,
+ blockquote ul:last-child,
+ blockquote ol:last-child {
+ margin-bottom: 0; }
+ blockquote footer,
+ blockquote small,
+ blockquote .small {
+ display: block;
+ font-size: 80%;
+ line-height: 1.42857;
+ color: #777777; }
+ blockquote footer:before,
+ blockquote small:before,
+ blockquote .small:before {
+ content: '\2014 \00A0'; }
+
+.blockquote-reverse,
+blockquote.pull-right {
+ padding-right: 15px;
+ padding-left: 0;
+ border-right: 5px solid #eeeeee;
+ border-left: 0;
+ text-align: right; }
+ .blockquote-reverse footer:before,
+ .blockquote-reverse small:before,
+ .blockquote-reverse .small:before,
+ blockquote.pull-right footer:before,
+ blockquote.pull-right small:before,
+ blockquote.pull-right .small:before {
+ content: ''; }
+ .blockquote-reverse footer:after,
+ .blockquote-reverse small:after,
+ .blockquote-reverse .small:after,
+ blockquote.pull-right footer:after,
+ blockquote.pull-right small:after,
+ blockquote.pull-right .small:after {
+ content: '\00A0 \2014'; }
+
+address {
+ margin-bottom: 20px;
+ font-style: normal;
+ line-height: 1.42857; }
+
+code,
+kbd,
+pre,
+samp {
+ font-family: Menlo, Monaco, Consolas, "Courier New", monospace; }
+
+code {
+ padding: 2px 4px;
+ font-size: 90%;
+ color: #c7254e;
+ background-color: #f9f2f4;
+ border-radius: 4px; }
+
+kbd {
+ padding: 2px 4px;
+ font-size: 90%;
+ color: #fff;
+ background-color: #333;
+ border-radius: 3px;
+ box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25); }
+ kbd kbd {
+ padding: 0;
+ font-size: 100%;
+ font-weight: bold;
+ box-shadow: none; }
-.icojam_music_center:before {
- content: "\e733"; }
+pre {
+ display: block;
+ padding: 9.5px;
+ margin: 0 0 10px;
+ font-size: 13px;
+ line-height: 1.42857;
+ word-break: break-all;
+ word-wrap: break-word;
+ color: #333333;
+ background-color: #f5f5f5;
+ border: 1px solid #ccc;
+ border-radius: 4px; }
+ pre code {
+ padding: 0;
+ font-size: inherit;
+ color: inherit;
+ white-space: pre-wrap;
+ background-color: transparent;
+ border-radius: 0; }
-.icojam_network:before {
- content: "\e734"; }
+.pre-scrollable {
+ max-height: 340px;
+ overflow-y: scroll; }
-.icojam_notebook_1:before {
- content: "\e735"; }
+.container {
+ margin-right: auto;
+ margin-left: auto;
+ padding-left: 15px;
+ padding-right: 15px; }
+ .container:before, .container:after {
+ content: " ";
+ display: table; }
+ .container:after {
+ clear: both; }
+ @media (min-width: 768px) {
+ .container {
+ width: 750px; } }
+ @media (min-width: 992px) {
+ .container {
+ width: 970px; } }
+ @media (min-width: 1200px) {
+ .container {
+ width: 1170px; } }
+
+.container-fluid {
+ margin-right: auto;
+ margin-left: auto;
+ padding-left: 15px;
+ padding-right: 15px; }
+ .container-fluid:before, .container-fluid:after {
+ content: " ";
+ display: table; }
+ .container-fluid:after {
+ clear: both; }
+
+.row {
+ margin-left: -15px;
+ margin-right: -15px; }
+ .row:before, .row:after {
+ content: " ";
+ display: table; }
+ .row:after {
+ clear: both; }
+
+.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
+ position: relative;
+ min-height: 1px;
+ padding-left: 15px;
+ padding-right: 15px; }
-.icojam_notebook_2:before {
- content: "\e736"; }
+.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
+ float: left; }
-.icojam_notebook_3:before {
- content: "\e737"; }
+.col-xs-1 {
+ width: 8.33333%; }
-.icojam_notebook_computer:before {
- content: "\e738"; }
+.col-xs-2 {
+ width: 16.66667%; }
-.icojam_photo_backside:before {
- content: "\e739"; }
+.col-xs-3 {
+ width: 25%; }
-.icojam_photo_camera:before {
- content: "\e73a"; }
+.col-xs-4 {
+ width: 33.33333%; }
-.icojam_photo_compact:before {
- content: "\e73b"; }
+.col-xs-5 {
+ width: 41.66667%; }
-.icojam_photo_flash:before {
- content: "\e73c"; }
+.col-xs-6 {
+ width: 50%; }
-.icojam_piano_music:before {
- content: "\e73d"; }
+.col-xs-7 {
+ width: 58.33333%; }
-.icojam_print:before {
- content: "\e73e"; }
+.col-xs-8 {
+ width: 66.66667%; }
-.icojam_projector:before {
- content: "\e73f"; }
+.col-xs-9 {
+ width: 75%; }
-.icojam_psp:before {
- content: "\e740"; }
+.col-xs-10 {
+ width: 83.33333%; }
-.icojam_radio:before {
- content: "\e741"; }
+.col-xs-11 {
+ width: 91.66667%; }
-.icojam_recorder:before {
- content: "\e742"; }
+.col-xs-12 {
+ width: 100%; }
-.icojam_remote_control_1:before {
- content: "\e743"; }
+.col-xs-pull-0 {
+ right: auto; }
-.icojam_remote_control_2:before {
- content: "\e744"; }
+.col-xs-pull-1 {
+ right: 8.33333%; }
-.icojam_save:before {
- content: "\e745"; }
+.col-xs-pull-2 {
+ right: 16.66667%; }
-.icojam_save_as:before {
- content: "\e746"; }
+.col-xs-pull-3 {
+ right: 25%; }
-.icojam_scanner:before {
- content: "\e747"; }
+.col-xs-pull-4 {
+ right: 33.33333%; }
-.icojam_sd_card_memory:before {
- content: "\e748"; }
+.col-xs-pull-5 {
+ right: 41.66667%; }
-.icojam_server:before {
- content: "\e749"; }
+.col-xs-pull-6 {
+ right: 50%; }
-.icojam_sim_card:before {
- content: "\e74a"; }
+.col-xs-pull-7 {
+ right: 58.33333%; }
-.icojam_smartphone_1:before {
- content: "\e74b"; }
+.col-xs-pull-8 {
+ right: 66.66667%; }
-.icojam_smartphone_2:before {
- content: "\e74c"; }
+.col-xs-pull-9 {
+ right: 75%; }
-.icojam_telephone_1:before {
- content: "\e74d"; }
+.col-xs-pull-10 {
+ right: 83.33333%; }
-.icojam_telephone_2:before {
- content: "\e74e"; }
+.col-xs-pull-11 {
+ right: 91.66667%; }
-.icojam_telephone_3:before {
- content: "\e74f"; }
+.col-xs-pull-12 {
+ right: 100%; }
-.icojam_tv:before {
- content: "\e750"; }
+.col-xs-push-0 {
+ left: auto; }
-.icojam_tv_wide:before {
- content: "\e751"; }
+.col-xs-push-1 {
+ left: 8.33333%; }
-.icojam_usb_flash:before {
- content: "\e752"; }
+.col-xs-push-2 {
+ left: 16.66667%; }
-.icojam_videocamera_1:before {
- content: "\e753"; }
+.col-xs-push-3 {
+ left: 25%; }
-.icojam_videocamera_2:before {
- content: "\e754"; }
+.col-xs-push-4 {
+ left: 33.33333%; }
-.icojam_videocamera_3:before {
- content: "\e755"; }
+.col-xs-push-5 {
+ left: 41.66667%; }
-.icojam_webcam:before {
- content: "\e756"; }
+.col-xs-push-6 {
+ left: 50%; }
-.icojam_aac:before {
- content: "\e757"; }
+.col-xs-push-7 {
+ left: 58.33333%; }
-.icojam_ai:before {
- content: "\e758"; }
+.col-xs-push-8 {
+ left: 66.66667%; }
-.icojam_ape:before {
- content: "\e759"; }
+.col-xs-push-9 {
+ left: 75%; }
-.icojam_asf:before {
- content: "\e75a"; }
+.col-xs-push-10 {
+ left: 83.33333%; }
-.icojam_avi:before {
- content: "\e75b"; }
+.col-xs-push-11 {
+ left: 91.66667%; }
-.icojam_bat:before {
- content: "\e75c"; }
+.col-xs-push-12 {
+ left: 100%; }
-.icojam_bmp:before {
- content: "\e75d"; }
+.col-xs-offset-0 {
+ margin-left: 0%; }
-.icojam_cdr:before {
- content: "\e75e"; }
+.col-xs-offset-1 {
+ margin-left: 8.33333%; }
-.icojam_cfg:before {
- content: "\e75f"; }
+.col-xs-offset-2 {
+ margin-left: 16.66667%; }
-.icojam_chm:before {
- content: "\e760"; }
+.col-xs-offset-3 {
+ margin-left: 25%; }
-.icojam_com:before {
- content: "\e761"; }
+.col-xs-offset-4 {
+ margin-left: 33.33333%; }
-.icojam_css:before {
- content: "\e762"; }
+.col-xs-offset-5 {
+ margin-left: 41.66667%; }
-.icojam_csv:before {
- content: "\e763"; }
+.col-xs-offset-6 {
+ margin-left: 50%; }
-.icojam_djv:before {
- content: "\e764"; }
+.col-xs-offset-7 {
+ margin-left: 58.33333%; }
-.icojam_dll:before {
- content: "\e765"; }
+.col-xs-offset-8 {
+ margin-left: 66.66667%; }
-.icojam_doc:before {
- content: "\e766"; }
+.col-xs-offset-9 {
+ margin-left: 75%; }
-.icojam_document_audio:before {
- content: "\e767"; }
+.col-xs-offset-10 {
+ margin-left: 83.33333%; }
-.icojam_document_image:before {
- content: "\e768"; }
+.col-xs-offset-11 {
+ margin-left: 91.66667%; }
-.icojam_document_photo:before {
- content: "\e769"; }
+.col-xs-offset-12 {
+ margin-left: 100%; }
-.icojam_document_system:before {
- content: "\e76a"; }
+@media (min-width: 768px) {
+ .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
+ float: left; }
-.icojam_document_text:before {
- content: "\e76b"; }
+ .col-sm-1 {
+ width: 8.33333%; }
-.icojam_document_unknown:before {
- content: "\e76c"; }
+ .col-sm-2 {
+ width: 16.66667%; }
-.icojam_document_video:before {
- content: "\e76d"; }
+ .col-sm-3 {
+ width: 25%; }
-.icojam_document_voice:before {
- content: "\e76e"; }
+ .col-sm-4 {
+ width: 33.33333%; }
-.icojam_docx:before {
- content: "\e76f"; }
+ .col-sm-5 {
+ width: 41.66667%; }
-.icojam_eps:before {
- content: "\e770"; }
+ .col-sm-6 {
+ width: 50%; }
-.icojam_exe:before {
- content: "\e771"; }
+ .col-sm-7 {
+ width: 58.33333%; }
-.icojam_file_audio:before {
- content: "\e772"; }
+ .col-sm-8 {
+ width: 66.66667%; }
-.icojam_file_image:before {
- content: "\e773"; }
+ .col-sm-9 {
+ width: 75%; }
-.icojam_file_photo:before {
- content: "\e774"; }
+ .col-sm-10 {
+ width: 83.33333%; }
-.icojam_file_video:before {
- content: "\e775"; }
+ .col-sm-11 {
+ width: 91.66667%; }
-.icojam_file_voice:before {
- content: "\e776"; }
+ .col-sm-12 {
+ width: 100%; }
-.icojam_fla:before {
- content: "\e777"; }
+ .col-sm-pull-0 {
+ right: auto; }
-.icojam_flac:before {
- content: "\e778"; }
+ .col-sm-pull-1 {
+ right: 8.33333%; }
-.icojam_gif:before {
- content: "\e779"; }
+ .col-sm-pull-2 {
+ right: 16.66667%; }
-.icojam_html:before {
- content: "\e77a"; }
+ .col-sm-pull-3 {
+ right: 25%; }
-.icojam_icl:before {
- content: "\e77b"; }
+ .col-sm-pull-4 {
+ right: 33.33333%; }
-.icojam_icns:before {
- content: "\e77c"; }
+ .col-sm-pull-5 {
+ right: 41.66667%; }
-.icojam_ico:before {
- content: "\e77d"; }
+ .col-sm-pull-6 {
+ right: 50%; }
-.icojam_ini:before {
- content: "\e77e"; }
+ .col-sm-pull-7 {
+ right: 58.33333%; }
-.icojam_iso:before {
- content: "\e77f"; }
+ .col-sm-pull-8 {
+ right: 66.66667%; }
-.icojam_jpg:before {
- content: "\e780"; }
+ .col-sm-pull-9 {
+ right: 75%; }
-.icojam_log:before {
- content: "\e781"; }
+ .col-sm-pull-10 {
+ right: 83.33333%; }
-.icojam_midi:before {
- content: "\e782"; }
+ .col-sm-pull-11 {
+ right: 91.66667%; }
-.icojam_mkv:before {
- content: "\e783"; }
+ .col-sm-pull-12 {
+ right: 100%; }
-.icojam_mov:before {
- content: "\e784"; }
+ .col-sm-push-0 {
+ left: auto; }
-.icojam_mp3:before {
- content: "\e785"; }
+ .col-sm-push-1 {
+ left: 8.33333%; }
-.icojam_mp4:before {
- content: "\e786"; }
+ .col-sm-push-2 {
+ left: 16.66667%; }
-.icojam_mpg:before {
- content: "\e787"; }
+ .col-sm-push-3 {
+ left: 25%; }
-.icojam_ogg:before {
- content: "\e788"; }
+ .col-sm-push-4 {
+ left: 33.33333%; }
-.icojam_ogm:before {
- content: "\e789"; }
+ .col-sm-push-5 {
+ left: 41.66667%; }
-.icojam_otf:before {
- content: "\e78a"; }
+ .col-sm-push-6 {
+ left: 50%; }
-.icojam_pdf:before {
- content: "\e78b"; }
+ .col-sm-push-7 {
+ left: 58.33333%; }
-.icojam_png:before {
- content: "\e78c"; }
+ .col-sm-push-8 {
+ left: 66.66667%; }
-.icojam_ppt:before {
- content: "\e78d"; }
+ .col-sm-push-9 {
+ left: 75%; }
-.icojam_pptx:before {
- content: "\e78e"; }
+ .col-sm-push-10 {
+ left: 83.33333%; }
-.icojam_psd:before {
- content: "\e78f"; }
+ .col-sm-push-11 {
+ left: 91.66667%; }
-.icojam_ra:before {
- content: "\e790"; }
+ .col-sm-push-12 {
+ left: 100%; }
-.icojam_rar:before {
- content: "\e791"; }
+ .col-sm-offset-0 {
+ margin-left: 0%; }
-.icojam_raw:before {
- content: "\e792"; }
+ .col-sm-offset-1 {
+ margin-left: 8.33333%; }
-.icojam_rm:before {
- content: "\e793"; }
+ .col-sm-offset-2 {
+ margin-left: 16.66667%; }
-.icojam_rtf:before {
- content: "\e794"; }
+ .col-sm-offset-3 {
+ margin-left: 25%; }
-.icojam_svg:before {
- content: "\e795"; }
+ .col-sm-offset-4 {
+ margin-left: 33.33333%; }
-.icojam_svgz:before {
- content: "\e796"; }
+ .col-sm-offset-5 {
+ margin-left: 41.66667%; }
-.icojam_swf:before {
- content: "\e797"; }
+ .col-sm-offset-6 {
+ margin-left: 50%; }
-.icojam_sys:before {
- content: "\e798"; }
+ .col-sm-offset-7 {
+ margin-left: 58.33333%; }
-.icojam_tga:before {
- content: "\e799"; }
+ .col-sm-offset-8 {
+ margin-left: 66.66667%; }
-.icojam_tif:before {
- content: "\e79a"; }
+ .col-sm-offset-9 {
+ margin-left: 75%; }
-.icojam_ttf:before {
- content: "\e79b"; }
+ .col-sm-offset-10 {
+ margin-left: 83.33333%; }
-.icojam_txt:before {
- content: "\e79c"; }
+ .col-sm-offset-11 {
+ margin-left: 91.66667%; }
-.icojam_wav:before {
- content: "\e79d"; }
+ .col-sm-offset-12 {
+ margin-left: 100%; } }
+@media (min-width: 992px) {
+ .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
+ float: left; }
-.icojam_wma:before {
- content: "\e79e"; }
+ .col-md-1 {
+ width: 8.33333%; }
-.icojam_wmv:before {
- content: "\e79f"; }
+ .col-md-2 {
+ width: 16.66667%; }
-.icojam_xls:before {
- content: "\e7a0"; }
+ .col-md-3 {
+ width: 25%; }
-.icojam_xlsx:before {
- content: "\e7a1"; }
+ .col-md-4 {
+ width: 33.33333%; }
-.icojam_xml:before {
- content: "\e7a2"; }
+ .col-md-5 {
+ width: 41.66667%; }
-.icojam_zip:before {
- content: "\e7a3"; }
+ .col-md-6 {
+ width: 50%; }
-.icojam_alarm_clock:before {
- content: "\e7a4"; }
+ .col-md-7 {
+ width: 58.33333%; }
-.icojam_alphabet:before {
- content: "\e7a5"; }
+ .col-md-8 {
+ width: 66.66667%; }
-.icojam_army_training:before {
- content: "\e7a6"; }
+ .col-md-9 {
+ width: 75%; }
-.icojam_badge:before {
- content: "\e7a7"; }
+ .col-md-10 {
+ width: 83.33333%; }
-.icojam_book_1:before {
- content: "\e7a8"; }
+ .col-md-11 {
+ width: 91.66667%; }
-.icojam_book_2:before {
- content: "\e7a9"; }
+ .col-md-12 {
+ width: 100%; }
-.icojam_book_3:before {
- content: "\e7aa"; }
+ .col-md-pull-0 {
+ right: auto; }
-.icojam_books_12:before {
- content: "\e7ab"; }
+ .col-md-pull-1 {
+ right: 8.33333%; }
-.icojam_books_22:before {
- content: "\e7ac"; }
+ .col-md-pull-2 {
+ right: 16.66667%; }
-.icojam_brush:before {
- content: "\e7ad"; }
+ .col-md-pull-3 {
+ right: 25%; }
-.icojam_calculator2:before {
- content: "\e7ae"; }
+ .col-md-pull-4 {
+ right: 33.33333%; }
-.icojam_calendar:before {
- content: "\e7af"; }
+ .col-md-pull-5 {
+ right: 41.66667%; }
-.icojam_certificate:before {
- content: "\e7b0"; }
+ .col-md-pull-6 {
+ right: 50%; }
-.icojam_chemistry_1:before {
- content: "\e7b1"; }
+ .col-md-pull-7 {
+ right: 58.33333%; }
-.icojam_chemistry_2:before {
- content: "\e7b2"; }
+ .col-md-pull-8 {
+ right: 66.66667%; }
-.icojam_classboard:before {
- content: "\e7b3"; }
+ .col-md-pull-9 {
+ right: 75%; }
-.icojam_copybook_1:before {
- content: "\e7b4"; }
+ .col-md-pull-10 {
+ right: 83.33333%; }
-.icojam_copybook_2:before {
- content: "\e7b5"; }
+ .col-md-pull-11 {
+ right: 91.66667%; }
-.icojam_copybook_3:before {
- content: "\e7b6"; }
+ .col-md-pull-12 {
+ right: 100%; }
-.icojam_copybook_4:before {
- content: "\e7b7"; }
+ .col-md-push-0 {
+ left: auto; }
-.icojam_desk:before {
- content: "\e7b8"; }
+ .col-md-push-1 {
+ left: 8.33333%; }
-.icojam_dna_1:before {
- content: "\e7b9"; }
+ .col-md-push-2 {
+ left: 16.66667%; }
-.icojam_dna_2:before {
- content: "\e7ba"; }
+ .col-md-push-3 {
+ left: 25%; }
-.icojam_drawing:before {
- content: "\e7bb"; }
+ .col-md-push-4 {
+ left: 33.33333%; }
-.icojam_geography:before {
- content: "\e7bc"; }
+ .col-md-push-5 {
+ left: 41.66667%; }
-.icojam_geography_earth:before {
- content: "\e7bd"; }
+ .col-md-push-6 {
+ left: 50%; }
-.icojam_geography_globe:before {
- content: "\e7be"; }
+ .col-md-push-7 {
+ left: 58.33333%; }
-.icojam_geometry:before {
- content: "\e7bf"; }
+ .col-md-push-8 {
+ left: 66.66667%; }
-.icojam_holliday:before {
- content: "\e7c0"; }
+ .col-md-push-9 {
+ left: 75%; }
-.icojam_home2:before {
- content: "\e7c1"; }
+ .col-md-push-10 {
+ left: 83.33333%; }
-.icojam_language:before {
- content: "\e7c2"; }
+ .col-md-push-11 {
+ left: 91.66667%; }
-.icojam_list_1:before {
- content: "\e7c3"; }
+ .col-md-push-12 {
+ left: 100%; }
-.icojam_list_2:before {
- content: "\e7c4"; }
+ .col-md-offset-0 {
+ margin-left: 0%; }
-.icojam_list_3:before {
- content: "\e7c5"; }
+ .col-md-offset-1 {
+ margin-left: 8.33333%; }
-.icojam_list_4:before {
- content: "\e7c6"; }
+ .col-md-offset-2 {
+ margin-left: 16.66667%; }
-.icojam_list_5:before {
- content: "\e7c7"; }
+ .col-md-offset-3 {
+ margin-left: 25%; }
-.icojam_list_6:before {
- content: "\e7c8"; }
+ .col-md-offset-4 {
+ margin-left: 33.33333%; }
-.icojam_list_7:before {
- content: "\e7c9"; }
+ .col-md-offset-5 {
+ margin-left: 41.66667%; }
-.icojam_list_8:before {
- content: "\e7ca"; }
+ .col-md-offset-6 {
+ margin-left: 50%; }
-.icojam_mark_1:before {
- content: "\e7cb"; }
+ .col-md-offset-7 {
+ margin-left: 58.33333%; }
-.icojam_mark_1-:before {
- content: "\e7cc"; }
+ .col-md-offset-8 {
+ margin-left: 66.66667%; }
-.icojam_mark_12:before {
- content: "\e7cd"; }
+ .col-md-offset-9 {
+ margin-left: 75%; }
-.icojam_mark_2:before {
- content: "\e7ce"; }
+ .col-md-offset-10 {
+ margin-left: 83.33333%; }
-.icojam_mark_2-:before {
- content: "\e7cf"; }
+ .col-md-offset-11 {
+ margin-left: 91.66667%; }
-.icojam_mark_22:before {
- content: "\e7d0"; }
+ .col-md-offset-12 {
+ margin-left: 100%; } }
+@media (min-width: 1200px) {
+ .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
+ float: left; }
-.icojam_mark_3:before {
- content: "\e7d1"; }
+ .col-lg-1 {
+ width: 8.33333%; }
-.icojam_mark_3-:before {
- content: "\e7d2"; }
+ .col-lg-2 {
+ width: 16.66667%; }
-.icojam_mark_32:before {
- content: "\e7d3"; }
+ .col-lg-3 {
+ width: 25%; }
-.icojam_mark_4:before {
- content: "\e7d4"; }
+ .col-lg-4 {
+ width: 33.33333%; }
-.icojam_mark_4-:before {
- content: "\e7d5"; }
+ .col-lg-5 {
+ width: 41.66667%; }
-.icojam_mark_42:before {
- content: "\e7d6"; }
+ .col-lg-6 {
+ width: 50%; }
-.icojam_mark_5:before {
- content: "\e7d7"; }
+ .col-lg-7 {
+ width: 58.33333%; }
-.icojam_mark_5-:before {
- content: "\e7d8"; }
+ .col-lg-8 {
+ width: 66.66667%; }
-.icojam_mark_52:before {
- content: "\e7d9"; }
+ .col-lg-9 {
+ width: 75%; }
-.icojam_mark_a:before {
- content: "\e7da"; }
+ .col-lg-10 {
+ width: 83.33333%; }
-.icojam_mark_a-:before {
- content: "\e7db"; }
+ .col-lg-11 {
+ width: 91.66667%; }
-.icojam_mark_a2:before {
- content: "\e7dc"; }
+ .col-lg-12 {
+ width: 100%; }
-.icojam_mark_b:before {
- content: "\e7dd"; }
+ .col-lg-pull-0 {
+ right: auto; }
-.icojam_mark_b-:before {
- content: "\e7de"; }
+ .col-lg-pull-1 {
+ right: 8.33333%; }
-.icojam_mark_b2:before {
- content: "\e7df"; }
+ .col-lg-pull-2 {
+ right: 16.66667%; }
-.icojam_mark_c:before {
- content: "\e7e0"; }
+ .col-lg-pull-3 {
+ right: 25%; }
-.icojam_mark_c-:before {
- content: "\e7e1"; }
+ .col-lg-pull-4 {
+ right: 33.33333%; }
-.icojam_mark_c2:before {
- content: "\e7e2"; }
+ .col-lg-pull-5 {
+ right: 41.66667%; }
-.icojam_mark_d:before {
- content: "\e7e3"; }
+ .col-lg-pull-6 {
+ right: 50%; }
-.icojam_mark_d-:before {
- content: "\e7e4"; }
+ .col-lg-pull-7 {
+ right: 58.33333%; }
-.icojam_mark_d2:before {
- content: "\e7e5"; }
+ .col-lg-pull-8 {
+ right: 66.66667%; }
-.icojam_mark_e:before {
- content: "\e7e6"; }
+ .col-lg-pull-9 {
+ right: 75%; }
-.icojam_mark_e-:before {
- content: "\e7e7"; }
+ .col-lg-pull-10 {
+ right: 83.33333%; }
-.icojam_mark_e2:before {
- content: "\e7e8"; }
+ .col-lg-pull-11 {
+ right: 91.66667%; }
-.icojam_mathematics:before {
- content: "\e7e9"; }
+ .col-lg-pull-12 {
+ right: 100%; }
-.icojam_music:before {
- content: "\e7ea"; }
+ .col-lg-push-0 {
+ left: auto; }
-.icojam_notebook:before {
- content: "\e7eb"; }
+ .col-lg-push-1 {
+ left: 8.33333%; }
-.icojam_notepad:before {
- content: "\e7ec"; }
+ .col-lg-push-2 {
+ left: 16.66667%; }
-.icojam_palette_1:before {
- content: "\e7ed"; }
+ .col-lg-push-3 {
+ left: 25%; }
-.icojam_palette_2:before {
- content: "\e7ee"; }
+ .col-lg-push-4 {
+ left: 33.33333%; }
-.icojam_pen:before {
- content: "\e7ef"; }
+ .col-lg-push-5 {
+ left: 41.66667%; }
-.icojam_pencil:before {
- content: "\e7f0"; }
+ .col-lg-push-6 {
+ left: 50%; }
-.icojam_pupil_boy:before {
- content: "\e7f1"; }
+ .col-lg-push-7 {
+ left: 58.33333%; }
-.icojam_pupil_girl:before {
- content: "\e7f2"; }
+ .col-lg-push-8 {
+ left: 66.66667%; }
-.icojam_pupils:before {
- content: "\e7f3"; }
+ .col-lg-push-9 {
+ left: 75%; }
-.icojam_rating:before {
- content: "\e7f4"; }
+ .col-lg-push-10 {
+ left: 83.33333%; }
-.icojam_rating_high:before {
- content: "\e7f5"; }
+ .col-lg-push-11 {
+ left: 91.66667%; }
-.icojam_rating_lowstar:before {
- content: "\e7f6"; }
+ .col-lg-push-12 {
+ left: 100%; }
-.icojam_ruler:before {
- content: "\e7f7"; }
+ .col-lg-offset-0 {
+ margin-left: 0%; }
-.icojam_school:before {
- content: "\e7f8"; }
+ .col-lg-offset-1 {
+ margin-left: 8.33333%; }
-.icojam_school_bus:before {
- content: "\e7f9"; }
+ .col-lg-offset-2 {
+ margin-left: 16.66667%; }
-.icojam_sport_1:before {
- content: "\e7fa"; }
+ .col-lg-offset-3 {
+ margin-left: 25%; }
-.icojam_sport_2:before {
- content: "\e7fb"; }
+ .col-lg-offset-4 {
+ margin-left: 33.33333%; }
-.icojam_bank_1:before {
- content: "\e7fc"; }
+ .col-lg-offset-5 {
+ margin-left: 41.66667%; }
-.icojam_bank_2:before {
- content: "\e7fd"; }
-
-.icojam_bed:before {
- content: "\e7fe"; }
+ .col-lg-offset-6 {
+ margin-left: 50%; }
-.icojam_career:before {
- content: "\e7ff"; }
+ .col-lg-offset-7 {
+ margin-left: 58.33333%; }
-.icojam_chair:before {
- content: "\e800"; }
+ .col-lg-offset-8 {
+ margin-left: 66.66667%; }
-.icojam_change:before {
- content: "\e801"; }
+ .col-lg-offset-9 {
+ margin-left: 75%; }
-.icojam_coin_amero:before {
- content: "\e802"; }
+ .col-lg-offset-10 {
+ margin-left: 83.33333%; }
-.icojam_coin_dollar:before {
- content: "\e803"; }
+ .col-lg-offset-11 {
+ margin-left: 91.66667%; }
-.icojam_coin_euro:before {
- content: "\e804"; }
+ .col-lg-offset-12 {
+ margin-left: 100%; } }
+table {
+ background-color: transparent; }
-.icojam_coin_pound:before {
- content: "\e805"; }
+caption {
+ padding-top: 8px;
+ padding-bottom: 8px;
+ color: #777777;
+ text-align: left; }
-.icojam_coin_ruble:before {
- content: "\e806"; }
+th {
+ text-align: left; }
-.icojam_coin_yuan:before {
- content: "\e807"; }
+.table {
+ width: 100%;
+ max-width: 100%;
+ margin-bottom: 20px; }
+ .table > thead > tr > th,
+ .table > thead > tr > td,
+ .table > tbody > tr > th,
+ .table > tbody > tr > td,
+ .table > tfoot > tr > th,
+ .table > tfoot > tr > td {
+ padding: 8px;
+ line-height: 1.42857;
+ vertical-align: top;
+ border-top: 1px solid #ddd; }
+ .table > thead > tr > th {
+ vertical-align: bottom;
+ border-bottom: 2px solid #ddd; }
+ .table > caption + thead > tr:first-child > th,
+ .table > caption + thead > tr:first-child > td,
+ .table > colgroup + thead > tr:first-child > th,
+ .table > colgroup + thead > tr:first-child > td,
+ .table > thead:first-child > tr:first-child > th,
+ .table > thead:first-child > tr:first-child > td {
+ border-top: 0; }
+ .table > tbody + tbody {
+ border-top: 2px solid #ddd; }
+ .table .table {
+ background-color: #fff; }
+
+.table-condensed > thead > tr > th,
+.table-condensed > thead > tr > td,
+.table-condensed > tbody > tr > th,
+.table-condensed > tbody > tr > td,
+.table-condensed > tfoot > tr > th,
+.table-condensed > tfoot > tr > td {
+ padding: 5px; }
+
+.table-bordered {
+ border: 1px solid #ddd; }
+ .table-bordered > thead > tr > th,
+ .table-bordered > thead > tr > td,
+ .table-bordered > tbody > tr > th,
+ .table-bordered > tbody > tr > td,
+ .table-bordered > tfoot > tr > th,
+ .table-bordered > tfoot > tr > td {
+ border: 1px solid #ddd; }
+ .table-bordered > thead > tr > th,
+ .table-bordered > thead > tr > td {
+ border-bottom-width: 2px; }
+
+.table-striped > tbody > tr:nth-of-type(odd) {
+ background-color: #f9f9f9; }
+
+.table-hover > tbody > tr:hover {
+ background-color: #f5f5f5; }
+
+table col[class*="col-"] {
+ position: static;
+ float: none;
+ display: table-column; }
-.icojam_coins:before {
- content: "\e808"; }
+table td[class*="col-"],
+table th[class*="col-"] {
+ position: static;
+ float: none;
+ display: table-cell; }
+
+.table > thead > tr > td.active,
+.table > thead > tr > th.active, .table > thead > tr.active > td, .table > thead > tr.active > th,
+.table > tbody > tr > td.active,
+.table > tbody > tr > th.active,
+.table > tbody > tr.active > td,
+.table > tbody > tr.active > th,
+.table > tfoot > tr > td.active,
+.table > tfoot > tr > th.active,
+.table > tfoot > tr.active > td,
+.table > tfoot > tr.active > th {
+ background-color: #f5f5f5; }
+
+.table-hover > tbody > tr > td.active:hover,
+.table-hover > tbody > tr > th.active:hover, .table-hover > tbody > tr.active:hover > td, .table-hover > tbody > tr:hover > .active, .table-hover > tbody > tr.active:hover > th {
+ background-color: #e8e8e8; }
+
+.table > thead > tr > td.success,
+.table > thead > tr > th.success, .table > thead > tr.success > td, .table > thead > tr.success > th,
+.table > tbody > tr > td.success,
+.table > tbody > tr > th.success,
+.table > tbody > tr.success > td,
+.table > tbody > tr.success > th,
+.table > tfoot > tr > td.success,
+.table > tfoot > tr > th.success,
+.table > tfoot > tr.success > td,
+.table > tfoot > tr.success > th {
+ background-color: #dff0d8; }
+
+.table-hover > tbody > tr > td.success:hover,
+.table-hover > tbody > tr > th.success:hover, .table-hover > tbody > tr.success:hover > td, .table-hover > tbody > tr:hover > .success, .table-hover > tbody > tr.success:hover > th {
+ background-color: #d0e9c6; }
+
+.table > thead > tr > td.info,
+.table > thead > tr > th.info, .table > thead > tr.info > td, .table > thead > tr.info > th,
+.table > tbody > tr > td.info,
+.table > tbody > tr > th.info,
+.table > tbody > tr.info > td,
+.table > tbody > tr.info > th,
+.table > tfoot > tr > td.info,
+.table > tfoot > tr > th.info,
+.table > tfoot > tr.info > td,
+.table > tfoot > tr.info > th {
+ background-color: #d9edf7; }
+
+.table-hover > tbody > tr > td.info:hover,
+.table-hover > tbody > tr > th.info:hover, .table-hover > tbody > tr.info:hover > td, .table-hover > tbody > tr:hover > .info, .table-hover > tbody > tr.info:hover > th {
+ background-color: #c4e3f3; }
+
+.table > thead > tr > td.warning,
+.table > thead > tr > th.warning, .table > thead > tr.warning > td, .table > thead > tr.warning > th,
+.table > tbody > tr > td.warning,
+.table > tbody > tr > th.warning,
+.table > tbody > tr.warning > td,
+.table > tbody > tr.warning > th,
+.table > tfoot > tr > td.warning,
+.table > tfoot > tr > th.warning,
+.table > tfoot > tr.warning > td,
+.table > tfoot > tr.warning > th {
+ background-color: #fcf8e3; }
+
+.table-hover > tbody > tr > td.warning:hover,
+.table-hover > tbody > tr > th.warning:hover, .table-hover > tbody > tr.warning:hover > td, .table-hover > tbody > tr:hover > .warning, .table-hover > tbody > tr.warning:hover > th {
+ background-color: #faf2cc; }
+
+.table > thead > tr > td.danger,
+.table > thead > tr > th.danger, .table > thead > tr.danger > td, .table > thead > tr.danger > th,
+.table > tbody > tr > td.danger,
+.table > tbody > tr > th.danger,
+.table > tbody > tr.danger > td,
+.table > tbody > tr.danger > th,
+.table > tfoot > tr > td.danger,
+.table > tfoot > tr > th.danger,
+.table > tfoot > tr.danger > td,
+.table > tfoot > tr.danger > th {
+ background-color: #f2dede; }
+
+.table-hover > tbody > tr > td.danger:hover,
+.table-hover > tbody > tr > th.danger:hover, .table-hover > tbody > tr.danger:hover > td, .table-hover > tbody > tr:hover > .danger, .table-hover > tbody > tr.danger:hover > th {
+ background-color: #ebcccc; }
+
+.table-responsive {
+ overflow-x: auto;
+ min-height: 0.01%; }
+ @media screen and (max-width: 767px) {
+ .table-responsive {
+ width: 100%;
+ margin-bottom: 15px;
+ overflow-y: hidden;
+ -ms-overflow-style: -ms-autohiding-scrollbar;
+ border: 1px solid #ddd; }
+ .table-responsive > .table {
+ margin-bottom: 0; }
+ .table-responsive > .table > thead > tr > th,
+ .table-responsive > .table > thead > tr > td,
+ .table-responsive > .table > tbody > tr > th,
+ .table-responsive > .table > tbody > tr > td,
+ .table-responsive > .table > tfoot > tr > th,
+ .table-responsive > .table > tfoot > tr > td {
+ white-space: nowrap; }
+ .table-responsive > .table-bordered {
+ border: 0; }
+ .table-responsive > .table-bordered > thead > tr > th:first-child,
+ .table-responsive > .table-bordered > thead > tr > td:first-child,
+ .table-responsive > .table-bordered > tbody > tr > th:first-child,
+ .table-responsive > .table-bordered > tbody > tr > td:first-child,
+ .table-responsive > .table-bordered > tfoot > tr > th:first-child,
+ .table-responsive > .table-bordered > tfoot > tr > td:first-child {
+ border-left: 0; }
+ .table-responsive > .table-bordered > thead > tr > th:last-child,
+ .table-responsive > .table-bordered > thead > tr > td:last-child,
+ .table-responsive > .table-bordered > tbody > tr > th:last-child,
+ .table-responsive > .table-bordered > tbody > tr > td:last-child,
+ .table-responsive > .table-bordered > tfoot > tr > th:last-child,
+ .table-responsive > .table-bordered > tfoot > tr > td:last-child {
+ border-right: 0; }
+ .table-responsive > .table-bordered > tbody > tr:last-child > th,
+ .table-responsive > .table-bordered > tbody > tr:last-child > td,
+ .table-responsive > .table-bordered > tfoot > tr:last-child > th,
+ .table-responsive > .table-bordered > tfoot > tr:last-child > td {
+ border-bottom: 0; } }
-.icojam_crisis:before {
- content: "\e809"; }
+fieldset {
+ padding: 0;
+ margin: 0;
+ border: 0;
+ min-width: 0; }
-.icojam_elevation_1:before {
- content: "\e80a"; }
+legend {
+ display: block;
+ width: 100%;
+ padding: 0;
+ margin-bottom: 20px;
+ font-size: 21px;
+ line-height: inherit;
+ color: #333333;
+ border: 0;
+ border-bottom: 1px solid #e5e5e5; }
-.icojam_elevation_2:before {
- content: "\e80b"; }
+label {
+ display: inline-block;
+ max-width: 100%;
+ margin-bottom: 5px;
+ font-weight: bold; }
-.icojam_elevation_3:before {
- content: "\e80c"; }
+input[type="search"] {
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box; }
-.icojam_elevation_4:before {
- content: "\e80d"; }
+input[type="radio"],
+input[type="checkbox"] {
+ margin: 4px 0 0;
+ margin-top: 1px \9;
+ line-height: normal; }
-.icojam_elevation_5:before {
- content: "\e80e"; }
+input[type="file"] {
+ display: block; }
-.icojam_elevation_6:before {
- content: "\e80f"; }
+input[type="range"] {
+ display: block;
+ width: 100%; }
-.icojam_factory_12:before {
- content: "\e810"; }
+select[multiple],
+select[size] {
+ height: auto; }
-.icojam_factory_22:before {
- content: "\e811"; }
+input[type="file"]:focus,
+input[type="radio"]:focus,
+input[type="checkbox"]:focus {
+ outline: thin dotted;
+ outline: 5px auto -webkit-focus-ring-color;
+ outline-offset: -2px; }
-.icojam_hierarchy_1:before {
- content: "\e812"; }
+output {
+ display: block;
+ padding-top: 7px;
+ font-size: 14px;
+ line-height: 1.42857;
+ color: #555555; }
-.icojam_hierarchy_2:before {
- content: "\e813"; }
+.form-control {
+ display: block;
+ width: 100%;
+ height: 34px;
+ padding: 6px 12px;
+ font-size: 14px;
+ line-height: 1.42857;
+ color: #555555;
+ background-color: #fff;
+ background-image: none;
+ border: 1px solid #ccc;
+ border-radius: 4px;
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+ -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
+ -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
+ transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; }
+ .form-control:focus {
+ border-color: #66afe9;
+ outline: 0;
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }
+ .form-control::-moz-placeholder {
+ color: #999;
+ opacity: 1; }
+ .form-control:-ms-input-placeholder {
+ color: #999; }
+ .form-control::-webkit-input-placeholder {
+ color: #999; }
+ .form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {
+ background-color: #eeeeee;
+ opacity: 1; }
+ .form-control[disabled], fieldset[disabled] .form-control {
+ cursor: not-allowed; }
+
+textarea.form-control {
+ height: auto; }
-.icojam_income_1:before {
- content: "\e814"; }
+input[type="search"] {
+ -webkit-appearance: none; }
+
+@media screen and (-webkit-min-device-pixel-ratio: 0) {
+ input[type="date"].form-control,
+ input[type="time"].form-control,
+ input[type="datetime-local"].form-control,
+ input[type="month"].form-control {
+ line-height: 34px; }
+ input[type="date"].input-sm, .input-group-sm > input[type="date"].form-control,
+ .input-group-sm > input[type="date"].input-group-addon,
+ .input-group-sm > .input-group-btn > input[type="date"].btn, .input-group-sm input[type="date"],
+ input[type="time"].input-sm,
+ .input-group-sm > input[type="time"].form-control,
+ .input-group-sm > input[type="time"].input-group-addon,
+ .input-group-sm > .input-group-btn > input[type="time"].btn, .input-group-sm
+ input[type="time"],
+ input[type="datetime-local"].input-sm,
+ .input-group-sm > input[type="datetime-local"].form-control,
+ .input-group-sm > input[type="datetime-local"].input-group-addon,
+ .input-group-sm > .input-group-btn > input[type="datetime-local"].btn, .input-group-sm
+ input[type="datetime-local"],
+ input[type="month"].input-sm,
+ .input-group-sm > input[type="month"].form-control,
+ .input-group-sm > input[type="month"].input-group-addon,
+ .input-group-sm > .input-group-btn > input[type="month"].btn, .input-group-sm
+ input[type="month"] {
+ line-height: 30px; }
+ input[type="date"].input-lg, .input-group-lg > input[type="date"].form-control,
+ .input-group-lg > input[type="date"].input-group-addon,
+ .input-group-lg > .input-group-btn > input[type="date"].btn, .input-group-lg input[type="date"],
+ input[type="time"].input-lg,
+ .input-group-lg > input[type="time"].form-control,
+ .input-group-lg > input[type="time"].input-group-addon,
+ .input-group-lg > .input-group-btn > input[type="time"].btn, .input-group-lg
+ input[type="time"],
+ input[type="datetime-local"].input-lg,
+ .input-group-lg > input[type="datetime-local"].form-control,
+ .input-group-lg > input[type="datetime-local"].input-group-addon,
+ .input-group-lg > .input-group-btn > input[type="datetime-local"].btn, .input-group-lg
+ input[type="datetime-local"],
+ input[type="month"].input-lg,
+ .input-group-lg > input[type="month"].form-control,
+ .input-group-lg > input[type="month"].input-group-addon,
+ .input-group-lg > .input-group-btn > input[type="month"].btn, .input-group-lg
+ input[type="month"] {
+ line-height: 46px; } }
+.form-group {
+ margin-bottom: 15px; }
+
+.radio,
+.checkbox {
+ position: relative;
+ display: block;
+ margin-top: 10px;
+ margin-bottom: 10px; }
+ .radio label,
+ .checkbox label {
+ min-height: 20px;
+ padding-left: 20px;
+ margin-bottom: 0;
+ font-weight: normal;
+ cursor: pointer; }
-.icojam_income_2:before {
- content: "\e815"; }
+.radio input[type="radio"],
+.radio-inline input[type="radio"],
+.checkbox input[type="checkbox"],
+.checkbox-inline input[type="checkbox"] {
+ position: absolute;
+ margin-left: -20px;
+ margin-top: 4px \9; }
-.icojam_income_3:before {
- content: "\e816"; }
+.radio + .radio,
+.checkbox + .checkbox {
+ margin-top: -5px; }
-.icojam_income_4:before {
- content: "\e817"; }
+.radio-inline,
+.checkbox-inline {
+ position: relative;
+ display: inline-block;
+ padding-left: 20px;
+ margin-bottom: 0;
+ vertical-align: middle;
+ font-weight: normal;
+ cursor: pointer; }
-.icojam_loan:before {
- content: "\e818"; }
+.radio-inline + .radio-inline,
+.checkbox-inline + .checkbox-inline {
+ margin-top: 0;
+ margin-left: 10px; }
-.icojam_market:before {
- content: "\e819"; }
+input[type="radio"][disabled], input[type="radio"].disabled, fieldset[disabled] input[type="radio"],
+input[type="checkbox"][disabled],
+input[type="checkbox"].disabled, fieldset[disabled]
+input[type="checkbox"] {
+ cursor: not-allowed; }
+
+.radio-inline.disabled, fieldset[disabled] .radio-inline,
+.checkbox-inline.disabled, fieldset[disabled]
+.checkbox-inline {
+ cursor: not-allowed; }
+
+.radio.disabled label, fieldset[disabled] .radio label,
+.checkbox.disabled label, fieldset[disabled]
+.checkbox label {
+ cursor: not-allowed; }
+
+.form-control-static {
+ padding-top: 7px;
+ padding-bottom: 7px;
+ margin-bottom: 0;
+ min-height: 34px; }
+ .form-control-static.input-lg, .input-group-lg > .form-control-static.form-control,
+ .input-group-lg > .form-control-static.input-group-addon,
+ .input-group-lg > .input-group-btn > .form-control-static.btn, .form-control-static.input-sm, .input-group-sm > .form-control-static.form-control,
+ .input-group-sm > .form-control-static.input-group-addon,
+ .input-group-sm > .input-group-btn > .form-control-static.btn {
+ padding-left: 0;
+ padding-right: 0; }
+
+.input-sm, .input-group-sm > .form-control,
+.input-group-sm > .input-group-addon,
+.input-group-sm > .input-group-btn > .btn {
+ height: 30px;
+ padding: 5px 10px;
+ font-size: 12px;
+ line-height: 1.5;
+ border-radius: 3px; }
+
+select.input-sm, .input-group-sm > select.form-control,
+.input-group-sm > select.input-group-addon,
+.input-group-sm > .input-group-btn > select.btn {
+ height: 30px;
+ line-height: 30px; }
+
+textarea.input-sm, .input-group-sm > textarea.form-control,
+.input-group-sm > textarea.input-group-addon,
+.input-group-sm > .input-group-btn > textarea.btn,
+select[multiple].input-sm,
+.input-group-sm > select[multiple].form-control,
+.input-group-sm > select[multiple].input-group-addon,
+.input-group-sm > .input-group-btn > select[multiple].btn {
+ height: auto; }
-.icojam_money:before {
- content: "\e81a"; }
+.form-group-sm .form-control {
+ height: 30px;
+ padding: 5px 10px;
+ font-size: 12px;
+ line-height: 1.5;
+ border-radius: 3px; }
+.form-group-sm select.form-control {
+ height: 30px;
+ line-height: 30px; }
+.form-group-sm textarea.form-control,
+.form-group-sm select[multiple].form-control {
+ height: auto; }
+.form-group-sm .form-control-static {
+ height: 30px;
+ min-height: 32px;
+ padding: 6px 10px;
+ font-size: 12px;
+ line-height: 1.5; }
-.icojam_moneys_1:before {
- content: "\e81b"; }
+.input-lg, .input-group-lg > .form-control,
+.input-group-lg > .input-group-addon,
+.input-group-lg > .input-group-btn > .btn {
+ height: 46px;
+ padding: 10px 16px;
+ font-size: 18px;
+ line-height: 1.33333;
+ border-radius: 6px; }
+
+select.input-lg, .input-group-lg > select.form-control,
+.input-group-lg > select.input-group-addon,
+.input-group-lg > .input-group-btn > select.btn {
+ height: 46px;
+ line-height: 46px; }
+
+textarea.input-lg, .input-group-lg > textarea.form-control,
+.input-group-lg > textarea.input-group-addon,
+.input-group-lg > .input-group-btn > textarea.btn,
+select[multiple].input-lg,
+.input-group-lg > select[multiple].form-control,
+.input-group-lg > select[multiple].input-group-addon,
+.input-group-lg > .input-group-btn > select[multiple].btn {
+ height: auto; }
-.icojam_moneys_2:before {
- content: "\e81c"; }
+.form-group-lg .form-control {
+ height: 46px;
+ padding: 10px 16px;
+ font-size: 18px;
+ line-height: 1.33333;
+ border-radius: 6px; }
+.form-group-lg select.form-control {
+ height: 46px;
+ line-height: 46px; }
+.form-group-lg textarea.form-control,
+.form-group-lg select[multiple].form-control {
+ height: auto; }
+.form-group-lg .form-control-static {
+ height: 46px;
+ min-height: 38px;
+ padding: 11px 16px;
+ font-size: 18px;
+ line-height: 1.33333; }
-.icojam_moneys_3:before {
- content: "\e81d"; }
+.has-feedback {
+ position: relative; }
+ .has-feedback .form-control {
+ padding-right: 42.5px; }
-.icojam_object_child:before {
- content: "\e81e"; }
+.form-control-feedback {
+ position: absolute;
+ top: 0;
+ right: 0;
+ z-index: 2;
+ display: block;
+ width: 34px;
+ height: 34px;
+ line-height: 34px;
+ text-align: center;
+ pointer-events: none; }
+
+.input-lg + .form-control-feedback, .input-group-lg > .form-control + .form-control-feedback,
+.input-group-lg > .input-group-addon + .form-control-feedback,
+.input-group-lg > .input-group-btn > .btn + .form-control-feedback,
+.input-group-lg + .form-control-feedback,
+.form-group-lg .form-control + .form-control-feedback {
+ width: 46px;
+ height: 46px;
+ line-height: 46px; }
+
+.input-sm + .form-control-feedback, .input-group-sm > .form-control + .form-control-feedback,
+.input-group-sm > .input-group-addon + .form-control-feedback,
+.input-group-sm > .input-group-btn > .btn + .form-control-feedback,
+.input-group-sm + .form-control-feedback,
+.form-group-sm .form-control + .form-control-feedback {
+ width: 30px;
+ height: 30px;
+ line-height: 30px; }
+
+.has-success .help-block,
+.has-success .control-label,
+.has-success .radio,
+.has-success .checkbox,
+.has-success .radio-inline,
+.has-success .checkbox-inline, .has-success.radio label, .has-success.checkbox label, .has-success.radio-inline label, .has-success.checkbox-inline label {
+ color: #3c763d; }
+.has-success .form-control {
+ border-color: #3c763d;
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
+ .has-success .form-control:focus {
+ border-color: #2b542c;
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; }
+.has-success .input-group-addon {
+ color: #3c763d;
+ border-color: #3c763d;
+ background-color: #dff0d8; }
+.has-success .form-control-feedback {
+ color: #3c763d; }
+
+.has-warning .help-block,
+.has-warning .control-label,
+.has-warning .radio,
+.has-warning .checkbox,
+.has-warning .radio-inline,
+.has-warning .checkbox-inline, .has-warning.radio label, .has-warning.checkbox label, .has-warning.radio-inline label, .has-warning.checkbox-inline label {
+ color: #8a6d3b; }
+.has-warning .form-control {
+ border-color: #8a6d3b;
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
+ .has-warning .form-control:focus {
+ border-color: #66512c;
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; }
+.has-warning .input-group-addon {
+ color: #8a6d3b;
+ border-color: #8a6d3b;
+ background-color: #fcf8e3; }
+.has-warning .form-control-feedback {
+ color: #8a6d3b; }
+
+.has-error .help-block,
+.has-error .control-label,
+.has-error .radio,
+.has-error .checkbox,
+.has-error .radio-inline,
+.has-error .checkbox-inline, .has-error.radio label, .has-error.checkbox label, .has-error.radio-inline label, .has-error.checkbox-inline label {
+ color: #a94442; }
+.has-error .form-control {
+ border-color: #a94442;
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
+ .has-error .form-control:focus {
+ border-color: #843534;
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; }
+.has-error .input-group-addon {
+ color: #a94442;
+ border-color: #a94442;
+ background-color: #f2dede; }
+.has-error .form-control-feedback {
+ color: #a94442; }
+
+.has-feedback label ~ .form-control-feedback {
+ top: 25px; }
+.has-feedback label.sr-only ~ .form-control-feedback {
+ top: 0; }
-.icojam_object_root:before {
- content: "\e81f"; }
+.help-block {
+ display: block;
+ margin-top: 5px;
+ margin-bottom: 10px;
+ color: #737373; }
-.icojam_payment_1:before {
- content: "\e820"; }
+@media (min-width: 768px) {
+ .form-inline .form-group {
+ display: inline-block;
+ margin-bottom: 0;
+ vertical-align: middle; }
+ .form-inline .form-control {
+ display: inline-block;
+ width: auto;
+ vertical-align: middle; }
+ .form-inline .form-control-static {
+ display: inline-block; }
+ .form-inline .input-group {
+ display: inline-table;
+ vertical-align: middle; }
+ .form-inline .input-group .input-group-addon,
+ .form-inline .input-group .input-group-btn,
+ .form-inline .input-group .form-control {
+ width: auto; }
+ .form-inline .input-group > .form-control {
+ width: 100%; }
+ .form-inline .control-label {
+ margin-bottom: 0;
+ vertical-align: middle; }
+ .form-inline .radio,
+ .form-inline .checkbox {
+ display: inline-block;
+ margin-top: 0;
+ margin-bottom: 0;
+ vertical-align: middle; }
+ .form-inline .radio label,
+ .form-inline .checkbox label {
+ padding-left: 0; }
+ .form-inline .radio input[type="radio"],
+ .form-inline .checkbox input[type="checkbox"] {
+ position: relative;
+ margin-left: 0; }
+ .form-inline .has-feedback .form-control-feedback {
+ top: 0; } }
+
+.form-horizontal .radio,
+.form-horizontal .checkbox,
+.form-horizontal .radio-inline,
+.form-horizontal .checkbox-inline {
+ margin-top: 0;
+ margin-bottom: 0;
+ padding-top: 7px; }
+.form-horizontal .radio,
+.form-horizontal .checkbox {
+ min-height: 27px; }
+.form-horizontal .form-group {
+ margin-left: -15px;
+ margin-right: -15px; }
+ .form-horizontal .form-group:before, .form-horizontal .form-group:after {
+ content: " ";
+ display: table; }
+ .form-horizontal .form-group:after {
+ clear: both; }
+@media (min-width: 768px) {
+ .form-horizontal .control-label {
+ text-align: right;
+ margin-bottom: 0;
+ padding-top: 7px; } }
+.form-horizontal .has-feedback .form-control-feedback {
+ right: 15px; }
+@media (min-width: 768px) {
+ .form-horizontal .form-group-lg .control-label {
+ padding-top: 14.33333px;
+ font-size: 18px; } }
+@media (min-width: 768px) {
+ .form-horizontal .form-group-sm .control-label {
+ padding-top: 6px;
+ font-size: 12px; } }
-.icojam_payment_2:before {
- content: "\e821"; }
+.btn {
+ display: inline-block;
+ margin-bottom: 0;
+ font-weight: normal;
+ text-align: center;
+ vertical-align: middle;
+ touch-action: manipulation;
+ cursor: pointer;
+ background-image: none;
+ border: 1px solid transparent;
+ white-space: nowrap;
+ padding: 6px 12px;
+ font-size: 14px;
+ line-height: 1.42857;
+ border-radius: 4px;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none; }
+ .btn:focus, .btn.focus, .btn:active:focus, .btn:active.focus, .btn.active:focus, .btn.active.focus {
+ outline: thin dotted;
+ outline: 5px auto -webkit-focus-ring-color;
+ outline-offset: -2px; }
+ .btn:hover, .btn:focus, .btn.focus {
+ color: #333;
+ text-decoration: none; }
+ .btn:active, .btn.active {
+ outline: 0;
+ background-image: none;
+ -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
+ .btn.disabled, .btn[disabled], fieldset[disabled] .btn {
+ cursor: not-allowed;
+ opacity: 0.65;
+ filter: alpha(opacity=65);
+ -webkit-box-shadow: none;
+ box-shadow: none; }
-.icojam_payment_3:before {
- content: "\e822"; }
+a.btn.disabled, fieldset[disabled] a.btn {
+ pointer-events: none; }
+
+.btn-default {
+ color: #333;
+ background-color: #fff;
+ border-color: #ccc; }
+ .btn-default:focus, .btn-default.focus {
+ color: #333;
+ background-color: #e6e6e6;
+ border-color: #8c8c8c; }
+ .btn-default:hover {
+ color: #333;
+ background-color: #e6e6e6;
+ border-color: #adadad; }
+ .btn-default:active, .btn-default.active, .open > .btn-default.dropdown-toggle {
+ color: #333;
+ background-color: #e6e6e6;
+ border-color: #adadad; }
+ .btn-default:active:hover, .btn-default:active:focus, .btn-default:active.focus, .btn-default.active:hover, .btn-default.active:focus, .btn-default.active.focus, .open > .btn-default.dropdown-toggle:hover, .open > .btn-default.dropdown-toggle:focus, .open > .btn-default.dropdown-toggle.focus {
+ color: #333;
+ background-color: #d4d4d4;
+ border-color: #8c8c8c; }
+ .btn-default:active, .btn-default.active, .open > .btn-default.dropdown-toggle {
+ background-image: none; }
+ .btn-default.disabled, .btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default.disabled:active, .btn-default.disabled.active, .btn-default[disabled], .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus, .btn-default[disabled]:active, .btn-default[disabled].active, fieldset[disabled] .btn-default, fieldset[disabled] .btn-default:hover, fieldset[disabled] .btn-default:focus, fieldset[disabled] .btn-default.focus, fieldset[disabled] .btn-default:active, fieldset[disabled] .btn-default.active {
+ background-color: #fff;
+ border-color: #ccc; }
+ .btn-default .badge {
+ color: #fff;
+ background-color: #333; }
+
+.btn-primary {
+ color: #fff;
+ background-color: #337ab7;
+ border-color: #2e6da4; }
+ .btn-primary:focus, .btn-primary.focus {
+ color: #fff;
+ background-color: #286090;
+ border-color: #122b40; }
+ .btn-primary:hover {
+ color: #fff;
+ background-color: #286090;
+ border-color: #204d74; }
+ .btn-primary:active, .btn-primary.active, .open > .btn-primary.dropdown-toggle {
+ color: #fff;
+ background-color: #286090;
+ border-color: #204d74; }
+ .btn-primary:active:hover, .btn-primary:active:focus, .btn-primary:active.focus, .btn-primary.active:hover, .btn-primary.active:focus, .btn-primary.active.focus, .open > .btn-primary.dropdown-toggle:hover, .open > .btn-primary.dropdown-toggle:focus, .open > .btn-primary.dropdown-toggle.focus {
+ color: #fff;
+ background-color: #204d74;
+ border-color: #122b40; }
+ .btn-primary:active, .btn-primary.active, .open > .btn-primary.dropdown-toggle {
+ background-image: none; }
+ .btn-primary.disabled, .btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary.disabled:active, .btn-primary.disabled.active, .btn-primary[disabled], .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus, .btn-primary[disabled]:active, .btn-primary[disabled].active, fieldset[disabled] .btn-primary, fieldset[disabled] .btn-primary:hover, fieldset[disabled] .btn-primary:focus, fieldset[disabled] .btn-primary.focus, fieldset[disabled] .btn-primary:active, fieldset[disabled] .btn-primary.active {
+ background-color: #337ab7;
+ border-color: #2e6da4; }
+ .btn-primary .badge {
+ color: #337ab7;
+ background-color: #fff; }
+
+.btn-success {
+ color: #fff;
+ background-color: #5cb85c;
+ border-color: #4cae4c; }
+ .btn-success:focus, .btn-success.focus {
+ color: #fff;
+ background-color: #449d44;
+ border-color: #255625; }
+ .btn-success:hover {
+ color: #fff;
+ background-color: #449d44;
+ border-color: #398439; }
+ .btn-success:active, .btn-success.active, .open > .btn-success.dropdown-toggle {
+ color: #fff;
+ background-color: #449d44;
+ border-color: #398439; }
+ .btn-success:active:hover, .btn-success:active:focus, .btn-success:active.focus, .btn-success.active:hover, .btn-success.active:focus, .btn-success.active.focus, .open > .btn-success.dropdown-toggle:hover, .open > .btn-success.dropdown-toggle:focus, .open > .btn-success.dropdown-toggle.focus {
+ color: #fff;
+ background-color: #398439;
+ border-color: #255625; }
+ .btn-success:active, .btn-success.active, .open > .btn-success.dropdown-toggle {
+ background-image: none; }
+ .btn-success.disabled, .btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success.disabled:active, .btn-success.disabled.active, .btn-success[disabled], .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus, .btn-success[disabled]:active, .btn-success[disabled].active, fieldset[disabled] .btn-success, fieldset[disabled] .btn-success:hover, fieldset[disabled] .btn-success:focus, fieldset[disabled] .btn-success.focus, fieldset[disabled] .btn-success:active, fieldset[disabled] .btn-success.active {
+ background-color: #5cb85c;
+ border-color: #4cae4c; }
+ .btn-success .badge {
+ color: #5cb85c;
+ background-color: #fff; }
+
+.btn-info {
+ color: #fff;
+ background-color: #5bc0de;
+ border-color: #46b8da; }
+ .btn-info:focus, .btn-info.focus {
+ color: #fff;
+ background-color: #31b0d5;
+ border-color: #1b6d85; }
+ .btn-info:hover {
+ color: #fff;
+ background-color: #31b0d5;
+ border-color: #269abc; }
+ .btn-info:active, .btn-info.active, .open > .btn-info.dropdown-toggle {
+ color: #fff;
+ background-color: #31b0d5;
+ border-color: #269abc; }
+ .btn-info:active:hover, .btn-info:active:focus, .btn-info:active.focus, .btn-info.active:hover, .btn-info.active:focus, .btn-info.active.focus, .open > .btn-info.dropdown-toggle:hover, .open > .btn-info.dropdown-toggle:focus, .open > .btn-info.dropdown-toggle.focus {
+ color: #fff;
+ background-color: #269abc;
+ border-color: #1b6d85; }
+ .btn-info:active, .btn-info.active, .open > .btn-info.dropdown-toggle {
+ background-image: none; }
+ .btn-info.disabled, .btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info.disabled:active, .btn-info.disabled.active, .btn-info[disabled], .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus, .btn-info[disabled]:active, .btn-info[disabled].active, fieldset[disabled] .btn-info, fieldset[disabled] .btn-info:hover, fieldset[disabled] .btn-info:focus, fieldset[disabled] .btn-info.focus, fieldset[disabled] .btn-info:active, fieldset[disabled] .btn-info.active {
+ background-color: #5bc0de;
+ border-color: #46b8da; }
+ .btn-info .badge {
+ color: #5bc0de;
+ background-color: #fff; }
+
+.btn-warning {
+ color: #fff;
+ background-color: #f0ad4e;
+ border-color: #eea236; }
+ .btn-warning:focus, .btn-warning.focus {
+ color: #fff;
+ background-color: #ec971f;
+ border-color: #985f0d; }
+ .btn-warning:hover {
+ color: #fff;
+ background-color: #ec971f;
+ border-color: #d58512; }
+ .btn-warning:active, .btn-warning.active, .open > .btn-warning.dropdown-toggle {
+ color: #fff;
+ background-color: #ec971f;
+ border-color: #d58512; }
+ .btn-warning:active:hover, .btn-warning:active:focus, .btn-warning:active.focus, .btn-warning.active:hover, .btn-warning.active:focus, .btn-warning.active.focus, .open > .btn-warning.dropdown-toggle:hover, .open > .btn-warning.dropdown-toggle:focus, .open > .btn-warning.dropdown-toggle.focus {
+ color: #fff;
+ background-color: #d58512;
+ border-color: #985f0d; }
+ .btn-warning:active, .btn-warning.active, .open > .btn-warning.dropdown-toggle {
+ background-image: none; }
+ .btn-warning.disabled, .btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning.disabled:active, .btn-warning.disabled.active, .btn-warning[disabled], .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled].focus, .btn-warning[disabled]:active, .btn-warning[disabled].active, fieldset[disabled] .btn-warning, fieldset[disabled] .btn-warning:hover, fieldset[disabled] .btn-warning:focus, fieldset[disabled] .btn-warning.focus, fieldset[disabled] .btn-warning:active, fieldset[disabled] .btn-warning.active {
+ background-color: #f0ad4e;
+ border-color: #eea236; }
+ .btn-warning .badge {
+ color: #f0ad4e;
+ background-color: #fff; }
+
+.btn-danger {
+ color: #fff;
+ background-color: #d9534f;
+ border-color: #d43f3a; }
+ .btn-danger:focus, .btn-danger.focus {
+ color: #fff;
+ background-color: #c9302c;
+ border-color: #761c19; }
+ .btn-danger:hover {
+ color: #fff;
+ background-color: #c9302c;
+ border-color: #ac2925; }
+ .btn-danger:active, .btn-danger.active, .open > .btn-danger.dropdown-toggle {
+ color: #fff;
+ background-color: #c9302c;
+ border-color: #ac2925; }
+ .btn-danger:active:hover, .btn-danger:active:focus, .btn-danger:active.focus, .btn-danger.active:hover, .btn-danger.active:focus, .btn-danger.active.focus, .open > .btn-danger.dropdown-toggle:hover, .open > .btn-danger.dropdown-toggle:focus, .open > .btn-danger.dropdown-toggle.focus {
+ color: #fff;
+ background-color: #ac2925;
+ border-color: #761c19; }
+ .btn-danger:active, .btn-danger.active, .open > .btn-danger.dropdown-toggle {
+ background-image: none; }
+ .btn-danger.disabled, .btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger.disabled:active, .btn-danger.disabled.active, .btn-danger[disabled], .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled].focus, .btn-danger[disabled]:active, .btn-danger[disabled].active, fieldset[disabled] .btn-danger, fieldset[disabled] .btn-danger:hover, fieldset[disabled] .btn-danger:focus, fieldset[disabled] .btn-danger.focus, fieldset[disabled] .btn-danger:active, fieldset[disabled] .btn-danger.active {
+ background-color: #d9534f;
+ border-color: #d43f3a; }
+ .btn-danger .badge {
+ color: #d9534f;
+ background-color: #fff; }
+
+.btn-link {
+ color: #337ab7;
+ font-weight: normal;
+ border-radius: 0; }
+ .btn-link, .btn-link:active, .btn-link.active, .btn-link[disabled], fieldset[disabled] .btn-link {
+ background-color: transparent;
+ -webkit-box-shadow: none;
+ box-shadow: none; }
+ .btn-link, .btn-link:hover, .btn-link:focus, .btn-link:active {
+ border-color: transparent; }
+ .btn-link:hover, .btn-link:focus {
+ color: #23527c;
+ text-decoration: underline;
+ background-color: transparent; }
+ .btn-link[disabled]:hover, .btn-link[disabled]:focus, fieldset[disabled] .btn-link:hover, fieldset[disabled] .btn-link:focus {
+ color: #777777;
+ text-decoration: none; }
+
+.btn-lg, .btn-group-lg > .btn {
+ padding: 10px 16px;
+ font-size: 18px;
+ line-height: 1.33333;
+ border-radius: 6px; }
-.icojam_payment_4:before {
- content: "\e823"; }
+.btn-sm, .btn-group-sm > .btn {
+ padding: 5px 10px;
+ font-size: 12px;
+ line-height: 1.5;
+ border-radius: 3px; }
-.icojam_piggy_bank:before {
- content: "\e824"; }
+.btn-xs, .btn-group-xs > .btn {
+ padding: 1px 5px;
+ font-size: 12px;
+ line-height: 1.5;
+ border-radius: 3px; }
-.icojam_product_1:before {
- content: "\e825"; }
+.btn-block {
+ display: block;
+ width: 100%; }
-.icojam_product_2:before {
- content: "\e826"; }
+.btn-block + .btn-block {
+ margin-top: 5px; }
-.icojam_purse_1:before {
- content: "\e827"; }
+input[type="submit"].btn-block,
+input[type="reset"].btn-block,
+input[type="button"].btn-block {
+ width: 100%; }
-.icojam_purse_2:before {
- content: "\e828"; }
+.fade {
+ opacity: 0;
+ -webkit-transition: opacity 0.15s linear;
+ -o-transition: opacity 0.15s linear;
+ transition: opacity 0.15s linear; }
+ .fade.in {
+ opacity: 1; }
-.icojam_purse_3:before {
- content: "\e829"; }
+.collapse {
+ display: none; }
+ .collapse.in {
+ display: block; }
-.icojam_purse_4:before {
- content: "\e82a"; }
+tr.collapse.in {
+ display: table-row; }
-.icojam_purse_5:before {
- content: "\e82b"; }
+tbody.collapse.in {
+ display: table-row-group; }
-.icojam_purse_6:before {
- content: "\e82c"; }
+.collapsing {
+ position: relative;
+ height: 0;
+ overflow: hidden;
+ -webkit-transition-property: height, visibility;
+ transition-property: height, visibility;
+ -webkit-transition-duration: 0.35s;
+ transition-duration: 0.35s;
+ -webkit-transition-timing-function: ease;
+ transition-timing-function: ease; }
+
+.caret {
+ display: inline-block;
+ width: 0;
+ height: 0;
+ margin-left: 2px;
+ vertical-align: middle;
+ border-top: 4px dashed;
+ border-top: 4px solid \9;
+ border-right: 4px solid transparent;
+ border-left: 4px solid transparent; }
+
+.dropup,
+.dropdown {
+ position: relative; }
-.icojam_purse_7:before {
- content: "\e82d"; }
+.dropdown-toggle:focus {
+ outline: 0; }
-.icojam_purse_8:before {
- content: "\e82e"; }
+.dropdown-menu {
+ position: absolute;
+ top: 100%;
+ left: 0;
+ z-index: 1000;
+ display: none;
+ float: left;
+ min-width: 160px;
+ padding: 5px 0;
+ margin: 2px 0 0;
+ list-style: none;
+ font-size: 14px;
+ text-align: left;
+ background-color: #fff;
+ border: 1px solid #ccc;
+ border: 1px solid rgba(0, 0, 0, 0.15);
+ border-radius: 4px;
+ -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
+ box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
+ background-clip: padding-box; }
+ .dropdown-menu.pull-right {
+ right: 0;
+ left: auto; }
+ .dropdown-menu .divider {
+ height: 1px;
+ margin: 9px 0;
+ overflow: hidden;
+ background-color: #e5e5e5; }
+ .dropdown-menu > li > a {
+ display: block;
+ padding: 3px 20px;
+ clear: both;
+ font-weight: normal;
+ line-height: 1.42857;
+ color: #333333;
+ white-space: nowrap; }
+
+.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
+ text-decoration: none;
+ color: #262626;
+ background-color: #f5f5f5; }
-.icojam_recession_1:before {
- content: "\e82f"; }
+.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus {
+ color: #fff;
+ text-decoration: none;
+ outline: 0;
+ background-color: #337ab7; }
-.icojam_recession_2:before {
- content: "\e830"; }
+.dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
+ color: #777777; }
+.dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
+ text-decoration: none;
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
+ cursor: not-allowed; }
-.icojam_recession_3:before {
- content: "\e831"; }
+.open > .dropdown-menu {
+ display: block; }
+.open > a {
+ outline: 0; }
-.icojam_recession_4:before {
- content: "\e832"; }
+.dropdown-menu-right {
+ left: auto;
+ right: 0; }
-.icojam_recession_5:before {
- content: "\e833"; }
+.dropdown-menu-left {
+ left: 0;
+ right: auto; }
-.icojam_rise_and_fall_1:before {
- content: "\e834"; }
+.dropdown-header {
+ display: block;
+ padding: 3px 20px;
+ font-size: 12px;
+ line-height: 1.42857;
+ color: #777777;
+ white-space: nowrap; }
-.icojam_rise_and_fall_2:before {
- content: "\e835"; }
+.dropdown-backdrop {
+ position: fixed;
+ left: 0;
+ right: 0;
+ bottom: 0;
+ top: 0;
+ z-index: 990; }
-.icojam_room:before {
- content: "\e836"; }
+.pull-right > .dropdown-menu {
+ right: 0;
+ left: auto; }
+
+.dropup .caret,
+.navbar-fixed-bottom .dropdown .caret {
+ border-top: 0;
+ border-bottom: 4px dashed;
+ border-bottom: 4px solid \9;
+ content: ""; }
+.dropup .dropdown-menu,
+.navbar-fixed-bottom .dropdown .dropdown-menu {
+ top: auto;
+ bottom: 100%;
+ margin-bottom: 2px; }
-.icojam_safe:before {
- content: "\e837"; }
-
-.icojam_scheme:before {
- content: "\e838"; }
-
-.icojam_sign_amero:before {
- content: "\e839"; }
+@media (min-width: 768px) {
+ .navbar-right .dropdown-menu {
+ right: 0;
+ left: auto; }
+ .navbar-right .dropdown-menu-left {
+ left: 0;
+ right: auto; } }
+.btn-group,
+.btn-group-vertical {
+ position: relative;
+ display: inline-block;
+ vertical-align: middle; }
+ .btn-group > .btn,
+ .btn-group-vertical > .btn {
+ position: relative;
+ float: left; }
+ .btn-group > .btn:hover, .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
+ .btn-group-vertical > .btn:hover,
+ .btn-group-vertical > .btn:focus,
+ .btn-group-vertical > .btn:active,
+ .btn-group-vertical > .btn.active {
+ z-index: 2; }
+
+.btn-group .btn + .btn,
+.btn-group .btn + .btn-group,
+.btn-group .btn-group + .btn,
+.btn-group .btn-group + .btn-group {
+ margin-left: -1px; }
+
+.btn-toolbar {
+ margin-left: -5px; }
+ .btn-toolbar:before, .btn-toolbar:after {
+ content: " ";
+ display: table; }
+ .btn-toolbar:after {
+ clear: both; }
+ .btn-toolbar .btn,
+ .btn-toolbar .btn-group,
+ .btn-toolbar .input-group {
+ float: left; }
+ .btn-toolbar > .btn,
+ .btn-toolbar > .btn-group,
+ .btn-toolbar > .input-group {
+ margin-left: 5px; }
+
+.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
+ border-radius: 0; }
-.icojam_sign_dollar:before {
- content: "\e83a"; }
+.btn-group > .btn:first-child {
+ margin-left: 0; }
+ .btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
+ border-bottom-right-radius: 0;
+ border-top-right-radius: 0; }
-.icojam_sign_euro:before {
- content: "\e83b"; }
+.btn-group > .btn:last-child:not(:first-child),
+.btn-group > .dropdown-toggle:not(:first-child) {
+ border-bottom-left-radius: 0;
+ border-top-left-radius: 0; }
-.icojam_sign_pound:before {
- content: "\e83c"; }
+.btn-group > .btn-group {
+ float: left; }
-.icojam_sign_ruble:before {
- content: "\e83d"; }
+.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
+ border-radius: 0; }
-.icojam_sign_yuan:before {
- content: "\e83e"; }
+.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
+.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
+ border-bottom-right-radius: 0;
+ border-top-right-radius: 0; }
-.icojam_skyscraper_12:before {
- content: "\e83f"; }
+.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
+ border-bottom-left-radius: 0;
+ border-top-left-radius: 0; }
-.icojam_skyscraper_22:before {
- content: "\e840"; }
+.btn-group .dropdown-toggle:active,
+.btn-group.open .dropdown-toggle {
+ outline: 0; }
-.icojam_skyscraper_3:before {
- content: "\e841"; }
+.btn-group > .btn + .dropdown-toggle {
+ padding-left: 8px;
+ padding-right: 8px; }
-.icojam_stability_1:before {
- content: "\e842"; }
+.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle {
+ padding-left: 12px;
+ padding-right: 12px; }
-.icojam_stability_2:before {
- content: "\e843"; }
+.btn-group.open .dropdown-toggle {
+ -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
+ .btn-group.open .dropdown-toggle.btn-link {
+ -webkit-box-shadow: none;
+ box-shadow: none; }
-.icojam_strategy:before {
- content: "\e844"; }
+.btn .caret {
+ margin-left: 0; }
-.icojam_turning_point_1:before {
- content: "\e845"; }
+.btn-lg .caret, .btn-group-lg > .btn .caret {
+ border-width: 5px 5px 0;
+ border-bottom-width: 0; }
-.icojam_turning_point_2:before {
- content: "\e846"; }
+.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret {
+ border-width: 0 5px 5px; }
-.icojam_workplace_1:before {
- content: "\e847"; }
+.btn-group-vertical > .btn,
+.btn-group-vertical > .btn-group,
+.btn-group-vertical > .btn-group > .btn {
+ display: block;
+ float: none;
+ width: 100%;
+ max-width: 100%; }
+.btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after {
+ content: " ";
+ display: table; }
+.btn-group-vertical > .btn-group:after {
+ clear: both; }
+.btn-group-vertical > .btn-group > .btn {
+ float: none; }
+.btn-group-vertical > .btn + .btn,
+.btn-group-vertical > .btn + .btn-group,
+.btn-group-vertical > .btn-group + .btn,
+.btn-group-vertical > .btn-group + .btn-group {
+ margin-top: -1px;
+ margin-left: 0; }
+
+.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
+ border-radius: 0; }
+.btn-group-vertical > .btn:first-child:not(:last-child) {
+ border-top-right-radius: 4px;
+ border-bottom-right-radius: 0;
+ border-bottom-left-radius: 0; }
+.btn-group-vertical > .btn:last-child:not(:first-child) {
+ border-bottom-left-radius: 4px;
+ border-top-right-radius: 0;
+ border-top-left-radius: 0; }
-.icojam_workplace_2:before {
- content: "\e848"; }
+.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
+ border-radius: 0; }
-.icojam_apple_1:before {
- content: "\e849"; }
+.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
+.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
+ border-bottom-right-radius: 0;
+ border-bottom-left-radius: 0; }
-.icojam_apple_2:before {
- content: "\e84a"; }
+.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
+ border-top-right-radius: 0;
+ border-top-left-radius: 0; }
-.icojam_asparagus:before {
- content: "\e84b"; }
+.btn-group-justified {
+ display: table;
+ width: 100%;
+ table-layout: fixed;
+ border-collapse: separate; }
+ .btn-group-justified > .btn,
+ .btn-group-justified > .btn-group {
+ float: none;
+ display: table-cell;
+ width: 1%; }
+ .btn-group-justified > .btn-group .btn {
+ width: 100%; }
+ .btn-group-justified > .btn-group .dropdown-menu {
+ left: auto; }
-.icojam_banana:before {
- content: "\e84c"; }
+[data-toggle="buttons"] > .btn input[type="radio"],
+[data-toggle="buttons"] > .btn input[type="checkbox"],
+[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
+[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
+ position: absolute;
+ clip: rect(0, 0, 0, 0);
+ pointer-events: none; }
-.icojam_beans:before {
- content: "\e84d"; }
+.input-group {
+ position: relative;
+ display: table;
+ border-collapse: separate; }
+ .input-group[class*="col-"] {
+ float: none;
+ padding-left: 0;
+ padding-right: 0; }
+ .input-group .form-control {
+ position: relative;
+ z-index: 2;
+ float: left;
+ width: 100%;
+ margin-bottom: 0; }
+
+.input-group-addon,
+.input-group-btn,
+.input-group .form-control {
+ display: table-cell; }
+ .input-group-addon:not(:first-child):not(:last-child),
+ .input-group-btn:not(:first-child):not(:last-child),
+ .input-group .form-control:not(:first-child):not(:last-child) {
+ border-radius: 0; }
-.icojam_cabbage:before {
- content: "\e84e"; }
+.input-group-addon,
+.input-group-btn {
+ width: 1%;
+ white-space: nowrap;
+ vertical-align: middle; }
-.icojam_carrot:before {
- content: "\e84f"; }
+.input-group-addon {
+ padding: 6px 12px;
+ font-size: 14px;
+ font-weight: normal;
+ line-height: 1;
+ color: #555555;
+ text-align: center;
+ background-color: #eeeeee;
+ border: 1px solid #ccc;
+ border-radius: 4px; }
+ .input-group-addon.input-sm,
+ .input-group-sm > .input-group-addon,
+ .input-group-sm > .input-group-btn > .input-group-addon.btn {
+ padding: 5px 10px;
+ font-size: 12px;
+ border-radius: 3px; }
+ .input-group-addon.input-lg,
+ .input-group-lg > .input-group-addon,
+ .input-group-lg > .input-group-btn > .input-group-addon.btn {
+ padding: 10px 16px;
+ font-size: 18px;
+ border-radius: 6px; }
+ .input-group-addon input[type="radio"],
+ .input-group-addon input[type="checkbox"] {
+ margin-top: 0; }
-.icojam_cauliflower:before {
- content: "\e850"; }
+.input-group .form-control:first-child,
+.input-group-addon:first-child,
+.input-group-btn:first-child > .btn,
+.input-group-btn:first-child > .btn-group > .btn,
+.input-group-btn:first-child > .dropdown-toggle,
+.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
+.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
+ border-bottom-right-radius: 0;
+ border-top-right-radius: 0; }
-.icojam_cherry:before {
- content: "\e851"; }
+.input-group-addon:first-child {
+ border-right: 0; }
-.icojam_corn:before {
- content: "\e852"; }
+.input-group .form-control:last-child,
+.input-group-addon:last-child,
+.input-group-btn:last-child > .btn,
+.input-group-btn:last-child > .btn-group > .btn,
+.input-group-btn:last-child > .dropdown-toggle,
+.input-group-btn:first-child > .btn:not(:first-child),
+.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
+ border-bottom-left-radius: 0;
+ border-top-left-radius: 0; }
-.icojam_cucumber:before {
- content: "\e853"; }
+.input-group-addon:last-child {
+ border-left: 0; }
-.icojam_eggplant:before {
- content: "\e854"; }
+.input-group-btn {
+ position: relative;
+ font-size: 0;
+ white-space: nowrap; }
+ .input-group-btn > .btn {
+ position: relative; }
+ .input-group-btn > .btn + .btn {
+ margin-left: -1px; }
+ .input-group-btn > .btn:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active {
+ z-index: 2; }
+ .input-group-btn:first-child > .btn,
+ .input-group-btn:first-child > .btn-group {
+ margin-right: -1px; }
+ .input-group-btn:last-child > .btn,
+ .input-group-btn:last-child > .btn-group {
+ z-index: 2;
+ margin-left: -1px; }
+
+.nav {
+ margin-bottom: 0;
+ padding-left: 0;
+ list-style: none; }
+ .nav:before, .nav:after {
+ content: " ";
+ display: table; }
+ .nav:after {
+ clear: both; }
+ .nav > li {
+ position: relative;
+ display: block; }
+ .nav > li > a {
+ position: relative;
+ display: block;
+ padding: 10px 15px; }
+ .nav > li > a:hover, .nav > li > a:focus {
+ text-decoration: none;
+ background-color: #eeeeee; }
+ .nav > li.disabled > a {
+ color: #777777; }
+ .nav > li.disabled > a:hover, .nav > li.disabled > a:focus {
+ color: #777777;
+ text-decoration: none;
+ background-color: transparent;
+ cursor: not-allowed; }
+ .nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
+ background-color: #eeeeee;
+ border-color: #337ab7; }
+ .nav .nav-divider {
+ height: 1px;
+ margin: 9px 0;
+ overflow: hidden;
+ background-color: #e5e5e5; }
+ .nav > li > a > img {
+ max-width: none; }
+
+.nav-tabs {
+ border-bottom: 1px solid #ddd; }
+ .nav-tabs > li {
+ float: left;
+ margin-bottom: -1px; }
+ .nav-tabs > li > a {
+ margin-right: 2px;
+ line-height: 1.42857;
+ border: 1px solid transparent;
+ border-radius: 4px 4px 0 0; }
+ .nav-tabs > li > a:hover {
+ border-color: #eeeeee #eeeeee #ddd; }
+ .nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
+ color: #555555;
+ background-color: #fff;
+ border: 1px solid #ddd;
+ border-bottom-color: transparent;
+ cursor: default; }
+
+.nav-pills > li {
+ float: left; }
+ .nav-pills > li > a {
+ border-radius: 4px; }
+ .nav-pills > li + li {
+ margin-left: 2px; }
+ .nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
+ color: #fff;
+ background-color: #337ab7; }
+
+.nav-stacked > li {
+ float: none; }
+ .nav-stacked > li + li {
+ margin-top: 2px;
+ margin-left: 0; }
+
+.nav-justified, .nav-tabs.nav-justified {
+ width: 100%; }
+ .nav-justified > li, .nav-tabs.nav-justified > li {
+ float: none; }
+ .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
+ text-align: center;
+ margin-bottom: 5px; }
+ .nav-justified > .dropdown .dropdown-menu {
+ top: auto;
+ left: auto; }
+ @media (min-width: 768px) {
+ .nav-justified > li, .nav-tabs.nav-justified > li {
+ display: table-cell;
+ width: 1%; }
+ .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
+ margin-bottom: 0; } }
+
+.nav-tabs-justified, .nav-tabs.nav-justified {
+ border-bottom: 0; }
+ .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
+ margin-right: 0;
+ border-radius: 4px; }
+ .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
+ .nav-tabs-justified > .active > a:hover,
+ .nav-tabs.nav-justified > .active > a:hover,
+ .nav-tabs-justified > .active > a:focus,
+ .nav-tabs.nav-justified > .active > a:focus {
+ border: 1px solid #ddd; }
+ @media (min-width: 768px) {
+ .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
+ border-bottom: 1px solid #ddd;
+ border-radius: 4px 4px 0 0; }
+ .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
+ .nav-tabs-justified > .active > a:hover,
+ .nav-tabs.nav-justified > .active > a:hover,
+ .nav-tabs-justified > .active > a:focus,
+ .nav-tabs.nav-justified > .active > a:focus {
+ border-bottom-color: #fff; } }
+
+.tab-content > .tab-pane {
+ display: none; }
+.tab-content > .active {
+ display: block; }
-.icojam_garlic:before {
- content: "\e855"; }
+.nav-tabs .dropdown-menu {
+ margin-top: -1px;
+ border-top-right-radius: 0;
+ border-top-left-radius: 0; }
-.icojam_grapes:before {
- content: "\e856"; }
+.navbar {
+ position: relative;
+ min-height: 50px;
+ margin-bottom: 20px;
+ border: 1px solid transparent; }
+ .navbar:before, .navbar:after {
+ content: " ";
+ display: table; }
+ .navbar:after {
+ clear: both; }
+ @media (min-width: 768px) {
+ .navbar {
+ border-radius: 4px; } }
+
+.navbar-header:before, .navbar-header:after {
+ content: " ";
+ display: table; }
+.navbar-header:after {
+ clear: both; }
+@media (min-width: 768px) {
+ .navbar-header {
+ float: left; } }
-.icojam_grass:before {
- content: "\e857"; }
+.navbar-collapse {
+ overflow-x: visible;
+ padding-right: 15px;
+ padding-left: 15px;
+ border-top: 1px solid transparent;
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
+ -webkit-overflow-scrolling: touch; }
+ .navbar-collapse:before, .navbar-collapse:after {
+ content: " ";
+ display: table; }
+ .navbar-collapse:after {
+ clear: both; }
+ .navbar-collapse.in {
+ overflow-y: auto; }
+ @media (min-width: 768px) {
+ .navbar-collapse {
+ width: auto;
+ border-top: 0;
+ box-shadow: none; }
+ .navbar-collapse.collapse {
+ display: block !important;
+ height: auto !important;
+ padding-bottom: 0;
+ overflow: visible !important; }
+ .navbar-collapse.in {
+ overflow-y: visible; }
+ .navbar-fixed-top .navbar-collapse, .navbar-static-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse {
+ padding-left: 0;
+ padding-right: 0; } }
+
+.navbar-fixed-top .navbar-collapse,
+.navbar-fixed-bottom .navbar-collapse {
+ max-height: 340px; }
+ @media (max-device-width: 480px) and (orientation: landscape) {
+ .navbar-fixed-top .navbar-collapse,
+ .navbar-fixed-bottom .navbar-collapse {
+ max-height: 200px; } }
+
+.container > .navbar-header,
+.container > .navbar-collapse,
+.container-fluid > .navbar-header,
+.container-fluid > .navbar-collapse {
+ margin-right: -15px;
+ margin-left: -15px; }
+ @media (min-width: 768px) {
+ .container > .navbar-header,
+ .container > .navbar-collapse,
+ .container-fluid > .navbar-header,
+ .container-fluid > .navbar-collapse {
+ margin-right: 0;
+ margin-left: 0; } }
+
+.navbar-static-top {
+ z-index: 1000;
+ border-width: 0 0 1px; }
+ @media (min-width: 768px) {
+ .navbar-static-top {
+ border-radius: 0; } }
-.icojam_leaves:before {
- content: "\e858"; }
+.navbar-fixed-top,
+.navbar-fixed-bottom {
+ position: fixed;
+ right: 0;
+ left: 0;
+ z-index: 1030; }
+ @media (min-width: 768px) {
+ .navbar-fixed-top,
+ .navbar-fixed-bottom {
+ border-radius: 0; } }
-.icojam_lemon_1:before {
- content: "\e859"; }
+.navbar-fixed-top {
+ top: 0;
+ border-width: 0 0 1px; }
-.icojam_lemon_2:before {
- content: "\e85a"; }
+.navbar-fixed-bottom {
+ bottom: 0;
+ margin-bottom: 0;
+ border-width: 1px 0 0; }
-.icojam_lemon_slice_1:before {
- content: "\e85b"; }
+.navbar-brand {
+ float: left;
+ padding: 15px 15px;
+ font-size: 18px;
+ line-height: 20px;
+ height: 50px; }
+ .navbar-brand:hover, .navbar-brand:focus {
+ text-decoration: none; }
+ .navbar-brand > img {
+ display: block; }
+ @media (min-width: 768px) {
+ .navbar > .container .navbar-brand, .navbar > .container-fluid .navbar-brand {
+ margin-left: -15px; } }
-.icojam_lemon_slice_2:before {
- content: "\e85c"; }
+.navbar-toggle {
+ position: relative;
+ float: right;
+ margin-right: 15px;
+ padding: 9px 10px;
+ margin-top: 8px;
+ margin-bottom: 8px;
+ background-color: transparent;
+ background-image: none;
+ border: 1px solid transparent;
+ border-radius: 4px; }
+ .navbar-toggle:focus {
+ outline: 0; }
+ .navbar-toggle .icon-bar {
+ display: block;
+ width: 22px;
+ height: 2px;
+ border-radius: 1px; }
+ .navbar-toggle .icon-bar + .icon-bar {
+ margin-top: 4px; }
+ @media (min-width: 768px) {
+ .navbar-toggle {
+ display: none; } }
+
+.navbar-nav {
+ margin: 7.5px -15px; }
+ .navbar-nav > li > a {
+ padding-top: 10px;
+ padding-bottom: 10px;
+ line-height: 20px; }
+ @media (max-width: 767px) {
+ .navbar-nav .open .dropdown-menu {
+ position: static;
+ float: none;
+ width: auto;
+ margin-top: 0;
+ background-color: transparent;
+ border: 0;
+ box-shadow: none; }
+ .navbar-nav .open .dropdown-menu > li > a,
+ .navbar-nav .open .dropdown-menu .dropdown-header {
+ padding: 5px 15px 5px 25px; }
+ .navbar-nav .open .dropdown-menu > li > a {
+ line-height: 20px; }
+ .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-nav .open .dropdown-menu > li > a:focus {
+ background-image: none; } }
+ @media (min-width: 768px) {
+ .navbar-nav {
+ float: left;
+ margin: 0; }
+ .navbar-nav > li {
+ float: left; }
+ .navbar-nav > li > a {
+ padding-top: 15px;
+ padding-bottom: 15px; } }
+
+.navbar-form {
+ margin-left: -15px;
+ margin-right: -15px;
+ padding: 10px 15px;
+ border-top: 1px solid transparent;
+ border-bottom: 1px solid transparent;
+ -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
+ margin-top: 8px;
+ margin-bottom: 8px; }
+ @media (min-width: 768px) {
+ .navbar-form .form-group {
+ display: inline-block;
+ margin-bottom: 0;
+ vertical-align: middle; }
+ .navbar-form .form-control {
+ display: inline-block;
+ width: auto;
+ vertical-align: middle; }
+ .navbar-form .form-control-static {
+ display: inline-block; }
+ .navbar-form .input-group {
+ display: inline-table;
+ vertical-align: middle; }
+ .navbar-form .input-group .input-group-addon,
+ .navbar-form .input-group .input-group-btn,
+ .navbar-form .input-group .form-control {
+ width: auto; }
+ .navbar-form .input-group > .form-control {
+ width: 100%; }
+ .navbar-form .control-label {
+ margin-bottom: 0;
+ vertical-align: middle; }
+ .navbar-form .radio,
+ .navbar-form .checkbox {
+ display: inline-block;
+ margin-top: 0;
+ margin-bottom: 0;
+ vertical-align: middle; }
+ .navbar-form .radio label,
+ .navbar-form .checkbox label {
+ padding-left: 0; }
+ .navbar-form .radio input[type="radio"],
+ .navbar-form .checkbox input[type="checkbox"] {
+ position: relative;
+ margin-left: 0; }
+ .navbar-form .has-feedback .form-control-feedback {
+ top: 0; } }
+ @media (max-width: 767px) {
+ .navbar-form .form-group {
+ margin-bottom: 5px; }
+ .navbar-form .form-group:last-child {
+ margin-bottom: 0; } }
+ @media (min-width: 768px) {
+ .navbar-form {
+ width: auto;
+ border: 0;
+ margin-left: 0;
+ margin-right: 0;
+ padding-top: 0;
+ padding-bottom: 0;
+ -webkit-box-shadow: none;
+ box-shadow: none; } }
+
+.navbar-nav > li > .dropdown-menu {
+ margin-top: 0;
+ border-top-right-radius: 0;
+ border-top-left-radius: 0; }
-.icojam_mandarine:before {
- content: "\e85d"; }
+.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
+ margin-bottom: 0;
+ border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ border-bottom-right-radius: 0;
+ border-bottom-left-radius: 0; }
-.icojam_melon_1:before {
- content: "\e85e"; }
+.navbar-btn {
+ margin-top: 8px;
+ margin-bottom: 8px; }
+ .navbar-btn.btn-sm, .btn-group-sm > .navbar-btn.btn {
+ margin-top: 10px;
+ margin-bottom: 10px; }
+ .navbar-btn.btn-xs, .btn-group-xs > .navbar-btn.btn {
+ margin-top: 14px;
+ margin-bottom: 14px; }
-.icojam_melon_2:before {
- content: "\e85f"; }
+.navbar-text {
+ margin-top: 15px;
+ margin-bottom: 15px; }
+ @media (min-width: 768px) {
+ .navbar-text {
+ float: left;
+ margin-left: 15px;
+ margin-right: 15px; } }
-.icojam_mushroom_1:before {
- content: "\e860"; }
+@media (min-width: 768px) {
+ .navbar-left {
+ float: left !important; }
+
+ .navbar-right {
+ float: right !important;
+ margin-right: -15px; }
+ .navbar-right ~ .navbar-right {
+ margin-right: 0; } }
+.navbar-default {
+ background-color: #f8f8f8;
+ border-color: #e7e7e7; }
+ .navbar-default .navbar-brand {
+ color: #777; }
+ .navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {
+ color: #5e5e5e;
+ background-color: transparent; }
+ .navbar-default .navbar-text {
+ color: #777; }
+ .navbar-default .navbar-nav > li > a {
+ color: #777; }
+ .navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
+ color: #333;
+ background-color: transparent; }
+ .navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
+ color: #555;
+ background-color: #e7e7e7; }
+ .navbar-default .navbar-nav > .disabled > a, .navbar-default .navbar-nav > .disabled > a:hover, .navbar-default .navbar-nav > .disabled > a:focus {
+ color: #ccc;
+ background-color: transparent; }
+ .navbar-default .navbar-toggle {
+ border-color: #ddd; }
+ .navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
+ background-color: #ddd; }
+ .navbar-default .navbar-toggle .icon-bar {
+ background-color: #888; }
+ .navbar-default .navbar-collapse,
+ .navbar-default .navbar-form {
+ border-color: #e7e7e7; }
+ .navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
+ background-color: #e7e7e7;
+ color: #555; }
+ @media (max-width: 767px) {
+ .navbar-default .navbar-nav .open .dropdown-menu > li > a {
+ color: #777; }
+ .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
+ color: #333;
+ background-color: transparent; }
+ .navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
+ color: #555;
+ background-color: #e7e7e7; }
+ .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
+ color: #ccc;
+ background-color: transparent; } }
+ .navbar-default .navbar-link {
+ color: #777; }
+ .navbar-default .navbar-link:hover {
+ color: #333; }
+ .navbar-default .btn-link {
+ color: #777; }
+ .navbar-default .btn-link:hover, .navbar-default .btn-link:focus {
+ color: #333; }
+ .navbar-default .btn-link[disabled]:hover, .navbar-default .btn-link[disabled]:focus, fieldset[disabled] .navbar-default .btn-link:hover, fieldset[disabled] .navbar-default .btn-link:focus {
+ color: #ccc; }
+
+.navbar-inverse {
+ background-color: #222;
+ border-color: #090909; }
+ .navbar-inverse .navbar-brand {
+ color: #9d9d9d; }
+ .navbar-inverse .navbar-brand:hover, .navbar-inverse .navbar-brand:focus {
+ color: #fff;
+ background-color: transparent; }
+ .navbar-inverse .navbar-text {
+ color: #9d9d9d; }
+ .navbar-inverse .navbar-nav > li > a {
+ color: #9d9d9d; }
+ .navbar-inverse .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:focus {
+ color: #fff;
+ background-color: transparent; }
+ .navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus {
+ color: #fff;
+ background-color: #090909; }
+ .navbar-inverse .navbar-nav > .disabled > a, .navbar-inverse .navbar-nav > .disabled > a:hover, .navbar-inverse .navbar-nav > .disabled > a:focus {
+ color: #444;
+ background-color: transparent; }
+ .navbar-inverse .navbar-toggle {
+ border-color: #333; }
+ .navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus {
+ background-color: #333; }
+ .navbar-inverse .navbar-toggle .icon-bar {
+ background-color: #fff; }
+ .navbar-inverse .navbar-collapse,
+ .navbar-inverse .navbar-form {
+ border-color: #101010; }
+ .navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {
+ background-color: #090909;
+ color: #fff; }
+ @media (max-width: 767px) {
+ .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
+ border-color: #090909; }
+ .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
+ background-color: #090909; }
+ .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
+ color: #9d9d9d; }
+ .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
+ color: #fff;
+ background-color: transparent; }
+ .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
+ color: #fff;
+ background-color: #090909; }
+ .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
+ color: #444;
+ background-color: transparent; } }
+ .navbar-inverse .navbar-link {
+ color: #9d9d9d; }
+ .navbar-inverse .navbar-link:hover {
+ color: #fff; }
+ .navbar-inverse .btn-link {
+ color: #9d9d9d; }
+ .navbar-inverse .btn-link:hover, .navbar-inverse .btn-link:focus {
+ color: #fff; }
+ .navbar-inverse .btn-link[disabled]:hover, .navbar-inverse .btn-link[disabled]:focus, fieldset[disabled] .navbar-inverse .btn-link:hover, fieldset[disabled] .navbar-inverse .btn-link:focus {
+ color: #444; }
-.icojam_mushroom_2:before {
- content: "\e861"; }
+.breadcrumb {
+ padding: 8px 15px;
+ margin-bottom: 20px;
+ list-style: none;
+ background-color: #f5f5f5;
+ border-radius: 4px; }
+ .breadcrumb > li {
+ display: inline-block; }
+ .breadcrumb > li + li:before {
+ content: "/ ";
+ padding: 0 5px;
+ color: #ccc; }
+ .breadcrumb > .active {
+ color: #777777; }
+
+.pagination {
+ display: inline-block;
+ padding-left: 0;
+ margin: 20px 0;
+ border-radius: 4px; }
+ .pagination > li {
+ display: inline; }
+ .pagination > li > a,
+ .pagination > li > span {
+ position: relative;
+ float: left;
+ padding: 6px 12px;
+ line-height: 1.42857;
+ text-decoration: none;
+ color: #337ab7;
+ background-color: #fff;
+ border: 1px solid #ddd;
+ margin-left: -1px; }
+ .pagination > li:first-child > a,
+ .pagination > li:first-child > span {
+ margin-left: 0;
+ border-bottom-left-radius: 4px;
+ border-top-left-radius: 4px; }
+ .pagination > li:last-child > a,
+ .pagination > li:last-child > span {
+ border-bottom-right-radius: 4px;
+ border-top-right-radius: 4px; }
+ .pagination > li > a:hover, .pagination > li > a:focus,
+ .pagination > li > span:hover,
+ .pagination > li > span:focus {
+ z-index: 3;
+ color: #23527c;
+ background-color: #eeeeee;
+ border-color: #ddd; }
+ .pagination > .active > a, .pagination > .active > a:hover, .pagination > .active > a:focus,
+ .pagination > .active > span,
+ .pagination > .active > span:hover,
+ .pagination > .active > span:focus {
+ z-index: 2;
+ color: #fff;
+ background-color: #337ab7;
+ border-color: #337ab7;
+ cursor: default; }
+ .pagination > .disabled > span,
+ .pagination > .disabled > span:hover,
+ .pagination > .disabled > span:focus,
+ .pagination > .disabled > a,
+ .pagination > .disabled > a:hover,
+ .pagination > .disabled > a:focus {
+ color: #777777;
+ background-color: #fff;
+ border-color: #ddd;
+ cursor: not-allowed; }
+
+.pagination-lg > li > a,
+.pagination-lg > li > span {
+ padding: 10px 16px;
+ font-size: 18px;
+ line-height: 1.33333; }
+.pagination-lg > li:first-child > a,
+.pagination-lg > li:first-child > span {
+ border-bottom-left-radius: 6px;
+ border-top-left-radius: 6px; }
+.pagination-lg > li:last-child > a,
+.pagination-lg > li:last-child > span {
+ border-bottom-right-radius: 6px;
+ border-top-right-radius: 6px; }
+
+.pagination-sm > li > a,
+.pagination-sm > li > span {
+ padding: 5px 10px;
+ font-size: 12px;
+ line-height: 1.5; }
+.pagination-sm > li:first-child > a,
+.pagination-sm > li:first-child > span {
+ border-bottom-left-radius: 3px;
+ border-top-left-radius: 3px; }
+.pagination-sm > li:last-child > a,
+.pagination-sm > li:last-child > span {
+ border-bottom-right-radius: 3px;
+ border-top-right-radius: 3px; }
+
+.pager {
+ padding-left: 0;
+ margin: 20px 0;
+ list-style: none;
+ text-align: center; }
+ .pager:before, .pager:after {
+ content: " ";
+ display: table; }
+ .pager:after {
+ clear: both; }
+ .pager li {
+ display: inline; }
+ .pager li > a,
+ .pager li > span {
+ display: inline-block;
+ padding: 5px 14px;
+ background-color: #fff;
+ border: 1px solid #ddd;
+ border-radius: 15px; }
+ .pager li > a:hover,
+ .pager li > a:focus {
+ text-decoration: none;
+ background-color: #eeeeee; }
+ .pager .next > a,
+ .pager .next > span {
+ float: right; }
+ .pager .previous > a,
+ .pager .previous > span {
+ float: left; }
+ .pager .disabled > a,
+ .pager .disabled > a:hover,
+ .pager .disabled > a:focus,
+ .pager .disabled > span {
+ color: #777777;
+ background-color: #fff;
+ cursor: not-allowed; }
+
+.label {
+ display: inline;
+ padding: .2em .6em .3em;
+ font-size: 75%;
+ font-weight: bold;
+ line-height: 1;
+ color: #fff;
+ text-align: center;
+ white-space: nowrap;
+ vertical-align: baseline;
+ border-radius: .25em; }
+ .label:empty {
+ display: none; }
+ .btn .label {
+ position: relative;
+ top: -1px; }
-.icojam_nut:before {
- content: "\e862"; }
+a.label:hover, a.label:focus {
+ color: #fff;
+ text-decoration: none;
+ cursor: pointer; }
-.icojam_olive_1:before {
- content: "\e863"; }
+.label-default {
+ background-color: #777777; }
+ .label-default[href]:hover, .label-default[href]:focus {
+ background-color: #5e5e5e; }
+
+.label-primary {
+ background-color: #337ab7; }
+ .label-primary[href]:hover, .label-primary[href]:focus {
+ background-color: #286090; }
+
+.label-success {
+ background-color: #5cb85c; }
+ .label-success[href]:hover, .label-success[href]:focus {
+ background-color: #449d44; }
+
+.label-info {
+ background-color: #5bc0de; }
+ .label-info[href]:hover, .label-info[href]:focus {
+ background-color: #31b0d5; }
+
+.label-warning {
+ background-color: #f0ad4e; }
+ .label-warning[href]:hover, .label-warning[href]:focus {
+ background-color: #ec971f; }
+
+.label-danger {
+ background-color: #d9534f; }
+ .label-danger[href]:hover, .label-danger[href]:focus {
+ background-color: #c9302c; }
+
+.badge {
+ display: inline-block;
+ min-width: 10px;
+ padding: 3px 7px;
+ font-size: 12px;
+ font-weight: bold;
+ color: #fff;
+ line-height: 1;
+ vertical-align: middle;
+ white-space: nowrap;
+ text-align: center;
+ background-color: #777777;
+ border-radius: 10px; }
+ .badge:empty {
+ display: none; }
+ .btn .badge {
+ position: relative;
+ top: -1px; }
+ .btn-xs .badge, .btn-group-xs > .btn .badge, .btn-group-xs > .btn .badge {
+ top: 0;
+ padding: 1px 5px; }
+ .list-group-item.active > .badge, .nav-pills > .active > a > .badge {
+ color: #337ab7;
+ background-color: #fff; }
+ .list-group-item > .badge {
+ float: right; }
+ .list-group-item > .badge + .badge {
+ margin-right: 5px; }
+ .nav-pills > li > a > .badge {
+ margin-left: 3px; }
+
+a.badge:hover, a.badge:focus {
+ color: #fff;
+ text-decoration: none;
+ cursor: pointer; }
-.icojam_olive_2:before {
- content: "\e864"; }
+.jumbotron {
+ padding-top: 30px;
+ padding-bottom: 30px;
+ margin-bottom: 30px;
+ color: inherit;
+ background-color: #eeeeee; }
+ .jumbotron h1,
+ .jumbotron .h1 {
+ color: inherit; }
+ .jumbotron p {
+ margin-bottom: 15px;
+ font-size: 21px;
+ font-weight: 200; }
+ .jumbotron > hr {
+ border-top-color: #d5d5d5; }
+ .container .jumbotron, .container-fluid .jumbotron {
+ border-radius: 6px; }
+ .jumbotron .container {
+ max-width: 100%; }
+ @media screen and (min-width: 768px) {
+ .jumbotron {
+ padding-top: 48px;
+ padding-bottom: 48px; }
+ .container .jumbotron, .container-fluid .jumbotron {
+ padding-left: 60px;
+ padding-right: 60px; }
+ .jumbotron h1,
+ .jumbotron .h1 {
+ font-size: 63px; } }
+
+.thumbnail {
+ display: block;
+ padding: 4px;
+ margin-bottom: 20px;
+ line-height: 1.42857;
+ background-color: #fff;
+ border: 1px solid #ddd;
+ border-radius: 4px;
+ -webkit-transition: border 0.2s ease-in-out;
+ -o-transition: border 0.2s ease-in-out;
+ transition: border 0.2s ease-in-out; }
+ .thumbnail > img,
+ .thumbnail a > img {
+ display: block;
+ max-width: 100%;
+ height: auto;
+ margin-left: auto;
+ margin-right: auto; }
+ .thumbnail .caption {
+ padding: 9px;
+ color: #333333; }
+
+a.thumbnail:hover,
+a.thumbnail:focus,
+a.thumbnail.active {
+ border-color: #337ab7; }
+
+.alert {
+ padding: 15px;
+ margin-bottom: 20px;
+ border: 1px solid transparent;
+ border-radius: 4px; }
+ .alert h4 {
+ margin-top: 0;
+ color: inherit; }
+ .alert .alert-link {
+ font-weight: bold; }
+ .alert > p,
+ .alert > ul {
+ margin-bottom: 0; }
+ .alert > p + p {
+ margin-top: 5px; }
+
+.alert-dismissable,
+.alert-dismissible {
+ padding-right: 35px; }
+ .alert-dismissable .close,
+ .alert-dismissible .close {
+ position: relative;
+ top: -2px;
+ right: -21px;
+ color: inherit; }
+
+.alert-success {
+ background-color: #dff0d8;
+ border-color: #d6e9c6;
+ color: #3c763d; }
+ .alert-success hr {
+ border-top-color: #c9e2b3; }
+ .alert-success .alert-link {
+ color: #2b542c; }
+
+.alert-info {
+ background-color: #d9edf7;
+ border-color: #bce8f1;
+ color: #31708f; }
+ .alert-info hr {
+ border-top-color: #a6e1ec; }
+ .alert-info .alert-link {
+ color: #245269; }
+
+.alert-warning {
+ background-color: #fcf8e3;
+ border-color: #faebcc;
+ color: #8a6d3b; }
+ .alert-warning hr {
+ border-top-color: #f7e1b5; }
+ .alert-warning .alert-link {
+ color: #66512c; }
+
+.alert-danger {
+ background-color: #f2dede;
+ border-color: #ebccd1;
+ color: #a94442; }
+ .alert-danger hr {
+ border-top-color: #e4b9c0; }
+ .alert-danger .alert-link {
+ color: #843534; }
+
+@-webkit-keyframes progress-bar-stripes {
+ from {
+ background-position: 40px 0; }
+ to {
+ background-position: 0 0; } }
+@keyframes progress-bar-stripes {
+ from {
+ background-position: 40px 0; }
+ to {
+ background-position: 0 0; } }
+.progress {
+ overflow: hidden;
+ height: 20px;
+ margin-bottom: 20px;
+ background-color: #f5f5f5;
+ border-radius: 4px;
+ -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
+ box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); }
-.icojam_onion:before {
- content: "\e865"; }
-
-.icojam_orange:before {
- content: "\e866"; }
+.progress-bar {
+ float: left;
+ width: 0%;
+ height: 100%;
+ font-size: 12px;
+ line-height: 20px;
+ color: #fff;
+ text-align: center;
+ background-color: #337ab7;
+ -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
+ box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
+ -webkit-transition: width 0.6s ease;
+ -o-transition: width 0.6s ease;
+ transition: width 0.6s ease; }
+
+.progress-striped .progress-bar,
+.progress-bar-striped {
+ background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+ background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+ background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+ background-size: 40px 40px; }
+
+.progress.active .progress-bar,
+.progress-bar.active {
+ -webkit-animation: progress-bar-stripes 2s linear infinite;
+ -o-animation: progress-bar-stripes 2s linear infinite;
+ animation: progress-bar-stripes 2s linear infinite; }
+
+.progress-bar-success {
+ background-color: #5cb85c; }
+ .progress-striped .progress-bar-success {
+ background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+ background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+ background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }
+
+.progress-bar-info {
+ background-color: #5bc0de; }
+ .progress-striped .progress-bar-info {
+ background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+ background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+ background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }
+
+.progress-bar-warning {
+ background-color: #f0ad4e; }
+ .progress-striped .progress-bar-warning {
+ background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+ background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+ background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }
+
+.progress-bar-danger {
+ background-color: #d9534f; }
+ .progress-striped .progress-bar-danger {
+ background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+ background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+ background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }
+
+.media {
+ margin-top: 15px; }
+ .media:first-child {
+ margin-top: 0; }
-.icojam_pattinson:before {
- content: "\e867"; }
+.media,
+.media-body {
+ zoom: 1;
+ overflow: hidden; }
-.icojam_peach:before {
- content: "\e868"; }
+.media-body {
+ width: 10000px; }
-.icojam_pear:before {
- content: "\e869"; }
+.media-object {
+ display: block; }
+ .media-object.img-thumbnail {
+ max-width: none; }
-.icojam_peas_1:before {
- content: "\e86a"; }
+.media-right,
+.media > .pull-right {
+ padding-left: 10px; }
-.icojam_peas_2:before {
- content: "\e86b"; }
+.media-left,
+.media > .pull-left {
+ padding-right: 10px; }
-.icojam_pepper:before {
- content: "\e86c"; }
+.media-left,
+.media-right,
+.media-body {
+ display: table-cell;
+ vertical-align: top; }
-.icojam_pepper_chili:before {
- content: "\e86d"; }
+.media-middle {
+ vertical-align: middle; }
-.icojam_persimmon:before {
- content: "\e86e"; }
+.media-bottom {
+ vertical-align: bottom; }
-.icojam_pineapple:before {
- content: "\e86f"; }
+.media-heading {
+ margin-top: 0;
+ margin-bottom: 5px; }
-.icojam_plum:before {
- content: "\e870"; }
+.media-list {
+ padding-left: 0;
+ list-style: none; }
-.icojam_pomegranate_1:before {
- content: "\e871"; }
+.list-group {
+ margin-bottom: 20px;
+ padding-left: 0; }
-.icojam_pomegranate_2:before {
- content: "\e872"; }
+.list-group-item {
+ position: relative;
+ display: block;
+ padding: 10px 15px;
+ margin-bottom: -1px;
+ background-color: #fff;
+ border: 1px solid #ddd; }
+ .list-group-item:first-child {
+ border-top-right-radius: 4px;
+ border-top-left-radius: 4px; }
+ .list-group-item:last-child {
+ margin-bottom: 0;
+ border-bottom-right-radius: 4px;
+ border-bottom-left-radius: 4px; }
+
+a.list-group-item,
+button.list-group-item {
+ color: #555; }
+ a.list-group-item .list-group-item-heading,
+ button.list-group-item .list-group-item-heading {
+ color: #333; }
+ a.list-group-item:hover, a.list-group-item:focus,
+ button.list-group-item:hover,
+ button.list-group-item:focus {
+ text-decoration: none;
+ color: #555;
+ background-color: #f5f5f5; }
+
+button.list-group-item {
+ width: 100%;
+ text-align: left; }
+
+.list-group-item.disabled, .list-group-item.disabled:hover, .list-group-item.disabled:focus {
+ background-color: #eeeeee;
+ color: #777777;
+ cursor: not-allowed; }
+ .list-group-item.disabled .list-group-item-heading, .list-group-item.disabled:hover .list-group-item-heading, .list-group-item.disabled:focus .list-group-item-heading {
+ color: inherit; }
+ .list-group-item.disabled .list-group-item-text, .list-group-item.disabled:hover .list-group-item-text, .list-group-item.disabled:focus .list-group-item-text {
+ color: #777777; }
+.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
+ z-index: 2;
+ color: #fff;
+ background-color: #337ab7;
+ border-color: #337ab7; }
+ .list-group-item.active .list-group-item-heading,
+ .list-group-item.active .list-group-item-heading > small,
+ .list-group-item.active .list-group-item-heading > .small, .list-group-item.active:hover .list-group-item-heading,
+ .list-group-item.active:hover .list-group-item-heading > small,
+ .list-group-item.active:hover .list-group-item-heading > .small, .list-group-item.active:focus .list-group-item-heading,
+ .list-group-item.active:focus .list-group-item-heading > small,
+ .list-group-item.active:focus .list-group-item-heading > .small {
+ color: inherit; }
+ .list-group-item.active .list-group-item-text, .list-group-item.active:hover .list-group-item-text, .list-group-item.active:focus .list-group-item-text {
+ color: #c7ddef; }
+
+.list-group-item-success {
+ color: #3c763d;
+ background-color: #dff0d8; }
+
+a.list-group-item-success,
+button.list-group-item-success {
+ color: #3c763d; }
+ a.list-group-item-success .list-group-item-heading,
+ button.list-group-item-success .list-group-item-heading {
+ color: inherit; }
+ a.list-group-item-success:hover, a.list-group-item-success:focus,
+ button.list-group-item-success:hover,
+ button.list-group-item-success:focus {
+ color: #3c763d;
+ background-color: #d0e9c6; }
+ a.list-group-item-success.active, a.list-group-item-success.active:hover, a.list-group-item-success.active:focus,
+ button.list-group-item-success.active,
+ button.list-group-item-success.active:hover,
+ button.list-group-item-success.active:focus {
+ color: #fff;
+ background-color: #3c763d;
+ border-color: #3c763d; }
+
+.list-group-item-info {
+ color: #31708f;
+ background-color: #d9edf7; }
+
+a.list-group-item-info,
+button.list-group-item-info {
+ color: #31708f; }
+ a.list-group-item-info .list-group-item-heading,
+ button.list-group-item-info .list-group-item-heading {
+ color: inherit; }
+ a.list-group-item-info:hover, a.list-group-item-info:focus,
+ button.list-group-item-info:hover,
+ button.list-group-item-info:focus {
+ color: #31708f;
+ background-color: #c4e3f3; }
+ a.list-group-item-info.active, a.list-group-item-info.active:hover, a.list-group-item-info.active:focus,
+ button.list-group-item-info.active,
+ button.list-group-item-info.active:hover,
+ button.list-group-item-info.active:focus {
+ color: #fff;
+ background-color: #31708f;
+ border-color: #31708f; }
+
+.list-group-item-warning {
+ color: #8a6d3b;
+ background-color: #fcf8e3; }
+
+a.list-group-item-warning,
+button.list-group-item-warning {
+ color: #8a6d3b; }
+ a.list-group-item-warning .list-group-item-heading,
+ button.list-group-item-warning .list-group-item-heading {
+ color: inherit; }
+ a.list-group-item-warning:hover, a.list-group-item-warning:focus,
+ button.list-group-item-warning:hover,
+ button.list-group-item-warning:focus {
+ color: #8a6d3b;
+ background-color: #faf2cc; }
+ a.list-group-item-warning.active, a.list-group-item-warning.active:hover, a.list-group-item-warning.active:focus,
+ button.list-group-item-warning.active,
+ button.list-group-item-warning.active:hover,
+ button.list-group-item-warning.active:focus {
+ color: #fff;
+ background-color: #8a6d3b;
+ border-color: #8a6d3b; }
+
+.list-group-item-danger {
+ color: #a94442;
+ background-color: #f2dede; }
+
+a.list-group-item-danger,
+button.list-group-item-danger {
+ color: #a94442; }
+ a.list-group-item-danger .list-group-item-heading,
+ button.list-group-item-danger .list-group-item-heading {
+ color: inherit; }
+ a.list-group-item-danger:hover, a.list-group-item-danger:focus,
+ button.list-group-item-danger:hover,
+ button.list-group-item-danger:focus {
+ color: #a94442;
+ background-color: #ebcccc; }
+ a.list-group-item-danger.active, a.list-group-item-danger.active:hover, a.list-group-item-danger.active:focus,
+ button.list-group-item-danger.active,
+ button.list-group-item-danger.active:hover,
+ button.list-group-item-danger.active:focus {
+ color: #fff;
+ background-color: #a94442;
+ border-color: #a94442; }
+
+.list-group-item-heading {
+ margin-top: 0;
+ margin-bottom: 5px; }
-.icojam_pomelo:before {
- content: "\e873"; }
+.list-group-item-text {
+ margin-bottom: 0;
+ line-height: 1.3; }
-.icojam_potato:before {
- content: "\e874"; }
+.panel {
+ margin-bottom: 20px;
+ background-color: #fff;
+ border: 1px solid transparent;
+ border-radius: 4px;
+ -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); }
+
+.panel-body {
+ padding: 15px; }
+ .panel-body:before, .panel-body:after {
+ content: " ";
+ display: table; }
+ .panel-body:after {
+ clear: both; }
+
+.panel-heading {
+ padding: 10px 15px;
+ border-bottom: 1px solid transparent;
+ border-top-right-radius: 3px;
+ border-top-left-radius: 3px; }
+ .panel-heading > .dropdown .dropdown-toggle {
+ color: inherit; }
+
+.panel-title {
+ margin-top: 0;
+ margin-bottom: 0;
+ font-size: 16px;
+ color: inherit; }
+ .panel-title > a,
+ .panel-title > small,
+ .panel-title > .small,
+ .panel-title > small > a,
+ .panel-title > .small > a {
+ color: inherit; }
+
+.panel-footer {
+ padding: 10px 15px;
+ background-color: #f5f5f5;
+ border-top: 1px solid #ddd;
+ border-bottom-right-radius: 3px;
+ border-bottom-left-radius: 3px; }
+
+.panel > .list-group,
+.panel > .panel-collapse > .list-group {
+ margin-bottom: 0; }
+ .panel > .list-group .list-group-item,
+ .panel > .panel-collapse > .list-group .list-group-item {
+ border-width: 1px 0;
+ border-radius: 0; }
+ .panel > .list-group:first-child .list-group-item:first-child,
+ .panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
+ border-top: 0;
+ border-top-right-radius: 3px;
+ border-top-left-radius: 3px; }
+ .panel > .list-group:last-child .list-group-item:last-child,
+ .panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
+ border-bottom: 0;
+ border-bottom-right-radius: 3px;
+ border-bottom-left-radius: 3px; }
+.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
+ border-top-right-radius: 0;
+ border-top-left-radius: 0; }
-.icojam_pumpkin_1:before {
- content: "\e875"; }
+.panel-heading + .list-group .list-group-item:first-child {
+ border-top-width: 0; }
-.icojam_pumpkin_2:before {
- content: "\e876"; }
+.list-group + .panel-footer {
+ border-top-width: 0; }
-.icojam_radish:before {
- content: "\e877"; }
+.panel > .table,
+.panel > .table-responsive > .table,
+.panel > .panel-collapse > .table {
+ margin-bottom: 0; }
+ .panel > .table caption,
+ .panel > .table-responsive > .table caption,
+ .panel > .panel-collapse > .table caption {
+ padding-left: 15px;
+ padding-right: 15px; }
+.panel > .table:first-child,
+.panel > .table-responsive:first-child > .table:first-child {
+ border-top-right-radius: 3px;
+ border-top-left-radius: 3px; }
+ .panel > .table:first-child > thead:first-child > tr:first-child,
+ .panel > .table:first-child > tbody:first-child > tr:first-child,
+ .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
+ .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
+ border-top-left-radius: 3px;
+ border-top-right-radius: 3px; }
+ .panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
+ .panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
+ .panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
+ .panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
+ .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
+ .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
+ .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
+ .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
+ border-top-left-radius: 3px; }
+ .panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
+ .panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
+ .panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
+ .panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
+ .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
+ .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
+ .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
+ .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
+ border-top-right-radius: 3px; }
+.panel > .table:last-child,
+.panel > .table-responsive:last-child > .table:last-child {
+ border-bottom-right-radius: 3px;
+ border-bottom-left-radius: 3px; }
+ .panel > .table:last-child > tbody:last-child > tr:last-child,
+ .panel > .table:last-child > tfoot:last-child > tr:last-child,
+ .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
+ .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
+ border-bottom-left-radius: 3px;
+ border-bottom-right-radius: 3px; }
+ .panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
+ .panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
+ .panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
+ .panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
+ .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
+ .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
+ .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
+ .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
+ border-bottom-left-radius: 3px; }
+ .panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
+ .panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
+ .panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
+ .panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
+ .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
+ .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
+ .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
+ .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
+ border-bottom-right-radius: 3px; }
+.panel > .panel-body + .table,
+.panel > .panel-body + .table-responsive,
+.panel > .table + .panel-body,
+.panel > .table-responsive + .panel-body {
+ border-top: 1px solid #ddd; }
+.panel > .table > tbody:first-child > tr:first-child th,
+.panel > .table > tbody:first-child > tr:first-child td {
+ border-top: 0; }
+.panel > .table-bordered,
+.panel > .table-responsive > .table-bordered {
+ border: 0; }
+ .panel > .table-bordered > thead > tr > th:first-child,
+ .panel > .table-bordered > thead > tr > td:first-child,
+ .panel > .table-bordered > tbody > tr > th:first-child,
+ .panel > .table-bordered > tbody > tr > td:first-child,
+ .panel > .table-bordered > tfoot > tr > th:first-child,
+ .panel > .table-bordered > tfoot > tr > td:first-child,
+ .panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
+ .panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
+ .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
+ .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
+ .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
+ .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
+ border-left: 0; }
+ .panel > .table-bordered > thead > tr > th:last-child,
+ .panel > .table-bordered > thead > tr > td:last-child,
+ .panel > .table-bordered > tbody > tr > th:last-child,
+ .panel > .table-bordered > tbody > tr > td:last-child,
+ .panel > .table-bordered > tfoot > tr > th:last-child,
+ .panel > .table-bordered > tfoot > tr > td:last-child,
+ .panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
+ .panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
+ .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
+ .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
+ .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
+ .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
+ border-right: 0; }
+ .panel > .table-bordered > thead > tr:first-child > td,
+ .panel > .table-bordered > thead > tr:first-child > th,
+ .panel > .table-bordered > tbody > tr:first-child > td,
+ .panel > .table-bordered > tbody > tr:first-child > th,
+ .panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
+ .panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
+ .panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
+ .panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
+ border-bottom: 0; }
+ .panel > .table-bordered > tbody > tr:last-child > td,
+ .panel > .table-bordered > tbody > tr:last-child > th,
+ .panel > .table-bordered > tfoot > tr:last-child > td,
+ .panel > .table-bordered > tfoot > tr:last-child > th,
+ .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
+ .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
+ .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
+ .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
+ border-bottom: 0; }
+.panel > .table-responsive {
+ border: 0;
+ margin-bottom: 0; }
-.icojam_raspberry:before {
- content: "\e878"; }
+.panel-group {
+ margin-bottom: 20px; }
+ .panel-group .panel {
+ margin-bottom: 0;
+ border-radius: 4px; }
+ .panel-group .panel + .panel {
+ margin-top: 5px; }
+ .panel-group .panel-heading {
+ border-bottom: 0; }
+ .panel-group .panel-heading + .panel-collapse > .panel-body,
+ .panel-group .panel-heading + .panel-collapse > .list-group {
+ border-top: 1px solid #ddd; }
+ .panel-group .panel-footer {
+ border-top: 0; }
+ .panel-group .panel-footer + .panel-collapse .panel-body {
+ border-bottom: 1px solid #ddd; }
+
+.panel-default {
+ border-color: #ddd; }
+ .panel-default > .panel-heading {
+ color: #333333;
+ background-color: #f5f5f5;
+ border-color: #ddd; }
+ .panel-default > .panel-heading + .panel-collapse > .panel-body {
+ border-top-color: #ddd; }
+ .panel-default > .panel-heading .badge {
+ color: #f5f5f5;
+ background-color: #333333; }
+ .panel-default > .panel-footer + .panel-collapse > .panel-body {
+ border-bottom-color: #ddd; }
+
+.panel-primary {
+ border-color: #337ab7; }
+ .panel-primary > .panel-heading {
+ color: #fff;
+ background-color: #337ab7;
+ border-color: #337ab7; }
+ .panel-primary > .panel-heading + .panel-collapse > .panel-body {
+ border-top-color: #337ab7; }
+ .panel-primary > .panel-heading .badge {
+ color: #337ab7;
+ background-color: #fff; }
+ .panel-primary > .panel-footer + .panel-collapse > .panel-body {
+ border-bottom-color: #337ab7; }
+
+.panel-success {
+ border-color: #d6e9c6; }
+ .panel-success > .panel-heading {
+ color: #3c763d;
+ background-color: #dff0d8;
+ border-color: #d6e9c6; }
+ .panel-success > .panel-heading + .panel-collapse > .panel-body {
+ border-top-color: #d6e9c6; }
+ .panel-success > .panel-heading .badge {
+ color: #dff0d8;
+ background-color: #3c763d; }
+ .panel-success > .panel-footer + .panel-collapse > .panel-body {
+ border-bottom-color: #d6e9c6; }
+
+.panel-info {
+ border-color: #bce8f1; }
+ .panel-info > .panel-heading {
+ color: #31708f;
+ background-color: #d9edf7;
+ border-color: #bce8f1; }
+ .panel-info > .panel-heading + .panel-collapse > .panel-body {
+ border-top-color: #bce8f1; }
+ .panel-info > .panel-heading .badge {
+ color: #d9edf7;
+ background-color: #31708f; }
+ .panel-info > .panel-footer + .panel-collapse > .panel-body {
+ border-bottom-color: #bce8f1; }
+
+.panel-warning {
+ border-color: #faebcc; }
+ .panel-warning > .panel-heading {
+ color: #8a6d3b;
+ background-color: #fcf8e3;
+ border-color: #faebcc; }
+ .panel-warning > .panel-heading + .panel-collapse > .panel-body {
+ border-top-color: #faebcc; }
+ .panel-warning > .panel-heading .badge {
+ color: #fcf8e3;
+ background-color: #8a6d3b; }
+ .panel-warning > .panel-footer + .panel-collapse > .panel-body {
+ border-bottom-color: #faebcc; }
+
+.panel-danger {
+ border-color: #ebccd1; }
+ .panel-danger > .panel-heading {
+ color: #a94442;
+ background-color: #f2dede;
+ border-color: #ebccd1; }
+ .panel-danger > .panel-heading + .panel-collapse > .panel-body {
+ border-top-color: #ebccd1; }
+ .panel-danger > .panel-heading .badge {
+ color: #f2dede;
+ background-color: #a94442; }
+ .panel-danger > .panel-footer + .panel-collapse > .panel-body {
+ border-bottom-color: #ebccd1; }
+
+.embed-responsive {
+ position: relative;
+ display: block;
+ height: 0;
+ padding: 0;
+ overflow: hidden; }
+ .embed-responsive .embed-responsive-item,
+ .embed-responsive iframe,
+ .embed-responsive embed,
+ .embed-responsive object,
+ .embed-responsive video {
+ position: absolute;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ height: 100%;
+ width: 100%;
+ border: 0; }
-.icojam_salad:before {
- content: "\e879"; }
+.embed-responsive-16by9 {
+ padding-bottom: 56.25%; }
-.icojam_strawberry:before {
- content: "\e87a"; }
+.embed-responsive-4by3 {
+ padding-bottom: 75%; }
-.icojam_tomato_1:before {
- content: "\e87b"; }
+.well {
+ min-height: 20px;
+ padding: 19px;
+ margin-bottom: 20px;
+ background-color: #f5f5f5;
+ border: 1px solid #e3e3e3;
+ border-radius: 4px;
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); }
+ .well blockquote {
+ border-color: #ddd;
+ border-color: rgba(0, 0, 0, 0.15); }
+
+.well-lg {
+ padding: 24px;
+ border-radius: 6px; }
+
+.well-sm {
+ padding: 9px;
+ border-radius: 3px; }
+
+.close {
+ float: right;
+ font-size: 21px;
+ font-weight: bold;
+ line-height: 1;
+ color: #000;
+ text-shadow: 0 1px 0 #fff;
+ opacity: 0.2;
+ filter: alpha(opacity=20); }
+ .close:hover, .close:focus {
+ color: #000;
+ text-decoration: none;
+ cursor: pointer;
+ opacity: 0.5;
+ filter: alpha(opacity=50); }
-.icojam_tomato_2:before {
- content: "\e87c"; }
+button.close {
+ padding: 0;
+ cursor: pointer;
+ background: transparent;
+ border: 0;
+ -webkit-appearance: none; }
-.icojam_watermelon_1:before {
- content: "\e87d"; }
+.modal-open {
+ overflow: hidden; }
-.icojam_watermelon_2:before {
- content: "\e87e"; }
+.modal {
+ display: none;
+ overflow: hidden;
+ position: fixed;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ z-index: 1050;
+ -webkit-overflow-scrolling: touch;
+ outline: 0; }
+ .modal.fade .modal-dialog {
+ -webkit-transform: translate(0, -25%);
+ -ms-transform: translate(0, -25%);
+ -o-transform: translate(0, -25%);
+ transform: translate(0, -25%);
+ -webkit-transition: -webkit-transform 0.3s ease-out;
+ -moz-transition: -moz-transform 0.3s ease-out;
+ -o-transition: -o-transform 0.3s ease-out;
+ transition: transform 0.3s ease-out; }
+ .modal.in .modal-dialog {
+ -webkit-transform: translate(0, 0);
+ -ms-transform: translate(0, 0);
+ -o-transform: translate(0, 0);
+ transform: translate(0, 0); }
+
+.modal-open .modal {
+ overflow-x: hidden;
+ overflow-y: auto; }
-.icojam_wheat:before {
- content: "\e87f"; }
+.modal-dialog {
+ position: relative;
+ width: auto;
+ margin: 10px; }
-.icojam_barbecue:before {
- content: "\e880"; }
+.modal-content {
+ position: relative;
+ background-color: #fff;
+ border: 1px solid #999;
+ border: 1px solid rgba(0, 0, 0, 0.2);
+ border-radius: 6px;
+ -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
+ box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
+ background-clip: padding-box;
+ outline: 0; }
-.icojam_bone:before {
- content: "\e881"; }
+.modal-backdrop {
+ position: fixed;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ z-index: 1040;
+ background-color: #000; }
+ .modal-backdrop.fade {
+ opacity: 0;
+ filter: alpha(opacity=0); }
+ .modal-backdrop.in {
+ opacity: 0.5;
+ filter: alpha(opacity=50); }
+
+.modal-header {
+ padding: 15px;
+ border-bottom: 1px solid #e5e5e5;
+ min-height: 16.42857px; }
-.icojam_bread_1:before {
- content: "\e882"; }
+.modal-header .close {
+ margin-top: -2px; }
-.icojam_bread_2:before {
- content: "\e883"; }
+.modal-title {
+ margin: 0;
+ line-height: 1.42857; }
-.icojam_bread_baguette:before {
- content: "\e884"; }
+.modal-body {
+ position: relative;
+ padding: 15px; }
-.icojam_burger_1:before {
- content: "\e885"; }
+.modal-footer {
+ padding: 15px;
+ text-align: right;
+ border-top: 1px solid #e5e5e5; }
+ .modal-footer:before, .modal-footer:after {
+ content: " ";
+ display: table; }
+ .modal-footer:after {
+ clear: both; }
+ .modal-footer .btn + .btn {
+ margin-left: 5px;
+ margin-bottom: 0; }
+ .modal-footer .btn-group .btn + .btn {
+ margin-left: -1px; }
+ .modal-footer .btn-block + .btn-block {
+ margin-left: 0; }
+
+.modal-scrollbar-measure {
+ position: absolute;
+ top: -9999px;
+ width: 50px;
+ height: 50px;
+ overflow: scroll; }
-.icojam_burger_2:before {
- content: "\e886"; }
+@media (min-width: 768px) {
+ .modal-dialog {
+ width: 600px;
+ margin: 30px auto; }
-.icojam_cake_1:before {
- content: "\e887"; }
+ .modal-content {
+ -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
+ box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); }
-.icojam_cake_2:before {
- content: "\e888"; }
+ .modal-sm {
+ width: 300px; } }
+@media (min-width: 992px) {
+ .modal-lg {
+ width: 900px; } }
+.tooltip {
+ position: absolute;
+ z-index: 1070;
+ display: block;
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+ font-style: normal;
+ font-weight: normal;
+ letter-spacing: normal;
+ line-break: auto;
+ line-height: 1.42857;
+ text-align: left;
+ text-align: start;
+ text-decoration: none;
+ text-shadow: none;
+ text-transform: none;
+ white-space: normal;
+ word-break: normal;
+ word-spacing: normal;
+ word-wrap: normal;
+ font-size: 12px;
+ opacity: 0;
+ filter: alpha(opacity=0); }
+ .tooltip.in {
+ opacity: 0.9;
+ filter: alpha(opacity=90); }
+ .tooltip.top {
+ margin-top: -3px;
+ padding: 5px 0; }
+ .tooltip.right {
+ margin-left: 3px;
+ padding: 0 5px; }
+ .tooltip.bottom {
+ margin-top: 3px;
+ padding: 5px 0; }
+ .tooltip.left {
+ margin-left: -3px;
+ padding: 0 5px; }
+
+.tooltip-inner {
+ max-width: 200px;
+ padding: 3px 8px;
+ color: #fff;
+ text-align: center;
+ background-color: #000;
+ border-radius: 4px; }
-.icojam_cake_wedding:before {
- content: "\e889"; }
+.tooltip-arrow {
+ position: absolute;
+ width: 0;
+ height: 0;
+ border-color: transparent;
+ border-style: solid; }
-.icojam_candy_1:before {
- content: "\e88a"; }
+.tooltip.top .tooltip-arrow {
+ bottom: 0;
+ left: 50%;
+ margin-left: -5px;
+ border-width: 5px 5px 0;
+ border-top-color: #000; }
+.tooltip.top-left .tooltip-arrow {
+ bottom: 0;
+ right: 5px;
+ margin-bottom: -5px;
+ border-width: 5px 5px 0;
+ border-top-color: #000; }
+.tooltip.top-right .tooltip-arrow {
+ bottom: 0;
+ left: 5px;
+ margin-bottom: -5px;
+ border-width: 5px 5px 0;
+ border-top-color: #000; }
+.tooltip.right .tooltip-arrow {
+ top: 50%;
+ left: 0;
+ margin-top: -5px;
+ border-width: 5px 5px 5px 0;
+ border-right-color: #000; }
+.tooltip.left .tooltip-arrow {
+ top: 50%;
+ right: 0;
+ margin-top: -5px;
+ border-width: 5px 0 5px 5px;
+ border-left-color: #000; }
+.tooltip.bottom .tooltip-arrow {
+ top: 0;
+ left: 50%;
+ margin-left: -5px;
+ border-width: 0 5px 5px;
+ border-bottom-color: #000; }
+.tooltip.bottom-left .tooltip-arrow {
+ top: 0;
+ right: 5px;
+ margin-top: -5px;
+ border-width: 0 5px 5px;
+ border-bottom-color: #000; }
+.tooltip.bottom-right .tooltip-arrow {
+ top: 0;
+ left: 5px;
+ margin-top: -5px;
+ border-width: 0 5px 5px;
+ border-bottom-color: #000; }
-.icojam_candy_2:before {
- content: "\e88b"; }
+.popover {
+ position: absolute;
+ top: 0;
+ left: 0;
+ z-index: 1060;
+ display: none;
+ max-width: 276px;
+ padding: 1px;
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+ font-style: normal;
+ font-weight: normal;
+ letter-spacing: normal;
+ line-break: auto;
+ line-height: 1.42857;
+ text-align: left;
+ text-align: start;
+ text-decoration: none;
+ text-shadow: none;
+ text-transform: none;
+ white-space: normal;
+ word-break: normal;
+ word-spacing: normal;
+ word-wrap: normal;
+ font-size: 14px;
+ background-color: #fff;
+ background-clip: padding-box;
+ border: 1px solid #ccc;
+ border: 1px solid rgba(0, 0, 0, 0.2);
+ border-radius: 6px;
+ -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); }
+ .popover.top {
+ margin-top: -10px; }
+ .popover.right {
+ margin-left: 10px; }
+ .popover.bottom {
+ margin-top: 10px; }
+ .popover.left {
+ margin-left: -10px; }
-.icojam_candy_3:before {
- content: "\e88c"; }
+.popover-title {
+ margin: 0;
+ padding: 8px 14px;
+ font-size: 14px;
+ background-color: #f7f7f7;
+ border-bottom: 1px solid #ebebeb;
+ border-radius: 5px 5px 0 0; }
-.icojam_candy_lolipop:before {
- content: "\e88d"; }
+.popover-content {
+ padding: 9px 14px; }
-.icojam_cheese_1:before {
- content: "\e88e"; }
+.popover > .arrow, .popover > .arrow:after {
+ position: absolute;
+ display: block;
+ width: 0;
+ height: 0;
+ border-color: transparent;
+ border-style: solid; }
-.icojam_cheese_2:before {
- content: "\e88f"; }
+.popover > .arrow {
+ border-width: 11px; }
-.icojam_chicken:before {
- content: "\e890"; }
+.popover > .arrow:after {
+ border-width: 10px;
+ content: ""; }
-.icojam_chicken_leg:before {
- content: "\e891"; }
+.popover.top > .arrow {
+ left: 50%;
+ margin-left: -11px;
+ border-bottom-width: 0;
+ border-top-color: #999999;
+ border-top-color: rgba(0, 0, 0, 0.25);
+ bottom: -11px; }
+ .popover.top > .arrow:after {
+ content: " ";
+ bottom: 1px;
+ margin-left: -10px;
+ border-bottom-width: 0;
+ border-top-color: #fff; }
+.popover.right > .arrow {
+ top: 50%;
+ left: -11px;
+ margin-top: -11px;
+ border-left-width: 0;
+ border-right-color: #999999;
+ border-right-color: rgba(0, 0, 0, 0.25); }
+ .popover.right > .arrow:after {
+ content: " ";
+ left: 1px;
+ bottom: -10px;
+ border-left-width: 0;
+ border-right-color: #fff; }
+.popover.bottom > .arrow {
+ left: 50%;
+ margin-left: -11px;
+ border-top-width: 0;
+ border-bottom-color: #999999;
+ border-bottom-color: rgba(0, 0, 0, 0.25);
+ top: -11px; }
+ .popover.bottom > .arrow:after {
+ content: " ";
+ top: 1px;
+ margin-left: -10px;
+ border-top-width: 0;
+ border-bottom-color: #fff; }
+.popover.left > .arrow {
+ top: 50%;
+ right: -11px;
+ margin-top: -11px;
+ border-right-width: 0;
+ border-left-color: #999999;
+ border-left-color: rgba(0, 0, 0, 0.25); }
+ .popover.left > .arrow:after {
+ content: " ";
+ right: 1px;
+ border-right-width: 0;
+ border-left-color: #fff;
+ bottom: -10px; }
+
+.carousel {
+ position: relative; }
-.icojam_chips:before {
- content: "\e892"; }
+.carousel-inner {
+ position: relative;
+ overflow: hidden;
+ width: 100%; }
+ .carousel-inner > .item {
+ display: none;
+ position: relative;
+ -webkit-transition: 0.6s ease-in-out left;
+ -o-transition: 0.6s ease-in-out left;
+ transition: 0.6s ease-in-out left; }
+ .carousel-inner > .item > img,
+ .carousel-inner > .item > a > img {
+ display: block;
+ max-width: 100%;
+ height: auto;
+ line-height: 1; }
+ @media all and (transform-3d), (-webkit-transform-3d) {
+ .carousel-inner > .item {
+ -webkit-transition: -webkit-transform 0.6s ease-in-out;
+ -moz-transition: -moz-transform 0.6s ease-in-out;
+ -o-transition: -o-transform 0.6s ease-in-out;
+ transition: transform 0.6s ease-in-out;
+ -webkit-backface-visibility: hidden;
+ -moz-backface-visibility: hidden;
+ backface-visibility: hidden;
+ -webkit-perspective: 1000px;
+ -moz-perspective: 1000px;
+ perspective: 1000px; }
+ .carousel-inner > .item.next, .carousel-inner > .item.active.right {
+ -webkit-transform: translate3d(100%, 0, 0);
+ transform: translate3d(100%, 0, 0);
+ left: 0; }
+ .carousel-inner > .item.prev, .carousel-inner > .item.active.left {
+ -webkit-transform: translate3d(-100%, 0, 0);
+ transform: translate3d(-100%, 0, 0);
+ left: 0; }
+ .carousel-inner > .item.next.left, .carousel-inner > .item.prev.right, .carousel-inner > .item.active {
+ -webkit-transform: translate3d(0, 0, 0);
+ transform: translate3d(0, 0, 0);
+ left: 0; } }
+ .carousel-inner > .active,
+ .carousel-inner > .next,
+ .carousel-inner > .prev {
+ display: block; }
+ .carousel-inner > .active {
+ left: 0; }
+ .carousel-inner > .next,
+ .carousel-inner > .prev {
+ position: absolute;
+ top: 0;
+ width: 100%; }
+ .carousel-inner > .next {
+ left: 100%; }
+ .carousel-inner > .prev {
+ left: -100%; }
+ .carousel-inner > .next.left,
+ .carousel-inner > .prev.right {
+ left: 0; }
+ .carousel-inner > .active.left {
+ left: -100%; }
+ .carousel-inner > .active.right {
+ left: 100%; }
+
+.carousel-control {
+ position: absolute;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ width: 15%;
+ opacity: 0.5;
+ filter: alpha(opacity=50);
+ font-size: 20px;
+ color: #fff;
+ text-align: center;
+ text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); }
+ .carousel-control.left {
+ background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
+ background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
+ background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
+ background-repeat: repeat-x;
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); }
+ .carousel-control.right {
+ left: auto;
+ right: 0;
+ background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
+ background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
+ background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
+ background-repeat: repeat-x;
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); }
+ .carousel-control:hover, .carousel-control:focus {
+ outline: 0;
+ color: #fff;
+ text-decoration: none;
+ opacity: 0.9;
+ filter: alpha(opacity=90); }
+ .carousel-control .icon-prev,
+ .carousel-control .icon-next,
+ .carousel-control .glyphicon-chevron-left,
+ .carousel-control .glyphicon-chevron-right {
+ position: absolute;
+ top: 50%;
+ margin-top: -10px;
+ z-index: 5;
+ display: inline-block; }
+ .carousel-control .icon-prev,
+ .carousel-control .glyphicon-chevron-left {
+ left: 50%;
+ margin-left: -10px; }
+ .carousel-control .icon-next,
+ .carousel-control .glyphicon-chevron-right {
+ right: 50%;
+ margin-right: -10px; }
+ .carousel-control .icon-prev,
+ .carousel-control .icon-next {
+ width: 20px;
+ height: 20px;
+ line-height: 1;
+ font-family: serif; }
+ .carousel-control .icon-prev:before {
+ content: '\2039'; }
+ .carousel-control .icon-next:before {
+ content: '\203a'; }
-.icojam_chocolate_1:before {
- content: "\e893"; }
+.carousel-indicators {
+ position: absolute;
+ bottom: 10px;
+ left: 50%;
+ z-index: 15;
+ width: 60%;
+ margin-left: -30%;
+ padding-left: 0;
+ list-style: none;
+ text-align: center; }
+ .carousel-indicators li {
+ display: inline-block;
+ width: 10px;
+ height: 10px;
+ margin: 1px;
+ text-indent: -999px;
+ border: 1px solid #fff;
+ border-radius: 10px;
+ cursor: pointer;
+ background-color: #000 \9;
+ background-color: transparent; }
+ .carousel-indicators .active {
+ margin: 0;
+ width: 12px;
+ height: 12px;
+ background-color: #fff; }
-.icojam_chocolate_2:before {
- content: "\e894"; }
+.carousel-caption {
+ position: absolute;
+ left: 15%;
+ right: 15%;
+ bottom: 20px;
+ z-index: 10;
+ padding-top: 20px;
+ padding-bottom: 20px;
+ color: #fff;
+ text-align: center;
+ text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); }
+ .carousel-caption .btn {
+ text-shadow: none; }
+
+@media screen and (min-width: 768px) {
+ .carousel-control .glyphicon-chevron-left,
+ .carousel-control .glyphicon-chevron-right,
+ .carousel-control .icon-prev,
+ .carousel-control .icon-next {
+ width: 30px;
+ height: 30px;
+ margin-top: -15px;
+ font-size: 30px; }
+ .carousel-control .glyphicon-chevron-left,
+ .carousel-control .icon-prev {
+ margin-left: -15px; }
+ .carousel-control .glyphicon-chevron-right,
+ .carousel-control .icon-next {
+ margin-right: -15px; }
+
+ .carousel-caption {
+ left: 20%;
+ right: 20%;
+ padding-bottom: 30px; }
+
+ .carousel-indicators {
+ bottom: 20px; } }
+.clearfix:before, .clearfix:after {
+ content: " ";
+ display: table; }
+.clearfix:after {
+ clear: both; }
-.icojam_cookies:before {
- content: "\e895"; }
+.center-block {
+ display: block;
+ margin-left: auto;
+ margin-right: auto; }
-.icojam_croissant:before {
- content: "\e896"; }
+.pull-right {
+ float: right !important; }
-.icojam_donut_1:before {
- content: "\e897"; }
+.pull-left {
+ float: left !important; }
-.icojam_donut_2:before {
- content: "\e898"; }
+.hide {
+ display: none !important; }
-.icojam_egg:before {
- content: "\e899"; }
+.show {
+ display: block !important; }
-.icojam_fish:before {
- content: "\e89a"; }
+.invisible {
+ visibility: hidden; }
-.icojam_fishbone:before {
- content: "\e89b"; }
+.text-hide {
+ font: 0/0 a;
+ color: transparent;
+ text-shadow: none;
+ background-color: transparent;
+ border: 0; }
-.icojam_french_fries:before {
- content: "\e89c"; }
+.hidden {
+ display: none !important; }
-.icojam_grain:before {
- content: "\e89d"; }
+.affix {
+ position: fixed; }
-.icojam_ham:before {
- content: "\e89e"; }
+@-ms-viewport {
+ width: device-width; }
+.visible-xs {
+ display: none !important; }
-.icojam_honey:before {
- content: "\e89f"; }
+.visible-sm {
+ display: none !important; }
-.icojam_hot_dog:before {
- content: "\e8a0"; }
+.visible-md {
+ display: none !important; }
-.icojam_ice_cream_1:before {
- content: "\e8a1"; }
+.visible-lg {
+ display: none !important; }
-.icojam_ice_cream_2:before {
- content: "\e8a2"; }
+.visible-xs-block,
+.visible-xs-inline,
+.visible-xs-inline-block,
+.visible-sm-block,
+.visible-sm-inline,
+.visible-sm-inline-block,
+.visible-md-block,
+.visible-md-inline,
+.visible-md-inline-block,
+.visible-lg-block,
+.visible-lg-inline,
+.visible-lg-inline-block {
+ display: none !important; }
-.icojam_omelette:before {
- content: "\e8a3"; }
+@media (max-width: 767px) {
+ .visible-xs {
+ display: block !important; }
-.icojam_pasta_1:before {
- content: "\e8a4"; }
+ table.visible-xs {
+ display: table !important; }
-.icojam_pasta_2:before {
- content: "\e8a5"; }
+ tr.visible-xs {
+ display: table-row !important; }
-.icojam_pasta_3:before {
- content: "\e8a6"; }
+ th.visible-xs,
+ td.visible-xs {
+ display: table-cell !important; } }
+@media (max-width: 767px) {
+ .visible-xs-block {
+ display: block !important; } }
-.icojam_pizza:before {
- content: "\e8a7"; }
+@media (max-width: 767px) {
+ .visible-xs-inline {
+ display: inline !important; } }
-.icojam_potato_slices:before {
- content: "\e8a8"; }
+@media (max-width: 767px) {
+ .visible-xs-inline-block {
+ display: inline-block !important; } }
-.icojam_pretzel:before {
- content: "\e8a9"; }
+@media (min-width: 768px) and (max-width: 991px) {
+ .visible-sm {
+ display: block !important; }
-.icojam_rice:before {
- content: "\e8aa"; }
+ table.visible-sm {
+ display: table !important; }
-.icojam_roll:before {
- content: "\e8ab"; }
+ tr.visible-sm {
+ display: table-row !important; }
-.icojam_rolls_1:before {
- content: "\e8ac"; }
+ th.visible-sm,
+ td.visible-sm {
+ display: table-cell !important; } }
+@media (min-width: 768px) and (max-width: 991px) {
+ .visible-sm-block {
+ display: block !important; } }
-.icojam_rolls_2:before {
- content: "\e8ad"; }
+@media (min-width: 768px) and (max-width: 991px) {
+ .visible-sm-inline {
+ display: inline !important; } }
-.icojam_rolls_3:before {
- content: "\e8ae"; }
+@media (min-width: 768px) and (max-width: 991px) {
+ .visible-sm-inline-block {
+ display: inline-block !important; } }
-.icojam_sausage_1:before {
- content: "\e8af"; }
+@media (min-width: 992px) and (max-width: 1199px) {
+ .visible-md {
+ display: block !important; }
-.icojam_sausage_2:before {
- content: "\e8b0"; }
+ table.visible-md {
+ display: table !important; }
-.icojam_sausage_3:before {
- content: "\e8b1"; }
+ tr.visible-md {
+ display: table-row !important; }
-.icojam_sausage_4:before {
- content: "\e8b2"; }
+ th.visible-md,
+ td.visible-md {
+ display: table-cell !important; } }
+@media (min-width: 992px) and (max-width: 1199px) {
+ .visible-md-block {
+ display: block !important; } }
-.icojam_sausage_5:before {
- content: "\e8b3"; }
+@media (min-width: 992px) and (max-width: 1199px) {
+ .visible-md-inline {
+ display: inline !important; } }
-.icojam_steak:before {
- content: "\e8b4"; }
+@media (min-width: 992px) and (max-width: 1199px) {
+ .visible-md-inline-block {
+ display: inline-block !important; } }
-.icojam_steak_t-bone:before {
- content: "\e8b5"; }
+@media (min-width: 1200px) {
+ .visible-lg {
+ display: block !important; }
-.icojam_sushi_1:before {
- content: "\e8b6"; }
+ table.visible-lg {
+ display: table !important; }
-.icojam_sushi_2:before {
- content: "\e8b7"; }
+ tr.visible-lg {
+ display: table-row !important; }
-.icojam_truffle:before {
- content: "\e8b8"; }
+ th.visible-lg,
+ td.visible-lg {
+ display: table-cell !important; } }
+@media (min-width: 1200px) {
+ .visible-lg-block {
+ display: block !important; } }
-.icojam_wafer_1:before {
- content: "\e8b9"; }
+@media (min-width: 1200px) {
+ .visible-lg-inline {
+ display: inline !important; } }
-.icojam_wafer_2:before {
- content: "\e8ba"; }
+@media (min-width: 1200px) {
+ .visible-lg-inline-block {
+ display: inline-block !important; } }
-.icojam_wafer_3:before {
- content: "\e8bb"; }
+@media (max-width: 767px) {
+ .hidden-xs {
+ display: none !important; } }
+@media (min-width: 768px) and (max-width: 991px) {
+ .hidden-sm {
+ display: none !important; } }
+@media (min-width: 992px) and (max-width: 1199px) {
+ .hidden-md {
+ display: none !important; } }
+@media (min-width: 1200px) {
+ .hidden-lg {
+ display: none !important; } }
+.visible-print {
+ display: none !important; }
+
+@media print {
+ .visible-print {
+ display: block !important; }
+
+ table.visible-print {
+ display: table !important; }
+
+ tr.visible-print {
+ display: table-row !important; }
+
+ th.visible-print,
+ td.visible-print {
+ display: table-cell !important; } }
+.visible-print-block {
+ display: none !important; }
+ @media print {
+ .visible-print-block {
+ display: block !important; } }
+
+.visible-print-inline {
+ display: none !important; }
+ @media print {
+ .visible-print-inline {
+ display: inline !important; } }
+
+.visible-print-inline-block {
+ display: none !important; }
+ @media print {
+ .visible-print-inline-block {
+ display: inline-block !important; } }
+
+@media print {
+ .hidden-print {
+ display: none !important; } }
+/* Fenix Utils*/
+/* Fenix Style No Variables */
+/* Boostrap Queries */
+/* Utils */
+/* Base */
+/* Fenix Fonts Import */
+/* Eldorado */
+/* ELDORADO FONT STANDARD CONFIGURATION*/
+/* Eldorado */
+@font-face {
+ font-family: 'eldorado_stroke';
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/eldorado/eldorado_stroke.eot");
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/eldorado/eldorado_stroke.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/eldorado/eldorado_stroke.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/eldorado/eldorado_stroke.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/eldorado/eldorado_stroke.svg#RobotoRegular") format("svg");
+ font-weight: normal;
+ font-style: normal; }
+[class^="icojam_"], [class*=" icojam_"] {
+ font-family: 'eldorado_stroke';
+ speak: none;
+ font-style: normal;
+ font-weight: normal;
+ font-variant: normal;
+ text-transform: none;
+ line-height: 1;
+ /* Better Font Rendering =========== */
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale; }
-.icojam_waffle_horn:before {
- content: "\e8bc"; }
+/* Active Icons */
+.icojam_button_new_1:before {
+ content: "\eb2a"; }
-.icojam_beer:before {
- content: "\e8bd"; }
+.icojam_button_foward_1:before {
+ content: "\eb26"; }
-.icojam_bottle_1:before {
- content: "\e8be"; }
+.icojam_document_text:before {
+ content: "\eb26"; }
-.icojam_bottle_2:before {
- content: "\e8bf"; }
+.icojam_grid_thumbnails:before {
+ content: "\e9a8"; }
-.icojam_bottle_3:before {
- content: "\e8c0"; }
+.icojam_elevation_4:before {
+ content: "\e80d"; }
-.icojam_bottle_plastic:before {
- content: "\e8c1"; }
+.icojam_swap_horizontal_1:before {
+ content: "\eb45"; }
-.icojam_champagne:before {
- content: "\e8c2"; }
+.icojam_wedding_jewel:before {
+ content: "\e96c"; }
-.icojam_citrus:before {
- content: "\e8c3"; }
+.icojam_inbox_receive:before {
+ content: "\ea49"; }
-.icojam_coffee_bean:before {
- content: "\e8c4"; }
+.icojam_button_delete_1:before {
+ content: "\eb24"; }
-.icojam_cola_1:before {
- content: "\e8c5"; }
+.icojam_copybook_2:before {
+ content: "\e7b5"; }
-.icojam_cola_2:before {
- content: "\e8c6"; }
+.icojam_user:before {
+ content: "\ebbb"; }
-.icojam_condensed_milk:before {
- content: "\e8c7"; }
+.icojam_exit_1:before {
+ content: "\eaeb"; }
-.icojam_cucumbers:before {
- content: "\e8c8"; }
+/* Icons */
+.icojam_fla:before {
+ content: "\e777"; }
-.icojam_cup_1:before {
- content: "\e8c9"; }
+.icojam_flac:before {
+ content: "\e778"; }
-.icojam_cup_2:before {
- content: "\e8ca"; }
+.icojam_gif:before {
+ content: "\e779"; }
-.icojam_cup_3:before {
- content: "\e8cb"; }
+.icojam_html:before {
+ content: "\e77a"; }
-.icojam_cup_hot:before {
- content: "\e8cc"; }
+.icojam_icl:before {
+ content: "\e77b"; }
-.icojam_fork_1:before {
- content: "\e8cd"; }
+.icojam_icns:before {
+ content: "\e77c"; }
-.icojam_fork_2:before {
- content: "\e8ce"; }
+.icojam_ico:before {
+ content: "\e77d"; }
-.icojam_glass2:before {
- content: "\e8cf"; }
+.icojam_ini:before {
+ content: "\e77e"; }
-.icojam_glass_water:before {
- content: "\e8d0"; }
+.icojam_iso:before {
+ content: "\e77f"; }
-.icojam_goblet_1:before {
- content: "\e8d1"; }
+.icojam_jpg:before {
+ content: "\e780"; }
-.icojam_goblet_2:before {
- content: "\e8d2"; }
+.icojam_log:before {
+ content: "\e781"; }
-.icojam_goblet_3:before {
- content: "\e8d3"; }
+.icojam_midi:before {
+ content: "\e782"; }
-.icojam_goblet_4:before {
- content: "\e8d4"; }
+.icojam_mkv:before {
+ content: "\e783"; }
-.icojam_goblet_5:before {
- content: "\e8d5"; }
+.icojam_mov:before {
+ content: "\e784"; }
-.icojam_goblet_6:before {
- content: "\e8d6"; }
+.icojam_mp3:before {
+ content: "\e785"; }
-.icojam_goblet_7:before {
- content: "\e8d7"; }
+.icojam_mp4:before {
+ content: "\e786"; }
-.icojam_goblet_wineglass:before {
- content: "\e8d8"; }
+.icojam_mpg:before {
+ content: "\e787"; }
-.icojam_jam_1:before {
- content: "\e8d9"; }
+.icojam_ogg:before {
+ content: "\e788"; }
-.icojam_jam_2:before {
- content: "\e8da"; }
+.icojam_ogm:before {
+ content: "\e789"; }
-.icojam_milk:before {
- content: "\e8db"; }
+.icojam_otf:before {
+ content: "\e78a"; }
-.icojam_mushrooms:before {
- content: "\e8dc"; }
+.icojam_pdf:before {
+ content: "\e78b"; }
-.icojam_package:before {
- content: "\e8dd"; }
+.icojam_png:before {
+ content: "\e78c"; }
-.icojam_pan_1:before {
- content: "\e8de"; }
+.icojam_ppt:before {
+ content: "\e78d"; }
-.icojam_pan_2:before {
- content: "\e8df"; }
+.icojam_pptx:before {
+ content: "\e78e"; }
-.icojam_pan_3:before {
- content: "\e8e0"; }
+.icojam_psd:before {
+ content: "\e78f"; }
-.icojam_pan_4:before {
- content: "\e8e1"; }
+.icojam_ra:before {
+ content: "\e790"; }
-.icojam_pepper2:before {
- content: "\e8e2"; }
+.icojam_rar:before {
+ content: "\e791"; }
-.icojam_plate_1:before {
- content: "\e8e3"; }
+.icojam_raw:before {
+ content: "\e792"; }
-.icojam_plate_2:before {
- content: "\e8e4"; }
+.icojam_rm:before {
+ content: "\e793"; }
-.icojam_preserves_1:before {
- content: "\e8e5"; }
+.icojam_rtf:before {
+ content: "\e794"; }
-.icojam_preserves_2:before {
- content: "\e8e6"; }
+.icojam_svg:before {
+ content: "\e795"; }
-.icojam_preserves_3:before {
- content: "\e8e7"; }
+.icojam_svgz:before {
+ content: "\e796"; }
-.icojam_salt:before {
- content: "\e8e8"; }
+.icojam_swf:before {
+ content: "\e797"; }
-.icojam_take-out_coffee:before {
- content: "\e8e9"; }
+.icojam_sys:before {
+ content: "\e798"; }
-.icojam_tea:before {
- content: "\e8ea"; }
+.icojam_tga:before {
+ content: "\e799"; }
-.icojam_tea_bag_1:before {
- content: "\e8eb"; }
+.icojam_tif:before {
+ content: "\e79a"; }
-.icojam_tea_bag_2:before {
- content: "\e8ec"; }
+.icojam_ttf:before {
+ content: "\e79b"; }
-.icojam_teapot:before {
- content: "\e8ed"; }
+.icojam_txt:before {
+ content: "\e79c"; }
-.icojam_wine_1:before {
- content: "\e8ee"; }
+.icojam_wav:before {
+ content: "\e79d"; }
-.icojam_wine_2:before {
- content: "\e8ef"; }
+.icojam_wma:before {
+ content: "\e79e"; }
-.icojam_armchair:before {
- content: "\e8f0"; }
+.icojam_wmv:before {
+ content: "\e79f"; }
-.icojam_baby_cot:before {
- content: "\e8f1"; }
+.icojam_xls:before {
+ content: "\e7a0"; }
-.icojam_bath:before {
- content: "\e8f2"; }
+.icojam_xlsx:before {
+ content: "\e7a1"; }
-.icojam_bed2:before {
- content: "\e8f3"; }
+.icojam_xml:before {
+ content: "\e7a2"; }
-.icojam_bench:before {
- content: "\e8f4"; }
+.icojam_zip:before {
+ content: "\e7a3"; }
-.icojam_bench_1:before {
- content: "\e8f5"; }
+.icojam_presentation:before {
+ content: "\e9b1"; }
-.icojam_bidet:before {
- content: "\e8f6"; }
+.icojam_document:before {
+ content: "\ea3c"; }
-.icojam_blanket:before {
- content: "\e8f7"; }
+.icojam_link_1:before {
+ content: "\ea50"; }
-.icojam_bookshelf:before {
- content: "\e8f8"; }
+.icojam_base_search_in:before {
+ content: "\e65e"; }
-.icojam_box_locker:before {
- content: "\e8f9"; }
+.icojam_add:before {
+ content: "\e656"; }
-.icojam_box_open:before {
- content: "\e8fa"; }
+.icojam_delete:before {
+ content: "\e66a"; }
-.icojam_cabinet:before {
- content: "\e8fb"; }
+.icojam_cancel_1:before {
+ content: "\eb55"; }
-.icojam_carpet:before {
- content: "\e8fc"; }
+.icojam_home2:before {
+ content: "\e7c1"; }
-.icojam_chair_1:before {
- content: "\e8fd"; }
+.icojam_geography_globe:before {
+ content: "\e7be"; }
-.icojam_chair_2:before {
- content: "\e8fe"; }
+.icojam_notebook:before {
+ content: "\e7eb"; }
-.icojam_chair_3:before {
- content: "\e8ff"; }
+.icojam_air_conditioning_external:before {
+ content: "\e600"; }
-.icojam_chair_director_folding:before {
- content: "\e900"; }
+.icojam_air_conditioning_internal:before {
+ content: "\e601"; }
-.icojam_chair_office:before {
- content: "\e901"; }
+.icojam_blender:before {
+ content: "\e602"; }
-.icojam_chair_rocking:before {
- content: "\e902"; }
+.icojam_blender_2:before {
+ content: "\e603"; }
-.icojam_chair_round:before {
- content: "\e903"; }
+.icojam_blender_3:before {
+ content: "\e604"; }
-.icojam_chandelier:before {
- content: "\e904"; }
+.icojam_bread_maker_multicookings:before {
+ content: "\e605"; }
-.icojam_changing_table:before {
- content: "\e905"; }
+.icojam_citrus_squeezer:before {
+ content: "\e606"; }
-.icojam_chest_of_drawers:before {
- content: "\e906"; }
+.icojam_coffee_machine:before {
+ content: "\e607"; }
-.icojam_chest_of_drawers_2:before {
- content: "\e907"; }
+.icojam_coiled_heater:before {
+ content: "\e608"; }
-.icojam_cot:before {
- content: "\e908"; }
+.icojam_dishwasher:before {
+ content: "\e609"; }
-.icojam_curtains:before {
- content: "\e909"; }
+.icojam_drill_perforator:before {
+ content: "\e60a"; }
-.icojam_cushion:before {
- content: "\e90a"; }
+.icojam_electric_kettle_teapot:before {
+ content: "\e60b"; }
-.icojam_door:before {
- content: "\e90b"; }
+.icojam_electric_shaver:before {
+ content: "\e60c"; }
-.icojam_doublebed:before {
- content: "\e90c"; }
+.icojam_fan:before {
+ content: "\e60d"; }
-.icojam_floor_lamp_1:before {
- content: "\e90d"; }
+.icojam_fan_1:before {
+ content: "\e60e"; }
-.icojam_floor_lamp_2:before {
- content: "\e90e"; }
+.icojam_fan_dyson:before {
+ content: "\e60f"; }
-.icojam_floor_lamp_3:before {
- content: "\e90f"; }
+.icojam_food_processor_1:before {
+ content: "\e610"; }
-.icojam_hanger:before {
- content: "\e910"; }
+.icojam_food_processor_2:before {
+ content: "\e611"; }
-.icojam_hanger_1:before {
- content: "\e911"; }
+.icojam_freezer:before {
+ content: "\e612"; }
-.icojam_heated_towel_rail:before {
- content: "\e912"; }
+.icojam_fridge_side_by_side:before {
+ content: "\e613"; }
-.icojam_hook:before {
- content: "\e913"; }
+.icojam_hairdryer:before {
+ content: "\e614"; }
-.icojam_hooks:before {
- content: "\e914"; }
+.icojam_heat_fan:before {
+ content: "\e615"; }
-.icojam_linen:before {
- content: "\e915"; }
+.icojam_heater:before {
+ content: "\e616"; }
-.icojam_mirror:before {
- content: "\e916"; }
+.icojam_iron:before {
+ content: "\e617"; }
-.icojam_pan:before {
- content: "\e917"; }
+.icojam_juicer:before {
+ content: "\e618"; }
-.icojam_picture2:before {
- content: "\e918"; }
+.icojam_kitchen_hood:before {
+ content: "\e619"; }
-.icojam_pier-glass:before {
- content: "\e919"; }
+.icojam_kitchen_hood_1:before {
+ content: "\e61a"; }
-.icojam_rack:before {
- content: "\e91a"; }
+.icojam_kitchen_timer:before {
+ content: "\e61b"; }
-.icojam_racks:before {
- content: "\e91b"; }
+.icojam_metal_detector_multimeter_voltmeter:before {
+ content: "\e61c"; }
-.icojam_radiator2:before {
- content: "\e91c"; }
+.icojam_microwave:before {
+ content: "\e61d"; }
-.icojam_reading-lamp:before {
- content: "\e91d"; }
+.icojam_mixer:before {
+ content: "\e61e"; }
-.icojam_shelf:before {
- content: "\e91e"; }
+.icojam_paper_shredder:before {
+ content: "\e61f"; }
-.icojam_shelf_2:before {
- content: "\e91f"; }
+.icojam_radiator:before {
+ content: "\e620"; }
-.icojam_shelfs:before {
- content: "\e920"; }
+.icojam_refrigerator:before {
+ content: "\e621"; }
-.icojam_shelfs_2:before {
- content: "\e921"; }
+.icojam_samovar:before {
+ content: "\e622"; }
-.icojam_singlebed:before {
- content: "\e922"; }
+.icojam_scale_kitchen_weigher:before {
+ content: "\e623"; }
-.icojam_sink_bathroom:before {
- content: "\e923"; }
+.icojam_scales:before {
+ content: "\e624"; }
-.icojam_sink_kitchen:before {
- content: "\e924"; }
+.icojam_sewing_machine:before {
+ content: "\e625"; }
-.icojam_sofa:before {
- content: "\e925"; }
+.icojam_stove:before {
+ content: "\e626"; }
-.icojam_sofa_1:before {
- content: "\e926"; }
+.icojam_toaster:before {
+ content: "\e627"; }
-.icojam_sofa_2:before {
- content: "\e927"; }
+.icojam_vacuum_cleaner:before {
+ content: "\e628"; }
-.icojam_stand:before {
- content: "\e928"; }
+.icojam_waffle-iron:before {
+ content: "\e629"; }
-.icojam_stand_2:before {
- content: "\e929"; }
+.icojam_washing_machine:before {
+ content: "\e62a"; }
-.icojam_stand_3:before {
- content: "\e92a"; }
+.icojam_yogurter:before {
+ content: "\e62b"; }
-.icojam_stand_4:before {
- content: "\e92b"; }
+.icojam_baby_monitor:before {
+ content: "\e62c"; }
-.icojam_table_1:before {
- content: "\e92c"; }
+.icojam_baby_monitors:before {
+ content: "\e62d"; }
-.icojam_table_2:before {
- content: "\e92d"; }
+.icojam_ball:before {
+ content: "\e62e"; }
-.icojam_table_3:before {
- content: "\e92e"; }
+.icojam_beanbag_maraca:before {
+ content: "\e62f"; }
-.icojam_table_4:before {
- content: "\e92f"; }
+.icojam_bib:before {
+ content: "\e630"; }
-.icojam_table_round:before {
- content: "\e930"; }
+.icojam_bicycle_baby_infant:before {
+ content: "\e631"; }
-.icojam_table-lamp:before {
- content: "\e931"; }
+.icojam_birthday_newborn:before {
+ content: "\e632"; }
-.icojam_toilet_paper:before {
- content: "\e932"; }
+.icojam_blocks:before {
+ content: "\e633"; }
-.icojam_towel:before {
- content: "\e933"; }
+.icojam_body_suit:before {
+ content: "\e634"; }
-.icojam_wardrobe:before {
- content: "\e934"; }
+.icojam_bottle_infant:before {
+ content: "\e635"; }
-.icojam_wardrobe_1:before {
- content: "\e935"; }
+.icojam_boy:before {
+ content: "\e636"; }
-.icojam_wardrobe_2:before {
- content: "\e936"; }
+.icojam_breast_milk:before {
+ content: "\e637"; }
-.icojam_window:before {
- content: "\e937"; }
+.icojam_breast-feeding_mother:before {
+ content: "\e638"; }
-.icojam_bag_bagful:before {
- content: "\e938"; }
+.icojam_buildingkit:before {
+ content: "\e639"; }
-.icojam_balloon:before {
- content: "\e939"; }
+.icojam_car:before {
+ content: "\e63a"; }
-.icojam_balloons:before {
- content: "\e93a"; }
+.icojam_chair_baby:before {
+ content: "\e63b"; }
-.icojam_bell:before {
- content: "\e93b"; }
+.icojam_chamber_pot:before {
+ content: "\e63c"; }
-.icojam_bouquet_flowers:before {
- content: "\e93c"; }
+.icojam_duck_rubberduck:before {
+ content: "\e63d"; }
-.icojam_bow_knot:before {
- content: "\e93d"; }
+.icojam_dummy_nipple:before {
+ content: "\e63e"; }
-.icojam_bracelet:before {
- content: "\e93e"; }
+.icojam_embryo:before {
+ content: "\e63f"; }
-.icojam_candle:before {
- content: "\e93f"; }
+.icojam_fertilization_sperm_ovum:before {
+ content: "\e640"; }
-.icojam_christmas_newyear_tree:before {
- content: "\e940"; }
+.icojam_fork_spoon_baby:before {
+ content: "\e641"; }
-.icojam_christmas_tree_decoration:before {
- content: "\e941"; }
+.icojam_girl:before {
+ content: "\e642"; }
-.icojam_christmas_tree_decoration_lashlight:before {
- content: "\e942"; }
+.icojam_horse_hobby_hobbyhorse:before {
+ content: "\e643"; }
-.icojam_cookie_man:before {
- content: "\e943"; }
+.icojam_mobile_infant:before {
+ content: "\e644"; }
-.icojam_crown_king_top:before {
- content: "\e944"; }
+.icojam_napkin:before {
+ content: "\e645"; }
-.icojam_diamond:before {
- content: "\e945"; }
+.icojam_pampers_briefs_diapers:before {
+ content: "\e646"; }
-.icojam_diamond_brilliant:before {
- content: "\e946"; }
+.icojam_parental_control_off:before {
+ content: "\e647"; }
-.icojam_easter_egg:before {
- content: "\e947"; }
+.icojam_parental_control_on:before {
+ content: "\e648"; }
-.icojam_fireworks:before {
- content: "\e948"; }
+.icojam_playpen:before {
+ content: "\e649"; }
-.icojam_flag_victory:before {
- content: "\e949"; }
+.icojam_preserves:before {
+ content: "\e64a"; }
-.icojam_flag_victory_2:before {
- content: "\e94a"; }
+.icojam_pyramid:before {
+ content: "\e64b"; }
-.icojam_flower:before {
- content: "\e94b"; }
+.icojam_RC_car_radiocontrolled:before {
+ content: "\e64c"; }
-.icojam_flower_pot:before {
- content: "\e94c"; }
+.icojam_scales_baby:before {
+ content: "\e64d"; }
-.icojam_flowers:before {
- content: "\e94d"; }
+.icojam_shirt:before {
+ content: "\e64e"; }
-.icojam_four-leaved_shamrock_lucky:before {
- content: "\e94e"; }
+.icojam_shoes:before {
+ content: "\e64f"; }
-.icojam_garland_lamp:before {
- content: "\e94f"; }
+.icojam_stadiometer:before {
+ content: "\e650"; }
-.icojam_grandfather_frost:before {
- content: "\e950"; }
+.icojam_stroller_cane:before {
+ content: "\e651"; }
-.icojam_happy_sunny:before {
- content: "\e951"; }
+.icojam_teether:before {
+ content: "\e652"; }
-.icojam_horseshoe:before {
- content: "\e952"; }
+.icojam_tights:before {
+ content: "\e653"; }
-.icojam_mitten:before {
- content: "\e953"; }
+.icojam_ultrasound_diagnostics:before {
+ content: "\e654"; }
-.icojam_necklace:before {
- content: "\e954"; }
+.icojam_videogame_baby:before {
+ content: "\e655"; }
-.icojam_package2:before {
- content: "\e955"; }
+.icojam_add:before {
+ content: "\e656"; }
-.icojam_pearl:before {
- content: "\e956"; }
+.icojam_base:before {
+ content: "\e657"; }
-.icojam_petard:before {
- content: "\e957"; }
+.icojam_base_check:before {
+ content: "\e658"; }
-.icojam_poinsettia_christmas_star:before {
- content: "\e958"; }
+.icojam_base_connect:before {
+ content: "\e659"; }
-.icojam_present:before {
- content: "\e959"; }
+.icojam_base_delete:before {
+ content: "\e65a"; }
-.icojam_present_gift:before {
- content: "\e95a"; }
+.icojam_base_favorite:before {
+ content: "\e65b"; }
-.icojam_ring:before {
- content: "\e95b"; }
+.icojam_base_new:before {
+ content: "\e65c"; }
-.icojam_ring_finger:before {
- content: "\e95c"; }
+.icojam_base_remove:before {
+ content: "\e65d"; }
-.icojam_saint_patrick_hat:before {
- content: "\e95d"; }
+.icojam_base_search_in:before {
+ content: "\e65e"; }
-.icojam_salute_fireworks:before {
- content: "\e95e"; }
+.icojam_check:before {
+ content: "\e65f"; }
-.icojam_salute_fireworks_2:before {
- content: "\e95f"; }
+.icojam_comment_1:before {
+ content: "\e660"; }
-.icojam_salute_fireworks_3:before {
- content: "\e960"; }
+.icojam_comment_2:before {
+ content: "\e661"; }
-.icojam_salute_fireworks_4:before {
- content: "\e961"; }
+.icojam_comment_3:before {
+ content: "\e662"; }
-.icojam_santa_claus:before {
- content: "\e962"; }
+.icojam_comment_baloon:before {
+ content: "\e663"; }
-.icojam_santa_claus_hat:before {
- content: "\e963"; }
+.icojam_comment_chat:before {
+ content: "\e664"; }
-.icojam_santa_claus_head:before {
- content: "\e964"; }
+.icojam_comment_dream:before {
+ content: "\e665"; }
-.icojam_shopping:before {
- content: "\e965"; }
+.icojam_connect_close:before {
+ content: "\e666"; }
-.icojam_sledge:before {
- content: "\e966"; }
+.icojam_credit_card:before {
+ content: "\e667"; }
-.icojam_snowman:before {
- content: "\e967"; }
+.icojam_credit_card_back:before {
+ content: "\e668"; }
-.icojam_sock_boots:before {
- content: "\e968"; }
+.icojam_credit_card_multi:before {
+ content: "\e669"; }
-.icojam_teddy_bear:before {
- content: "\e969"; }
+.icojam_delete:before {
+ content: "\e66a"; }
-.icojam_treasures_money_gold_boiler:before {
- content: "\e96a"; }
+.icojam_favorite:before {
+ content: "\e66b"; }
-.icojam_turkey_chicken:before {
- content: "\e96b"; }
+.icojam_favorite_add:before {
+ content: "\e66c"; }
-.icojam_wedding_jewel:before {
- content: "\e96c"; }
+.icojam_favorite_add_2:before {
+ content: "\e66d"; }
-.icojam_add-on:before {
- content: "\e96d"; }
+.icojam_favorite_add_3:before {
+ content: "\e66e"; }
-.icojam_advertise_1:before {
- content: "\e96e"; }
+.icojam_favorite_add_4:before {
+ content: "\e66f"; }
-.icojam_advertise_2:before {
- content: "\e96f"; }
+.icojam_favorite_check_1:before {
+ content: "\e670"; }
-.icojam_archive:before {
- content: "\e970"; }
+.icojam_favorite_check_2:before {
+ content: "\e671"; }
-.icojam_box:before {
- content: "\e971"; }
+.icojam_favorite_delete_1:before {
+ content: "\e672"; }
-.icojam_box_opened:before {
- content: "\e972"; }
+.icojam_favorite_delete_2:before {
+ content: "\e673"; }
-.icojam_browser:before {
- content: "\e973"; }
+.icojam_favorite_remove_1:before {
+ content: "\e674"; }
-.icojam_comment_12:before {
- content: "\e974"; }
+.icojam_favorite_remove_2:before {
+ content: "\e675"; }
-.icojam_comment_22:before {
- content: "\e975"; }
+.icojam_flag:before {
+ content: "\e676"; }
-.icojam_comments:before {
- content: "\e976"; }
+.icojam_gear:before {
+ content: "\e677"; }
-.icojam_compare_balance:before {
- content: "\e977"; }
+.icojam_glass:before {
+ content: "\e678"; }
-.icojam_compare_disbalance:before {
- content: "\e978"; }
+.icojam_home:before {
+ content: "\e679"; }
-.icojam_download_1:before {
- content: "\e979"; }
+.icojam_key_1:before {
+ content: "\e67a"; }
-.icojam_download_2:before {
- content: "\e97a"; }
+.icojam_key_2:before {
+ content: "\e67b"; }
-.icojam_download_3:before {
- content: "\e97b"; }
+.icojam_lamp:before {
+ content: "\e67c"; }
-.icojam_download_4:before {
- content: "\e97c"; }
+.icojam_lamp_off:before {
+ content: "\e67d"; }
-.icojam_download_5:before {
- content: "\e97d"; }
+.icojam_lamp_on:before {
+ content: "\e67e"; }
-.icojam_firewall:before {
- content: "\e97e"; }
+.icojam_lock:before {
+ content: "\e67f"; }
-.icojam_grid_01:before {
- content: "\e97f"; }
+.icojam_minus:before {
+ content: "\e680"; }
-.icojam_grid_02:before {
- content: "\e980"; }
+.icojam_options_1:before {
+ content: "\e681"; }
-.icojam_grid_03:before {
- content: "\e981"; }
+.icojam_options_2:before {
+ content: "\e682"; }
-.icojam_grid_04:before {
- content: "\e982"; }
+.icojam_protect_1:before {
+ content: "\e683"; }
-.icojam_grid_05:before {
- content: "\e983"; }
+.icojam_protect_2:before {
+ content: "\e684"; }
-.icojam_grid_06:before {
- content: "\e984"; }
+.icojam_protect_3:before {
+ content: "\e685"; }
-.icojam_grid_07:before {
- content: "\e985"; }
+.icojam_recycle_bin_1:before {
+ content: "\e686"; }
-.icojam_grid_08:before {
- content: "\e986"; }
+.icojam_recycle_bin_2:before {
+ content: "\e687"; }
-.icojam_grid_09:before {
- content: "\e987"; }
+.icojam_recycle_bin_3:before {
+ content: "\e688"; }
-.icojam_grid_10:before {
- content: "\e988"; }
+.icojam_recycle_bin_4:before {
+ content: "\e689"; }
-.icojam_grid_11:before {
- content: "\e989"; }
+.icojam_recycle_bin_empty:before {
+ content: "\e68a"; }
-.icojam_grid_12:before {
- content: "\e98a"; }
+.icojam_rss:before {
+ content: "\e68b"; }
-.icojam_grid_13:before {
- content: "\e98b"; }
+.icojam_search:before {
+ content: "\e68c"; }
-.icojam_grid_14:before {
- content: "\e98c"; }
+.icojam_shopping_cart_1:before {
+ content: "\e68d"; }
-.icojam_grid_15:before {
- content: "\e98d"; }
+.icojam_shopping_cart_2:before {
+ content: "\e68e"; }
-.icojam_grid_16:before {
- content: "\e98e"; }
+.icojam_shopping_cart_3:before {
+ content: "\e68f"; }
-.icojam_grid_17:before {
- content: "\e98f"; }
+.icojam_shopping_cart_4:before {
+ content: "\e690"; }
-.icojam_grid_18:before {
- content: "\e990"; }
+.icojam_star:before {
+ content: "\e691"; }
-.icojam_grid_19:before {
- content: "\e991"; }
+.icojam_umbrella:before {
+ content: "\e692"; }
-.icojam_grid_20:before {
- content: "\e992"; }
+.icojam_unlock:before {
+ content: "\e693"; }
-.icojam_grid_21:before {
- content: "\e993"; }
+.icojam_up:before {
+ content: "\e694"; }
-.icojam_grid_22:before {
- content: "\e994"; }
+.icojam_wizard_1:before {
+ content: "\e695"; }
-.icojam_grid_23:before {
- content: "\e995"; }
+.icojam_wizard_2:before {
+ content: "\e696"; }
-.icojam_grid_24:before {
- content: "\e996"; }
+.icojam_airport:before {
+ content: "\e697"; }
-.icojam_grid_25:before {
- content: "\e997"; }
+.icojam_ancient_building:before {
+ content: "\e698"; }
-.icojam_grid_26:before {
- content: "\e998"; }
+.icojam_apartment:before {
+ content: "\e699"; }
-.icojam_grid_27:before {
- content: "\e999"; }
+.icojam_arch:before {
+ content: "\e69a"; }
-.icojam_grid_28:before {
- content: "\e99a"; }
+.icojam_bank:before {
+ content: "\e69b"; }
-.icojam_grid_29:before {
- content: "\e99b"; }
+.icojam_belfry:before {
+ content: "\e69c"; }
-.icojam_grid_30:before {
- content: "\e99c"; }
+.icojam_bridge_1:before {
+ content: "\e69d"; }
-.icojam_grid_31:before {
- content: "\e99d"; }
+.icojam_bridge_2:before {
+ content: "\e69e"; }
-.icojam_grid_32:before {
- content: "\e99e"; }
+.icojam_bridge_column:before {
+ content: "\e69f"; }
-.icojam_grid_33:before {
- content: "\e99f"; }
+.icojam_building:before {
+ content: "\e6a0"; }
-.icojam_grid_34:before {
- content: "\e9a0"; }
+.icojam_car_wash:before {
+ content: "\e6a1"; }
-.icojam_grid_35:before {
- content: "\e9a1"; }
+.icojam_castle:before {
+ content: "\e6a2"; }
-.icojam_grid_36:before {
- content: "\e9a2"; }
+.icojam_catholic_church:before {
+ content: "\e6a3"; }
-.icojam_grid_37:before {
- content: "\e9a3"; }
+.icojam_church:before {
+ content: "\e6a4"; }
-.icojam_grid_38:before {
- content: "\e9a4"; }
+.icojam_city:before {
+ content: "\e6a5"; }
-.icojam_grid_columns:before {
- content: "\e9a5"; }
+.icojam_downtown:before {
+ content: "\e6a6"; }
-.icojam_grid_layout:before {
- content: "\e9a6"; }
+.icojam_dwelling_house:before {
+ content: "\e6a7"; }
-.icojam_grid_rows:before {
- content: "\e9a7"; }
+.icojam_exhibition:before {
+ content: "\e6a8"; }
-.icojam_grid_thumbnails:before {
- content: "\e9a8"; }
+.icojam_factory_1:before {
+ content: "\e6a9"; }
-.icojam_headphones:before {
- content: "\e9a9"; }
+.icojam_factory_2:before {
+ content: "\e6aa"; }
-.icojam_html_code:before {
- content: "\e9aa"; }
+.icojam_factory_3:before {
+ content: "\e6ab"; }
-.icojam_index_1:before {
- content: "\e9ab"; }
+.icojam_fire:before {
+ content: "\e6ac"; }
-.icojam_index_2:before {
- content: "\e9ac"; }
+.icojam_firefighters:before {
+ content: "\e6ad"; }
-.icojam_knob:before {
- content: "\e9ad"; }
+.icojam_for_rent:before {
+ content: "\e6ae"; }
-.icojam_play:before {
- content: "\e9ae"; }
+.icojam_for_sale:before {
+ content: "\e6af"; }
-.icojam_player_1:before {
- content: "\e9af"; }
+.icojam_front_gate:before {
+ content: "\e6b0"; }
-.icojam_player_2:before {
- content: "\e9b0"; }
+.icojam_garage_1:before {
+ content: "\e6b1"; }
-.icojam_preview_cover_flow:before {
- content: "\e9b2"; }
+.icojam_garage_2:before {
+ content: "\e6b2"; }
-.icojam_preview_fullscreen:before {
- content: "\e9b3"; }
+.icojam_garage_hangar:before {
+ content: "\e6b3"; }
-.icojam_preview_list:before {
- content: "\e9b4"; }
+.icojam_garage_multilevel:before {
+ content: "\e6b4"; }
-.icojam_preview_matrix:before {
- content: "\e9b5"; }
+.icojam_government:before {
+ content: "\e6b5"; }
-.icojam_preview_presentation:before {
- content: "\e9b6"; }
+.icojam_home_1:before {
+ content: "\e6b6"; }
-.icojam_preview_table:before {
- content: "\e9b7"; }
+.icojam_home_2:before {
+ content: "\e6b7"; }
-.icojam_preview_thumbnails:before {
- content: "\e9b8"; }
+.icojam_home_3:before {
+ content: "\e6b8"; }
-.icojam_quotes_1:before {
- content: "\e9b9"; }
+.icojam_home_4:before {
+ content: "\e6b9"; }
-.icojam_quotes_2:before {
- content: "\e9ba"; }
+.icojam_home_farm:before {
+ content: "\e6ba"; }
-.icojam_send:before {
- content: "\e9bb"; }
+.icojam_hospital_clinic:before {
+ content: "\e6bb"; }
-.icojam_share:before {
- content: "\e9bc"; }
+.icojam_housemulti_storey:before {
+ content: "\e6bc"; }
-.icojam_site_alert:before {
- content: "\e9bd"; }
+.icojam_house_1:before {
+ content: "\e6bd"; }
-.icojam_site_attention:before {
- content: "\e9be"; }
+.icojam_house_2:before {
+ content: "\e6be"; }
-.icojam_site_back:before {
- content: "\e9bf"; }
+.icojam_house_3:before {
+ content: "\e6bf"; }
-.icojam_site_close:before {
- content: "\e9c0"; }
+.icojam_house_4:before {
+ content: "\e6c0"; }
-.icojam_site_close_tab:before {
- content: "\e9c1"; }
+.icojam_house_five_story:before {
+ content: "\e6c1"; }
-.icojam_site_favorite:before {
- content: "\e9c2"; }
+.icojam_house_four_stories:before {
+ content: "\e6c2"; }
-.icojam_site_foward:before {
- content: "\e9c3"; }
+.icojam_house_three_story:before {
+ content: "\e6c3"; }
-.icojam_site_new:before {
- content: "\e9c4"; }
+.icojam_house_two_storey_1:before {
+ content: "\e6c4"; }
-.icojam_site_options:before {
- content: "\e9c5"; }
+.icojam_house_two_storey_2:before {
+ content: "\e6c5"; }
-.icojam_site_ping:before {
- content: "\e9c6"; }
+.icojam_house_with_garage_1:before {
+ content: "\e6c6"; }
-.icojam_site_refresh:before {
- content: "\e9c7"; }
+.icojam_house_with_garage_2:before {
+ content: "\e6c7"; }
-.icojam_site_search:before {
- content: "\e9c8"; }
+.icojam_hovel_1:before {
+ content: "\e6c8"; }
-.icojam_tablet:before {
- content: "\e9c9"; }
+.icojam_hovel_2:before {
+ content: "\e6c9"; }
-.icojam_text_center:before {
- content: "\e9ca"; }
+.icojam_library_1:before {
+ content: "\e6ca"; }
-.icojam_text_justify_all:before {
- content: "\e9cb"; }
+.icojam_library_2:before {
+ content: "\e6cb"; }
-.icojam_text_justify_centered:before {
- content: "\e9cc"; }
+.icojam_log_house:before {
+ content: "\e6cc"; }
-.icojam_text_justify_left:before {
- content: "\e9cd"; }
+.icojam_mosque:before {
+ content: "\e6cd"; }
-.icojam_text_justify_right:before {
- content: "\e9ce"; }
+.icojam_obelisk:before {
+ content: "\e6ce"; }
-.icojam_text_left_align:before {
- content: "\e9cf"; }
+.icojam_orthodox_church:before {
+ content: "\e6cf"; }
-.icojam_text_right_align:before {
- content: "\e9d0"; }
+.icojam_palace_of_congresses:before {
+ content: "\e6d0"; }
-.icojam_top_1:before {
- content: "\e9d1"; }
+.icojam_park_1:before {
+ content: "\e6d1"; }
-.icojam_top_2:before {
- content: "\e9d2"; }
+.icojam_park_2:before {
+ content: "\e6d2"; }
-.icojam_view_expand_1:before {
- content: "\e9d3"; }
+.icojam_planetarium_observatory:before {
+ content: "\e6d3"; }
-.icojam_view_expand_2:before {
- content: "\e9d4"; }
+.icojam_plant:before {
+ content: "\e6d4"; }
-.icojam_view_full_screen:before {
- content: "\e9d5"; }
+.icojam_police:before {
+ content: "\e6d5"; }
-.icojam_view_maximize:before {
- content: "\e9d6"; }
+.icojam_ranch:before {
+ content: "\e6d6"; }
-.icojam_view_minimize:before {
- content: "\e9d7"; }
+.icojam_school_1:before {
+ content: "\e6d7"; }
-.icojam_view_roll-up_1:before {
- content: "\e9d8"; }
+.icojam_school_2:before {
+ content: "\e6d8"; }
-.icojam_view_roll-up_2:before {
- content: "\e9d9"; }
+.icojam_sheriff:before {
+ content: "\e6d9"; }
-.icojam_view_scale_1:before {
- content: "\e9da"; }
+.icojam_shop_1:before {
+ content: "\e6da"; }
-.icojam_view_scale_2:before {
- content: "\e9db"; }
+.icojam_shop_2:before {
+ content: "\e6db"; }
-.icojam_window2:before {
- content: "\e9dc"; }
+.icojam_shop_3:before {
+ content: "\e6dc"; }
-.icojam_window_attention:before {
- content: "\e9dd"; }
+.icojam_shop_4:before {
+ content: "\e6dd"; }
-.icojam_window_close_1:before {
- content: "\e9de"; }
+.icojam_shopping_center:before {
+ content: "\e6de"; }
-.icojam_window_close_2:before {
- content: "\e9df"; }
+.icojam_skyscraper_1:before {
+ content: "\e6df"; }
-.icojam_window_favorite:before {
- content: "\e9e0"; }
+.icojam_skyscraper_2:before {
+ content: "\e6e0"; }
-.icojam_window_new:before {
- content: "\e9e1"; }
+.icojam_skyscrapers_1:before {
+ content: "\e6e1"; }
-.icojam_window_next:before {
- content: "\e9e2"; }
+.icojam_skyscrapers_2:before {
+ content: "\e6e2"; }
-.icojam_window_open:before {
- content: "\e9e3"; }
+.icojam_skyscrapers_3:before {
+ content: "\e6e3"; }
-.icojam_window_options:before {
- content: "\e9e4"; }
+.icojam_skyway:before {
+ content: "\e6e4"; }
-.icojam_window_previous:before {
- content: "\e9e5"; }
+.icojam_station_gas:before {
+ content: "\e6e5"; }
-.icojam_window_refresh:before {
- content: "\e9e6"; }
+.icojam_station_petrol:before {
+ content: "\e6e6"; }
-.icojam_window_search:before {
- content: "\e9e7"; }
+.icojam_tent_camp:before {
+ content: "\e6e7"; }
-.icojam_window_stop:before {
- content: "\e9e8"; }
+.icojam_terminal:before {
+ content: "\e6e8"; }
-.icojam_bird_1:before {
- content: "\e9e9"; }
+.icojam_theater_1:before {
+ content: "\e6e9"; }
-.icojam_bird_2:before {
- content: "\e9ea"; }
+.icojam_theater_2:before {
+ content: "\e6ea"; }
-.icojam_blink:before {
- content: "\e9eb"; }
+.icojam_train_station:before {
+ content: "\e6eb"; }
-.icojam_blood:before {
- content: "\e9ec"; }
+.icojam_TV_tower_repeater:before {
+ content: "\e6ec"; }
-.icojam_brain:before {
- content: "\e9ed"; }
+.icojam_university:before {
+ content: "\e6ed"; }
-.icojam_cardiogram_1:before {
- content: "\e9ee"; }
+.icojam_warehouse:before {
+ content: "\e6ee"; }
-.icojam_cardiogram_2:before {
- content: "\e9ef"; }
+.icojam_amphora:before {
+ content: "\e6ef"; }
-.icojam_chicken2:before {
- content: "\e9f0"; }
+.icojam_awards:before {
+ content: "\e6f0"; }
-.icojam_DNA_1:before {
- content: "\e9f1"; }
+.icojam_books_1:before {
+ content: "\e6f1"; }
-.icojam_DNA_2:before {
- content: "\e9f2"; }
+.icojam_books_2:before {
+ content: "\e6f2"; }
-.icojam_DNA_3:before {
- content: "\e9f3"; }
+.icojam_crown_1:before {
+ content: "\e6f3"; }
-.icojam_doctor:before {
- content: "\e9f4"; }
+.icojam_crown_2:before {
+ content: "\e6f4"; }
-.icojam_dog:before {
- content: "\e9f5"; }
+.icojam_death:before {
+ content: "\e6f5"; }
-.icojam_drugs:before {
- content: "\e9f6"; }
+.icojam_eater:before {
+ content: "\e6f6"; }
-.icojam_ear:before {
- content: "\e9f7"; }
+.icojam_family:before {
+ content: "\e6f7"; }
-.icojam_eye_1:before {
- content: "\e9f8"; }
+.icojam_ghost:before {
+ content: "\e6f8"; }
-.icojam_eye_2:before {
- content: "\e9f9"; }
+.icojam_kill:before {
+ content: "\e6f9"; }
-.icojam_eye_3:before {
- content: "\e9fa"; }
+.icojam_leader:before {
+ content: "\e6fa"; }
-.icojam_eye_4:before {
- content: "\e9fb"; }
+.icojam_mask:before {
+ content: "\e6fb"; }
-.icojam_eye_5:before {
- content: "\e9fc"; }
+.icojam_matreshka_1:before {
+ content: "\e6fc"; }
-.icojam_eye_6:before {
- content: "\e9fd"; }
+.icojam_matreshka_2:before {
+ content: "\e6fd"; }
-.icojam_eye_7:before {
- content: "\e9fe"; }
+.icojam_nature:before {
+ content: "\e6fe"; }
-.icojam_eyelash:before {
- content: "\e9ff"; }
+.icojam_picture:before {
+ content: "\e6ff"; }
-.icojam_fish2:before {
- content: "\ea00"; }
+.icojam_pillar:before {
+ content: "\e700"; }
-.icojam_fist:before {
- content: "\ea01"; }
+.icojam_smile_1:before {
+ content: "\e701"; }
-.icojam_heart:before {
- content: "\ea02"; }
+.icojam_smile_2:before {
+ content: "\e702"; }
-.icojam_hostpital:before {
- content: "\ea03"; }
+.icojam_smile_3:before {
+ content: "\e703"; }
-.icojam_injection:before {
- content: "\ea04"; }
+.icojam_smile_4:before {
+ content: "\e704"; }
-.icojam_kidney:before {
- content: "\ea05"; }
+.icojam_smile_disappointment:before {
+ content: "\e705"; }
-.icojam_lips:before {
- content: "\ea06"; }
+.icojam_smile_fright:before {
+ content: "\e706"; }
-.icojam_liver:before {
- content: "\ea07"; }
+.icojam_smile_surprise:before {
+ content: "\e707"; }
-.icojam_LSD:before {
- content: "\ea08"; }
+.icojam_smile_wink:before {
+ content: "\e708"; }
-.icojam_lungs:before {
- content: "\ea09"; }
+.icojam_sun:before {
+ content: "\e709"; }
-.icojam_medicine_chest:before {
- content: "\ea0a"; }
+.icojam_wreath:before {
+ content: "\e70a"; }
-.icojam_microscope_1:before {
- content: "\ea0b"; }
+.icojam_yin_yang:before {
+ content: "\e70b"; }
-.icojam_microscope_2:before {
- content: "\ea0c"; }
+.icojam_calculator:before {
+ content: "\e70c"; }
-.icojam_monkey:before {
- content: "\ea0d"; }
+.icojam_camera_betacam:before {
+ content: "\e70d"; }
-.icojam_nose_1:before {
- content: "\ea0e"; }
+.icojam_camera_video_1:before {
+ content: "\e70e"; }
-.icojam_nose_2:before {
- content: "\ea0f"; }
+.icojam_camera_video_2:before {
+ content: "\e70f"; }
-.icojam_nurse:before {
- content: "\ea10"; }
+.icojam_channel_close:before {
+ content: "\e710"; }
-.icojam_patch_1:before {
- content: "\ea11"; }
+.icojam_channel_delete:before {
+ content: "\e711"; }
-.icojam_patch_2:before {
- content: "\ea12"; }
+.icojam_channel_favorite:before {
+ content: "\e712"; }
-.icojam_pill_1:before {
- content: "\ea13"; }
+.icojam_channel_new:before {
+ content: "\e713"; }
-.icojam_pill_2:before {
- content: "\ea14"; }
+.icojam_channel_pause:before {
+ content: "\e714"; }
-.icojam_pill_3:before {
- content: "\ea15"; }
+.icojam_channel_ready:before {
+ content: "\e715"; }
-.icojam_pill_4:before {
- content: "\ea16"; }
+.icojam_channel_stop:before {
+ content: "\e716"; }
-.icojam_pill_5:before {
- content: "\ea17"; }
+.icojam_channel_watch:before {
+ content: "\e717"; }
-.icojam_pill_6:before {
- content: "\ea18"; }
+.icojam_computer:before {
+ content: "\e718"; }
-.icojam_pill_7:before {
- content: "\ea19"; }
+.icojam_connection:before {
+ content: "\e719"; }
-.icojam_pill_8:before {
- content: "\ea1a"; }
+.icojam_connection_close:before {
+ content: "\e71a"; }
-.icojam_pill_drugs:before {
- content: "\ea1b"; }
+.icojam_connection_delete:before {
+ content: "\e71b"; }
-.icojam_red_cross:before {
- content: "\ea1c"; }
+.icojam_connection_favorite:before {
+ content: "\e71c"; }
-.icojam_skull:before {
- content: "\ea1d"; }
+.icojam_connection_new:before {
+ content: "\e71d"; }
-.icojam_skull_and_bones:before {
- content: "\ea1e"; }
+.icojam_connection_ping:before {
+ content: "\e71e"; }
-.icojam_sleep_1:before {
- content: "\ea1f"; }
+.icojam_connection_ready:before {
+ content: "\e71f"; }
-.icojam_sleep_2:before {
- content: "\ea20"; }
+.icojam_dec_phone:before {
+ content: "\e720"; }
-.icojam_sleep_3:before {
- content: "\ea21"; }
+.icojam_disc:before {
+ content: "\e721"; }
-.icojam_smoke:before {
- content: "\ea22"; }
+.icojam_external_drive:before {
+ content: "\e722"; }
-.icojam_snake:before {
- content: "\ea23"; }
+.icojam_fax_1:before {
+ content: "\e723"; }
-.icojam_stomach:before {
- content: "\ea24"; }
+.icojam_fax_2:before {
+ content: "\e724"; }
-.icojam_syringe:before {
- content: "\ea25"; }
+.icojam_flashlight:before {
+ content: "\e725"; }
-.icojam_test-tube_1:before {
- content: "\ea26"; }
+.icojam_hard_disk:before {
+ content: "\e726"; }
-.icojam_test-tube_2:before {
- content: "\ea27"; }
+.icojam_hometheatre:before {
+ content: "\e727"; }
-.icojam_test-tube_3:before {
- content: "\ea28"; }
+.icojam_iphone_horizontal_1:before {
+ content: "\e728"; }
-.icojam_test-tube_4:before {
- content: "\ea29"; }
+.icojam_iphone_horizontal_2:before {
+ content: "\e729"; }
-.icojam_test-tube_5:before {
- content: "\ea2a"; }
+.icojam_iphone_vertical_1:before {
+ content: "\e72a"; }
-.icojam_thermometer:before {
- content: "\ea2b"; }
+.icojam_iphone_vertical_2:before {
+ content: "\e72b"; }
-.icojam_tooth:before {
- content: "\ea2c"; }
+.icojam_joypad_games:before {
+ content: "\e72c"; }
-.icojam_anchor:before {
- content: "\ea2d"; }
+.icojam_keyboard:before {
+ content: "\e72d"; }
-.icojam_axis_3d:before {
- content: "\ea2e"; }
+.icojam_loudspeakers:before {
+ content: "\e72e"; }
-.icojam_book:before {
- content: "\ea2f"; }
+.icojam_mfu_xerox:before {
+ content: "\e72f"; }
-.icojam_categories:before {
- content: "\ea30"; }
+.icojam_microphone:before {
+ content: "\e730"; }
-.icojam_cloud:before {
- content: "\ea31"; }
+.icojam_mobile_phone:before {
+ content: "\e731"; }
-.icojam_cloud_connect:before {
- content: "\ea32"; }
+.icojam_monitor:before {
+ content: "\e732"; }
-.icojam_cloud_delete:before {
- content: "\ea33"; }
+.icojam_music_center:before {
+ content: "\e733"; }
-.icojam_cloud_download:before {
- content: "\ea34"; }
+.icojam_network:before {
+ content: "\e734"; }
-.icojam_cloud_new:before {
- content: "\ea35"; }
+.icojam_notebook_1:before {
+ content: "\e735"; }
-.icojam_cloud_ok:before {
- content: "\ea36"; }
+.icojam_notebook_2:before {
+ content: "\e736"; }
-.icojam_cloud_upload:before {
- content: "\ea37"; }
+.icojam_notebook_3:before {
+ content: "\e737"; }
-.icojam_compas_1:before {
- content: "\ea38"; }
+.icojam_notebook_computer:before {
+ content: "\e738"; }
-.icojam_compas_2:before {
- content: "\ea39"; }
+.icojam_photo_backside:before {
+ content: "\e739"; }
-.icojam_cup_12:before {
- content: "\ea3a"; }
+.icojam_photo_camera:before {
+ content: "\e73a"; }
-.icojam_cup_22:before {
- content: "\ea3b"; }
+.icojam_photo_compact:before {
+ content: "\e73b"; }
-.icojam_eye_12:before {
- content: "\ea3d"; }
+.icojam_photo_flash:before {
+ content: "\e73c"; }
-.icojam_eye_22:before {
- content: "\ea3e"; }
+.icojam_piano_music:before {
+ content: "\e73d"; }
-.icojam_feather:before {
- content: "\ea3f"; }
+.icojam_print:before {
+ content: "\e73e"; }
-.icojam_flash:before {
- content: "\ea40"; }
+.icojam_projector:before {
+ content: "\e73f"; }
-.icojam_food_1:before {
- content: "\ea41"; }
+.icojam_psp:before {
+ content: "\e740"; }
-.icojam_food_2:before {
- content: "\ea42"; }
+.icojam_radio:before {
+ content: "\e741"; }
-.icojam_food_3:before {
- content: "\ea43"; }
+.icojam_recorder:before {
+ content: "\e742"; }
-.icojam_geo:before {
- content: "\ea44"; }
+.icojam_remote_control_1:before {
+ content: "\e743"; }
-.icojam_goal:before {
- content: "\ea45"; }
+.icojam_remote_control_2:before {
+ content: "\e744"; }
-.icojam_goal_1:before {
- content: "\ea46"; }
+.icojam_save:before {
+ content: "\e745"; }
-.icojam_inbox_1:before {
- content: "\ea47"; }
+.icojam_save_as:before {
+ content: "\e746"; }
-.icojam_inbox_mail:before {
- content: "\ea48"; }
+.icojam_scanner:before {
+ content: "\e747"; }
-.icojam_inbox_receive:before {
- content: "\ea49"; }
+.icojam_sd_card_memory:before {
+ content: "\e748"; }
-.icojam_inbox_send:before {
- content: "\ea4a"; }
+.icojam_server:before {
+ content: "\e749"; }
-.icojam_inbox_sent:before {
- content: "\ea4b"; }
+.icojam_sim_card:before {
+ content: "\e74a"; }
-.icojam_info_1:before {
- content: "\ea4c"; }
+.icojam_smartphone_1:before {
+ content: "\e74b"; }
-.icojam_info_2:before {
- content: "\ea4d"; }
+.icojam_smartphone_2:before {
+ content: "\e74c"; }
-.icojam_info_3:before {
- content: "\ea4e"; }
+.icojam_telephone_1:before {
+ content: "\e74d"; }
-.icojam_languages:before {
- content: "\ea4f"; }
+.icojam_telephone_2:before {
+ content: "\e74e"; }
-.icojam_link_2:before {
- content: "\ea51"; }
+.icojam_telephone_3:before {
+ content: "\e74f"; }
-.icojam_link_3:before {
- content: "\ea52"; }
+.icojam_tv:before {
+ content: "\e750"; }
-.icojam_link_close_1:before {
- content: "\ea53"; }
+.icojam_tv_wide:before {
+ content: "\e751"; }
-.icojam_link_close_2:before {
- content: "\ea54"; }
+.icojam_usb_flash:before {
+ content: "\e752"; }
-.icojam_link_delete_1:before {
- content: "\ea55"; }
+.icojam_videocamera_1:before {
+ content: "\e753"; }
-.icojam_link_delete_2:before {
- content: "\ea56"; }
+.icojam_videocamera_2:before {
+ content: "\e754"; }
-.icojam_link_new_1:before {
- content: "\ea57"; }
+.icojam_videocamera_3:before {
+ content: "\e755"; }
-.icojam_link_new_2:before {
- content: "\ea58"; }
+.icojam_webcam:before {
+ content: "\e756"; }
-.icojam_location_1:before {
- content: "\ea59"; }
+.icojam_aac:before {
+ content: "\e757"; }
-.icojam_location_2:before {
- content: "\ea5a"; }
+.icojam_ai:before {
+ content: "\e758"; }
-.icojam_location_3:before {
- content: "\ea5b"; }
+.icojam_ape:before {
+ content: "\e759"; }
-.icojam_location_4:before {
- content: "\ea5c"; }
+.icojam_asf:before {
+ content: "\e75a"; }
-.icojam_location_5:before {
- content: "\ea5d"; }
+.icojam_avi:before {
+ content: "\e75b"; }
-.icojam_location_current:before {
- content: "\ea5e"; }
+.icojam_bat:before {
+ content: "\e75c"; }
-.icojam_location_delete:before {
- content: "\ea5f"; }
+.icojam_bmp:before {
+ content: "\e75d"; }
-.icojam_location_favorite:before {
- content: "\ea60"; }
+.icojam_cdr:before {
+ content: "\e75e"; }
-.icojam_location_new:before {
- content: "\ea61"; }
+.icojam_cfg:before {
+ content: "\e75f"; }
-.icojam_location_remove:before {
- content: "\ea62"; }
+.icojam_chm:before {
+ content: "\e760"; }
-.icojam_map_1:before {
- content: "\ea63"; }
+.icojam_com:before {
+ content: "\e761"; }
-.icojam_map_2:before {
- content: "\ea64"; }
+.icojam_css:before {
+ content: "\e762"; }
-.icojam_map_3:before {
- content: "\ea65"; }
+.icojam_csv:before {
+ content: "\e763"; }
-.icojam_map_4:before {
- content: "\ea66"; }
+.icojam_djv:before {
+ content: "\e764"; }
-.icojam_map_location:before {
- content: "\ea67"; }
+.icojam_dll:before {
+ content: "\e765"; }
-.icojam_options:before {
- content: "\ea68"; }
+.icojam_doc:before {
+ content: "\e766"; }
-.icojam_patch:before {
- content: "\ea69"; }
+.icojam_document_audio:before {
+ content: "\e767"; }
-.icojam_plane:before {
- content: "\ea6a"; }
+.icojam_document_image:before {
+ content: "\e768"; }
-.icojam_present2:before {
- content: "\ea6b"; }
+.icojam_document_photo:before {
+ content: "\e769"; }
-.icojam_radio_1:before {
- content: "\ea6c"; }
+.icojam_document_system:before {
+ content: "\e76a"; }
-.icojam_radio_2:before {
- content: "\ea6d"; }
+.icojam_document_text:before {
+ content: "\e76b"; }
-.icojam_script:before {
- content: "\ea6e"; }
+.icojam_document_unknown:before {
+ content: "\e76c"; }
-.icojam_speed_1:before {
- content: "\ea6f"; }
+.icojam_document_video:before {
+ content: "\e76d"; }
-.icojam_speed_2:before {
- content: "\ea70"; }
+.icojam_document_voice:before {
+ content: "\e76e"; }
-.icojam_switch_off:before {
- content: "\ea71"; }
+.icojam_docx:before {
+ content: "\e76f"; }
-.icojam_switch_off_1:before {
- content: "\ea72"; }
+.icojam_eps:before {
+ content: "\e770"; }
-.icojam_switch_on:before {
- content: "\ea73"; }
+.icojam_exe:before {
+ content: "\e771"; }
-.icojam_switch_on_1:before {
- content: "\ea74"; }
+.icojam_file_audio:before {
+ content: "\e772"; }
-.icojam_tag_1:before {
- content: "\ea75"; }
+.icojam_file_image:before {
+ content: "\e773"; }
-.icojam_tag_2:before {
- content: "\ea76"; }
+.icojam_file_photo:before {
+ content: "\e774"; }
-.icojam_tag_delete:before {
- content: "\ea77"; }
+.icojam_file_video:before {
+ content: "\e775"; }
-.icojam_tag_favorite:before {
- content: "\ea78"; }
+.icojam_file_voice:before {
+ content: "\e776"; }
-.icojam_tag_new:before {
- content: "\ea79"; }
+.icojam_fla:before {
+ content: "\e777"; }
-.icojam_tag_ready:before {
- content: "\ea7a"; }
+.icojam_flac:before {
+ content: "\e778"; }
-.icojam_tag_remove:before {
- content: "\ea7b"; }
+.icojam_gif:before {
+ content: "\e779"; }
-.icojam_tags_1:before {
- content: "\ea7c"; }
+.icojam_html:before {
+ content: "\e77a"; }
-.icojam_tags_2:before {
- content: "\ea7d"; }
+.icojam_icl:before {
+ content: "\e77b"; }
-.icojam_target:before {
- content: "\ea7e"; }
+.icojam_icns:before {
+ content: "\e77c"; }
-.icojam_target_1:before {
- content: "\ea7f"; }
+.icojam_ico:before {
+ content: "\e77d"; }
-.icojam_toggle_down_slide:before {
- content: "\ea80"; }
+.icojam_ini:before {
+ content: "\e77e"; }
-.icojam_toggle_left_slide:before {
- content: "\ea81"; }
+.icojam_iso:before {
+ content: "\e77f"; }
-.icojam_toggle_right_slide:before {
- content: "\ea82"; }
+.icojam_jpg:before {
+ content: "\e780"; }
-.icojam_toggle_up_slide:before {
- content: "\ea83"; }
+.icojam_log:before {
+ content: "\e781"; }
-.icojam_water:before {
- content: "\ea84"; }
+.icojam_midi:before {
+ content: "\e782"; }
-.icojam_airdrop:before {
- content: "\ea85"; }
+.icojam_mkv:before {
+ content: "\e783"; }
-.icojam_application_delete:before {
- content: "\ea86"; }
+.icojam_mov:before {
+ content: "\e784"; }
-.icojam_application_favorite:before {
- content: "\ea87"; }
+.icojam_mp3:before {
+ content: "\e785"; }
-.icojam_application_new:before {
- content: "\ea88"; }
+.icojam_mp4:before {
+ content: "\e786"; }
-.icojam_application_ready:before {
- content: "\ea89"; }
+.icojam_mpg:before {
+ content: "\e787"; }
-.icojam_application_remove:before {
- content: "\ea8a"; }
+.icojam_ogg:before {
+ content: "\e788"; }
-.icojam_battery_1:before {
- content: "\ea8b"; }
+.icojam_ogm:before {
+ content: "\e789"; }
-.icojam_battery_2:before {
- content: "\ea8c"; }
+.icojam_otf:before {
+ content: "\e78a"; }
-.icojam_battery_3:before {
- content: "\ea8d"; }
+.icojam_pdf:before {
+ content: "\e78b"; }
-.icojam_battery_empty:before {
- content: "\ea8e"; }
+.icojam_png:before {
+ content: "\e78c"; }
-.icojam_battery_full:before {
- content: "\ea8f"; }
+.icojam_ppt:before {
+ content: "\e78d"; }
-.icojam_bell2:before {
- content: "\ea90"; }
+.icojam_pptx:before {
+ content: "\e78e"; }
-.icojam_bucket_tool:before {
- content: "\ea91"; }
+.icojam_psd:before {
+ content: "\e78f"; }
-.icojam_bug:before {
- content: "\ea92"; }
+.icojam_ra:before {
+ content: "\e790"; }
-.icojam_cards:before {
- content: "\ea93"; }
+.icojam_rar:before {
+ content: "\e791"; }
-.icojam_chart_1:before {
- content: "\ea94"; }
+.icojam_raw:before {
+ content: "\e792"; }
-.icojam_chart_2:before {
- content: "\ea95"; }
+.icojam_rm:before {
+ content: "\e793"; }
-.icojam_chart_3:before {
- content: "\ea96"; }
+.icojam_rtf:before {
+ content: "\e794"; }
-.icojam_chart_4:before {
- content: "\ea97"; }
+.icojam_svg:before {
+ content: "\e795"; }
-.icojam_chess:before {
- content: "\ea98"; }
+.icojam_svgz:before {
+ content: "\e796"; }
-.icojam_connect_1:before {
- content: "\ea99"; }
+.icojam_swf:before {
+ content: "\e797"; }
-.icojam_connect_2:before {
- content: "\ea9a"; }
+.icojam_sys:before {
+ content: "\e798"; }
-.icojam_contrast:before {
- content: "\ea9b"; }
+.icojam_tga:before {
+ content: "\e799"; }
-.icojam_crop:before {
- content: "\ea9c"; }
+.icojam_tif:before {
+ content: "\e79a"; }
-.icojam_crop_2:before {
- content: "\ea9d"; }
+.icojam_ttf:before {
+ content: "\e79b"; }
-.icojam_dropper_pipette:before {
- content: "\ea9e"; }
+.icojam_txt:before {
+ content: "\e79c"; }
-.icojam_filter:before {
- content: "\ea9f"; }
+.icojam_wav:before {
+ content: "\e79d"; }
-.icojam_folder_close:before {
- content: "\eaa0"; }
+.icojam_wma:before {
+ content: "\e79e"; }
-.icojam_folder_open:before {
- content: "\eaa1"; }
+.icojam_wmv:before {
+ content: "\e79f"; }
-.icojam_font:before {
- content: "\eaa2"; }
+.icojam_xls:before {
+ content: "\e7a0"; }
-.icojam_glasses:before {
- content: "\eaa3"; }
+.icojam_xlsx:before {
+ content: "\e7a1"; }
-.icojam_graph_tools:before {
- content: "\eaa4"; }
+.icojam_xml:before {
+ content: "\e7a2"; }
-.icojam_grid:before {
- content: "\eaa5"; }
+.icojam_zip:before {
+ content: "\e7a3"; }
-.icojam_hang:before {
- content: "\eaa6"; }
+.icojam_alarm_clock:before {
+ content: "\e7a4"; }
-.icojam_layer_order_1:before {
- content: "\eaa7"; }
+.icojam_alphabet:before {
+ content: "\e7a5"; }
-.icojam_layer_order_2:before {
- content: "\eaa8"; }
+.icojam_army_training:before {
+ content: "\e7a6"; }
-.icojam_megaphone:before {
- content: "\eaa9"; }
+.icojam_badge:before {
+ content: "\e7a7"; }
-.icojam_mirror_horizontal:before {
- content: "\eaaa"; }
+.icojam_book_1:before {
+ content: "\e7a8"; }
-.icojam_mirror_vertical:before {
- content: "\eaab"; }
+.icojam_book_2:before {
+ content: "\e7a9"; }
-.icojam_mixer2:before {
- content: "\eaac"; }
+.icojam_book_3:before {
+ content: "\e7aa"; }
-.icojam_movie_1:before {
- content: "\eaad"; }
+.icojam_books_12:before {
+ content: "\e7ab"; }
-.icojam_movie_2:before {
- content: "\eaae"; }
+.icojam_books_22:before {
+ content: "\e7ac"; }
-.icojam_movie_3:before {
- content: "\eaaf"; }
+.icojam_brush:before {
+ content: "\e7ad"; }
-.icojam_movie_4:before {
- content: "\eab0"; }
+.icojam_calculator2:before {
+ content: "\e7ae"; }
-.icojam_music_1:before {
- content: "\eab1"; }
+.icojam_calendar:before {
+ content: "\e7af"; }
-.icojam_music_2:before {
- content: "\eab2"; }
+.icojam_certificate:before {
+ content: "\e7b0"; }
-.icojam_news_1:before {
- content: "\eab3"; }
+.icojam_chemistry_1:before {
+ content: "\e7b1"; }
-.icojam_news_2:before {
- content: "\eab4"; }
+.icojam_chemistry_2:before {
+ content: "\e7b2"; }
-.icojam_news_3:before {
- content: "\eab5"; }
+.icojam_classboard:before {
+ content: "\e7b3"; }
-.icojam_news_newspaper_1:before {
- content: "\eab6"; }
+.icojam_copybook_1:before {
+ content: "\e7b4"; }
-.icojam_news_newspaper_2:before {
- content: "\eab7"; }
+.icojam_copybook_2:before {
+ content: "\e7b5"; }
-.icojam_options2:before {
- content: "\eab8"; }
+.icojam_copybook_3:before {
+ content: "\e7b6"; }
-.icojam_palette:before {
- content: "\eab9"; }
+.icojam_copybook_4:before {
+ content: "\e7b7"; }
-.icojam_pattern_tool:before {
- content: "\eaba"; }
+.icojam_desk:before {
+ content: "\e7b8"; }
-.icojam_pen2:before {
- content: "\eabb"; }
+.icojam_dna_1:before {
+ content: "\e7b9"; }
-.icojam_pen_felt:before {
- content: "\eabc"; }
+.icojam_dna_2:before {
+ content: "\e7ba"; }
-.icojam_pencil2:before {
- content: "\eabd"; }
+.icojam_drawing:before {
+ content: "\e7bb"; }
-.icojam_phone_1:before {
- content: "\eabe"; }
+.icojam_geography:before {
+ content: "\e7bc"; }
-.icojam_phone_2:before {
- content: "\eabf"; }
+.icojam_geography_earth:before {
+ content: "\e7bd"; }
-.icojam_photo_reel:before {
- content: "\eac0"; }
+.icojam_geography_globe:before {
+ content: "\e7be"; }
-.icojam_picture_portrait:before {
- content: "\eac1"; }
+.icojam_geometry:before {
+ content: "\e7bf"; }
-.icojam_pitchfork:before {
- content: "\eac2"; }
+.icojam_holliday:before {
+ content: "\e7c0"; }
-.icojam_radar_satellite_antenna:before {
- content: "\eac3"; }
+.icojam_home2:before {
+ content: "\e7c1"; }
-.icojam_rocket:before {
- content: "\eac4"; }
+.icojam_language:before {
+ content: "\e7c2"; }
-.icojam_saturn:before {
- content: "\eac5"; }
+.icojam_list_1:before {
+ content: "\e7c3"; }
-.icojam_signal:before {
- content: "\eac6"; }
+.icojam_list_2:before {
+ content: "\e7c4"; }
-.icojam_signal_3:before {
- content: "\eac7"; }
+.icojam_list_3:before {
+ content: "\e7c5"; }
-.icojam_speaker_1:before {
- content: "\eac8"; }
+.icojam_list_4:before {
+ content: "\e7c6"; }
-.icojam_speaker_2:before {
- content: "\eac9"; }
+.icojam_list_5:before {
+ content: "\e7c7"; }
-.icojam_speaker_3:before {
- content: "\eaca"; }
+.icojam_list_6:before {
+ content: "\e7c8"; }
-.icojam_speaker_mute:before {
- content: "\eacb"; }
+.icojam_list_7:before {
+ content: "\e7c9"; }
-.icojam_sputnik:before {
- content: "\eacc"; }
+.icojam_list_8:before {
+ content: "\e7ca"; }
-.icojam_stamp:before {
- content: "\eacd"; }
+.icojam_mark_1:before {
+ content: "\e7cb"; }
-.icojam_terminal2:before {
- content: "\eace"; }
+.icojam_mark_1-:before {
+ content: "\e7cc"; }
-.icojam_terminal_application:before {
- content: "\eacf"; }
+.icojam_mark_12:before {
+ content: "\e7cd"; }
-.icojam_text_align_center:before {
- content: "\ead0"; }
+.icojam_mark_2:before {
+ content: "\e7ce"; }
-.icojam_text_align_left:before {
- content: "\ead1"; }
+.icojam_mark_2-:before {
+ content: "\e7cf"; }
-.icojam_text_align_right:before {
- content: "\ead2"; }
+.icojam_mark_22:before {
+ content: "\e7d0"; }
-.icojam_video_add:before {
- content: "\ead3"; }
+.icojam_mark_3:before {
+ content: "\e7d1"; }
-.icojam_video_delete:before {
- content: "\ead4"; }
+.icojam_mark_3-:before {
+ content: "\e7d2"; }
-.icojam_video_favorite:before {
- content: "\ead5"; }
+.icojam_mark_32:before {
+ content: "\e7d3"; }
-.icojam_video_pause:before {
- content: "\ead6"; }
+.icojam_mark_4:before {
+ content: "\e7d4"; }
-.icojam_video_play:before {
- content: "\ead7"; }
+.icojam_mark_4-:before {
+ content: "\e7d5"; }
-.icojam_video_record:before {
- content: "\ead8"; }
+.icojam_mark_42:before {
+ content: "\e7d6"; }
-.icojam_video_remove:before {
- content: "\ead9"; }
+.icojam_mark_5:before {
+ content: "\e7d7"; }
-.icojam_video_stop:before {
- content: "\eada"; }
+.icojam_mark_5-:before {
+ content: "\e7d8"; }
-.icojam_video_uploaded:before {
- content: "\eadb"; }
+.icojam_mark_52:before {
+ content: "\e7d9"; }
-.icojam_wi-fi_2:before {
- content: "\eadc"; }
+.icojam_mark_a:before {
+ content: "\e7da"; }
-.icojam_wi-fi_3:before {
- content: "\eadd"; }
+.icojam_mark_a-:before {
+ content: "\e7db"; }
-.icojam_wi-fi_4:before {
- content: "\eade"; }
+.icojam_mark_a2:before {
+ content: "\e7dc"; }
-.icojam_wi-fi_5:before {
- content: "\eadf"; }
+.icojam_mark_b:before {
+ content: "\e7dd"; }
-.icojam_zoom_in:before {
- content: "\eae0"; }
+.icojam_mark_b-:before {
+ content: "\e7de"; }
-.icojam_zoom_out:before {
- content: "\eae1"; }
+.icojam_mark_b2:before {
+ content: "\e7df"; }
-.icojam_alert:before {
- content: "\eae2"; }
+.icojam_mark_c:before {
+ content: "\e7e0"; }
-.icojam_baby_boy:before {
- content: "\eae3"; }
+.icojam_mark_c-:before {
+ content: "\e7e1"; }
-.icojam_baby_child:before {
- content: "\eae4"; }
+.icojam_mark_c2:before {
+ content: "\e7e2"; }
-.icojam_baby_girl:before {
- content: "\eae5"; }
+.icojam_mark_d:before {
+ content: "\e7e3"; }
-.icojam_children:before {
- content: "\eae6"; }
+.icojam_mark_d-:before {
+ content: "\e7e4"; }
-.icojam_couple_1:before {
- content: "\eae7"; }
+.icojam_mark_d2:before {
+ content: "\e7e5"; }
-.icojam_couple_2:before {
- content: "\eae8"; }
+.icojam_mark_e:before {
+ content: "\e7e6"; }
-.icojam_disabled:before {
- content: "\eae9"; }
+.icojam_mark_e-:before {
+ content: "\e7e7"; }
-.icojam_escalator:before {
- content: "\eaea"; }
+.icojam_mark_e2:before {
+ content: "\e7e8"; }
-.icojam_exit_1:before {
- content: "\eaeb"; }
+.icojam_mathematics:before {
+ content: "\e7e9"; }
-.icojam_exit_2:before {
- content: "\eaec"; }
+.icojam_music:before {
+ content: "\e7ea"; }
-.icojam_father_daughter_1:before {
- content: "\eaed"; }
+.icojam_notebook:before {
+ content: "\e7eb"; }
-.icojam_father_daughter_2:before {
- content: "\eaee"; }
+.icojam_notepad:before {
+ content: "\e7ec"; }
-.icojam_father_son_1:before {
- content: "\eaef"; }
+.icojam_palette_1:before {
+ content: "\e7ed"; }
-.icojam_father_son_2:before {
- content: "\eaf0"; }
+.icojam_palette_2:before {
+ content: "\e7ee"; }
-.icojam_female:before {
- content: "\eaf1"; }
+.icojam_pen:before {
+ content: "\e7ef"; }
-.icojam_fire_extinguisher:before {
- content: "\eaf2"; }
+.icojam_pencil:before {
+ content: "\e7f0"; }
-.icojam_firehose:before {
- content: "\eaf3"; }
+.icojam_pupil_boy:before {
+ content: "\e7f1"; }
-.icojam_fountain_1:before {
- content: "\eaf4"; }
+.icojam_pupil_girl:before {
+ content: "\e7f2"; }
-.icojam_human:before {
- content: "\eaf5"; }
+.icojam_pupils:before {
+ content: "\e7f3"; }
-.icojam_lift_1:before {
- content: "\eaf6"; }
+.icojam_rating:before {
+ content: "\e7f4"; }
-.icojam_lift_2:before {
- content: "\eaf7"; }
+.icojam_rating_high:before {
+ content: "\e7f5"; }
-.icojam_lift_service:before {
- content: "\eaf8"; }
+.icojam_rating_lowstar:before {
+ content: "\e7f6"; }
-.icojam_male:before {
- content: "\eaf9"; }
+.icojam_ruler:before {
+ content: "\e7f7"; }
-.icojam_mens:before {
- content: "\eafa"; }
+.icojam_school:before {
+ content: "\e7f8"; }
-.icojam_mother_child:before {
- content: "\eafb"; }
+.icojam_school_bus:before {
+ content: "\e7f9"; }
-.icojam_mother_daughter_1:before {
- content: "\eafc"; }
+.icojam_sport_1:before {
+ content: "\e7fa"; }
-.icojam_mother_daughter_2:before {
- content: "\eafd"; }
+.icojam_sport_2:before {
+ content: "\e7fb"; }
-.icojam_mother_son_1:before {
- content: "\eafe"; }
+.icojam_bank_1:before {
+ content: "\e7fc"; }
-.icojam_mother_son_2:before {
- content: "\eaff"; }
+.icojam_bank_2:before {
+ content: "\e7fd"; }
-.icojam_parking_1:before {
- content: "\eb00"; }
+.icojam_bed:before {
+ content: "\e7fe"; }
-.icojam_parking_2:before {
- content: "\eb01"; }
+.icojam_career:before {
+ content: "\e7ff"; }
-.icojam_people_crowd:before {
- content: "\eb02"; }
+.icojam_chair:before {
+ content: "\e800"; }
-.icojam_pharmacy:before {
- content: "\eb03"; }
+.icojam_change:before {
+ content: "\e801"; }
-.icojam_pram:before {
- content: "\eb04"; }
+.icojam_coin_amero:before {
+ content: "\e802"; }
-.icojam_pregnant:before {
- content: "\eb05"; }
+.icojam_coin_dollar:before {
+ content: "\e803"; }
-.icojam_pump_1:before {
- content: "\eb06"; }
+.icojam_coin_euro:before {
+ content: "\e804"; }
-.icojam_pump_2:before {
- content: "\eb07"; }
+.icojam_coin_pound:before {
+ content: "\e805"; }
-.icojam_registration:before {
- content: "\eb08"; }
+.icojam_coin_ruble:before {
+ content: "\e806"; }
-.icojam_run_evacuation:before {
- content: "\eb09"; }
+.icojam_coin_yuan:before {
+ content: "\e807"; }
-.icojam_run_exit_1:before {
- content: "\eb0a"; }
+.icojam_coins:before, .icojam_INCOME_LEVEL:before {
+ content: "\e808"; }
-.icojam_run_exit_2:before {
- content: "\eb0b"; }
+.icojam_crisis:before {
+ content: "\e809"; }
-.icojam_sos:before {
- content: "\eb0c"; }
+.icojam_elevation_1:before {
+ content: "\e80a"; }
-.icojam_trash_1:before {
- content: "\eb0d"; }
+.icojam_elevation_2:before {
+ content: "\e80b"; }
-.icojam_trash_2:before {
- content: "\eb0e"; }
+.icojam_elevation_3:before {
+ content: "\e80c"; }
-.icojam_wc_1:before {
- content: "\eb0f"; }
+.icojam_elevation_4:before {
+ content: "\e80d"; }
-.icojam_wc_2:before {
- content: "\eb10"; }
+.icojam_elevation_5:before {
+ content: "\e80e"; }
-.icojam_wet_floor:before {
- content: "\eb11"; }
+.icojam_elevation_6:before {
+ content: "\e80f"; }
-.icojam_woman:before {
- content: "\eb12"; }
+.icojam_factory_12:before {
+ content: "\e810"; }
-.icojam_womans:before {
- content: "\eb13"; }
+.icojam_factory_22:before {
+ content: "\e811"; }
-.icojam_action_redo_1:before {
- content: "\eb14"; }
+.icojam_hierarchy_1:before {
+ content: "\e812"; }
-.icojam_action_redo_2:before {
- content: "\eb15"; }
+.icojam_hierarchy_2:before {
+ content: "\e813"; }
-.icojam_action_undo_1:before {
- content: "\eb16"; }
+.icojam_income_1:before, .icojam_NY_GNP_ATLS_CD:before, .icojam_NY_GNP_PCAP_CD:before {
+ content: "\e814"; }
-.icojam_action_undo_2:before {
- content: "\eb17"; }
+.icojam_income_2:before {
+ content: "\e815"; }
-.icojam_arrow_down:before {
- content: "\eb18"; }
+.icojam_income_3:before {
+ content: "\e816"; }
-.icojam_arrow_down-left:before {
- content: "\eb19"; }
+.icojam_income_4:before {
+ content: "\e817"; }
-.icojam_arrow_down-right:before {
- content: "\eb1a"; }
+.icojam_loan:before {
+ content: "\e818"; }
-.icojam_arrow_left:before {
- content: "\eb1b"; }
+.icojam_market:before {
+ content: "\e819"; }
-.icojam_arrow_right:before {
- content: "\eb1c"; }
+.icojam_money:before {
+ content: "\e81a"; }
-.icojam_arrow_up:before {
- content: "\eb1d"; }
+.icojam_moneys_1:before {
+ content: "\e81b"; }
-.icojam_arrow_up-left:before {
- content: "\eb1e"; }
+.icojam_moneys_2:before {
+ content: "\e81c"; }
-.icojam_arrow_up-right:before {
- content: "\eb1f"; }
+.icojam_moneys_3:before {
+ content: "\e81d"; }
-.icojam_button_backward_1:before {
- content: "\eb20"; }
+.icojam_object_child:before {
+ content: "\e81e"; }
-.icojam_button_backward_2:before {
- content: "\eb21"; }
+.icojam_object_root:before {
+ content: "\e81f"; }
-.icojam_button_check_1:before {
- content: "\eb22"; }
+.icojam_payment_1:before, .icojam_SI_POV_GINI:before {
+ content: "\e820"; }
-.icojam_button_check_2:before {
- content: "\eb23"; }
+.icojam_payment_2:before {
+ content: "\e821"; }
-.icojam_button_delete_1:before {
- content: "\eb24"; }
+.icojam_payment_3:before {
+ content: "\e822"; }
-.icojam_button_delete_2:before {
- content: "\eb25"; }
+.icojam_payment_4:before {
+ content: "\e823"; }
-.icojam_document_text:before {
- content: "\eb26"; }
+.icojam_piggy_bank:before {
+ content: "\e824"; }
-.icojam_button_foward_2:before {
- content: "\eb27"; }
+.icojam_product_1:before {
+ content: "\e825"; }
-.icojam_button_minus_1:before {
- content: "\eb28"; }
+.icojam_product_2:before {
+ content: "\e826"; }
-.icojam_button_minus_2:before {
- content: "\eb29"; }
+.icojam_purse_1:before {
+ content: "\e827"; }
-button_new_2:before {
- content: "\eb2b"; }
+.icojam_purse_2:before {
+ content: "\e828"; }
-.icojam_button_pause_1:before {
- content: "\eb2c"; }
+.icojam_purse_3:before {
+ content: "\e829"; }
-.icojam_button_pause_2:before {
- content: "\eb2d"; }
+.icojam_purse_4:before {
+ content: "\e82a"; }
-.icojam_button_play_1:before {
- content: "\eb2e"; }
+.icojam_purse_5:before {
+ content: "\e82b"; }
-.icojam_button_play_2:before {
- content: "\eb2f"; }
+.icojam_purse_6:before {
+ content: "\e82c"; }
-.icojam_button_record_1:before {
- content: "\eb30"; }
+.icojam_purse_7:before {
+ content: "\e82d"; }
-.icojam_button_record_2:before {
- content: "\eb31"; }
+.icojam_purse_8:before {
+ content: "\e82e"; }
-.icojam_button_stop_1:before {
- content: "\eb32"; }
+.icojam_recession_1:before {
+ content: "\e82f"; }
-.icojam_button_stop_2:before {
- content: "\eb33"; }
+.icojam_recession_2:before {
+ content: "\e830"; }
-.icojam_move_1:before {
- content: "\eb34"; }
+.icojam_recession_3:before {
+ content: "\e831"; }
-.icojam_move_2:before {
- content: "\eb35"; }
+.icojam_recession_4:before {
+ content: "\e832"; }
-.icojam_play_consistently:before {
- content: "\eb36"; }
+.icojam_recession_5:before {
+ content: "\e833"; }
-.icojam_play_ping_pong:before {
- content: "\eb37"; }
+.icojam_rise_and_fall_1:before {
+ content: "\e834"; }
-.icojam_play_repeat:before {
- content: "\eb38"; }
+.icojam_rise_and_fall_2:before {
+ content: "\e835"; }
-.icojam_play_repeat_all:before {
- content: "\eb39"; }
+.icojam_room:before {
+ content: "\e836"; }
-.icojam_play_shuffle:before {
- content: "\eb3a"; }
+.icojam_safe:before {
+ content: "\e837"; }
-.icojam_refresh_1:before {
- content: "\eb3b"; }
+.icojam_scheme:before {
+ content: "\e838"; }
-.icojam_refresh_2:before {
- content: "\eb3c"; }
+.icojam_sign_amero:before {
+ content: "\e839"; }
-.icojam_rotateccw_1:before {
- content: "\eb3d"; }
+.icojam_sign_dollar:before {
+ content: "\e83a"; }
-.icojam_rotate_1:before {
- content: "\eb3e"; }
+.icojam_sign_euro:before {
+ content: "\e83b"; }
-.icojam_rotate_2:before {
- content: "\eb3f"; }
+.icojam_sign_pound:before {
+ content: "\e83c"; }
-.icojam_rotate_3:before {
- content: "\eb40"; }
+.icojam_sign_ruble:before {
+ content: "\e83d"; }
-.icojam_rotate_4:before {
- content: "\eb41"; }
+.icojam_sign_yuan:before {
+ content: "\e83e"; }
-.icojam_rotate_ccw_2:before {
- content: "\eb42"; }
+.icojam_skyscraper_12:before {
+ content: "\e83f"; }
-.icojam_rotate_cw_1:before {
- content: "\eb43"; }
+.icojam_skyscraper_22:before {
+ content: "\e840"; }
-.icojam_rotate_cw_2:before {
- content: "\eb44"; }
+.icojam_skyscraper_3:before {
+ content: "\e841"; }
-.icojam_swap_horizontal_1:before {
- content: "\eb45"; }
+.icojam_stability_1:before {
+ content: "\e842"; }
-.icojam_swap_vertical_1:before {
- content: "\eb46"; }
+.icojam_stability_2:before {
+ content: "\e843"; }
-.icojam_symbol_backward:before {
- content: "\eb47"; }
+.icojam_strategy:before {
+ content: "\e844"; }
-.icojam_symbol_foward:before {
- content: "\eb48"; }
+.icojam_turning_point_1:before {
+ content: "\e845"; }
-.icojam_symbol_pause_1:before {
- content: "\eb49"; }
+.icojam_turning_point_2:before {
+ content: "\e846"; }
-.icojam_symbol_play_1:before {
- content: "\eb4a"; }
+.icojam_workplace_1:before {
+ content: "\e847"; }
-.icojam_symbol_record_1:before {
- content: "\eb4b"; }
+.icojam_workplace_2:before {
+ content: "\e848"; }
-.icojam_symbol_stop_1:before {
- content: "\eb4c"; }
+.icojam_apple_1:before {
+ content: "\e849"; }
-.icojam_window_close:before {
- content: "\eb4d"; }
+.icojam_apple_2:before {
+ content: "\e84a"; }
-.icojam_window_fullscreen_1:before {
- content: "\eb4e"; }
+.icojam_asparagus:before {
+ content: "\e84b"; }
-.icojam_window_fullscreen_2:before {
- content: "\eb4f"; }
+.icojam_banana:before {
+ content: "\e84c"; }
-.icojam_attention_1:before {
- content: "\eb50"; }
+.icojam_beans:before {
+ content: "\e84d"; }
-.icojam_attention_2:before {
- content: "\eb51"; }
+.icojam_cabbage:before {
+ content: "\e84e"; }
-.icojam_attention_3:before {
- content: "\eb52"; }
+.icojam_carrot:before {
+ content: "\e84f"; }
-.icojam_bomb:before {
- content: "\eb53"; }
+.icojam_cauliflower:before {
+ content: "\e850"; }
-.icojam_bonus:before {
- content: "\eb54"; }
+.icojam_cherry:before {
+ content: "\e851"; }
-.icojam_cancel_1:before {
- content: "\eb55"; }
+.icojam_corn:before {
+ content: "\e852"; }
-.icojam_cancel_2:before {
- content: "\eb56"; }
+.icojam_cucumber:before {
+ content: "\e853"; }
-.icojam_cord_1:before {
- content: "\eb57"; }
+.icojam_eggplant:before {
+ content: "\e854"; }
-.icojam_cord_2:before {
- content: "\eb58"; }
+.icojam_garlic:before {
+ content: "\e855"; }
-.icojam_flash2:before {
- content: "\eb59"; }
+.icojam_grapes:before {
+ content: "\e856"; }
-.icojam_flower_1:before {
- content: "\eb5a"; }
+.icojam_grass:before {
+ content: "\e857"; }
-.icojam_flower_2:before {
- content: "\eb5b"; }
+.icojam_leaves:before {
+ content: "\e858"; }
-.icojam_flower_3:before {
- content: "\eb5c"; }
+.icojam_lemon_1:before {
+ content: "\e859"; }
-.icojam_help_1:before {
- content: "\eb5d"; }
+.icojam_lemon_2:before {
+ content: "\e85a"; }
-.icojam_help_2:before {
- content: "\eb5e"; }
+.icojam_lemon_slice_1:before {
+ content: "\e85b"; }
-.icojam_hierarchy_12:before {
- content: "\eb5f"; }
+.icojam_lemon_slice_2:before {
+ content: "\e85c"; }
-.icojam_hierarchy_22:before {
- content: "\eb60"; }
+.icojam_mandarine:before {
+ content: "\e85d"; }
-.icojam_magnet:before {
- content: "\eb61"; }
-
-.icojam_moon:before {
- content: "\eb62"; }
+.icojam_melon_1:before {
+ content: "\e85e"; }
-.icojam_peace:before {
- content: "\eb63"; }
+.icojam_melon_2:before {
+ content: "\e85f"; }
-.icojam_pie_chart:before {
- content: "\eb64"; }
+.icojam_mushroom_1:before {
+ content: "\e860"; }
-.icojam_radiation:before {
- content: "\eb65"; }
+.icojam_mushroom_2:before {
+ content: "\e861"; }
-.icojam_shape_bonus:before {
- content: "\eb66"; }
+.icojam_nut:before {
+ content: "\e862"; }
-.icojam_shape_circle:before {
- content: "\eb67"; }
+.icojam_olive_1:before {
+ content: "\e863"; }
-.icojam_shape_ellipse:before {
- content: "\eb68"; }
+.icojam_olive_2:before {
+ content: "\e864"; }
-.icojam_shape_heptagon:before {
- content: "\eb69"; }
+.icojam_onion:before {
+ content: "\e865"; }
-.icojam_shape_hexagon:before {
- content: "\eb6a"; }
+.icojam_orange:before {
+ content: "\e866"; }
-.icojam_shape_hexagonal_rounded:before {
- content: "\eb6b"; }
+.icojam_pattinson:before {
+ content: "\e867"; }
-.icojam_shape_hexagonal_star:before {
- content: "\eb6c"; }
+.icojam_peach:before {
+ content: "\e868"; }
-.icojam_shape_octagon:before {
- content: "\eb6d"; }
+.icojam_pear:before {
+ content: "\e869"; }
-.icojam_shape_octagonal_rounded:before {
- content: "\eb6e"; }
+.icojam_peas_1:before {
+ content: "\e86a"; }
-.icojam_shape_octagonal_star:before {
- content: "\eb6f"; }
+.icojam_peas_2:before {
+ content: "\e86b"; }
-.icojam_shape_pentagon:before {
- content: "\eb70"; }
+.icojam_pepper:before {
+ content: "\e86c"; }
-.icojam_shape_rectangle:before {
- content: "\eb71"; }
+.icojam_pepper_chili:before {
+ content: "\e86d"; }
-.icojam_shape_rounded:before {
- content: "\eb72"; }
+.icojam_persimmon:before {
+ content: "\e86e"; }
-.icojam_shape_seven_rounded:before {
- content: "\eb73"; }
+.icojam_pineapple:before {
+ content: "\e86f"; }
-.icojam_shape_seven_star:before {
- content: "\eb74"; }
+.icojam_plum:before {
+ content: "\e870"; }
-.icojam_shape_square:before {
- content: "\eb75"; }
+.icojam_pomegranate_1:before {
+ content: "\e871"; }
-.icojam_shape_star:before {
- content: "\eb76"; }
+.icojam_pomegranate_2:before {
+ content: "\e872"; }
-.icojam_shape_triangle:before {
- content: "\eb77"; }
+.icojam_pomelo:before {
+ content: "\e873"; }
-.icojam_stop_1:before {
- content: "\eb78"; }
+.icojam_potato:before {
+ content: "\e874"; }
-.icojam_stop_2:before {
- content: "\eb79"; }
+.icojam_pumpkin_1:before {
+ content: "\e875"; }
-.icojam_sun2:before {
- content: "\eb7a"; }
+.icojam_pumpkin_2:before {
+ content: "\e876"; }
-.icojam_switcher_1:before {
- content: "\eb7b"; }
+.icojam_radish:before {
+ content: "\e877"; }
-.icojam_switcher_2:before {
- content: "\eb7c"; }
+.icojam_raspberry:before {
+ content: "\e878"; }
-.icojam_air_baloon_1:before {
- content: "\eb7d"; }
+.icojam_salad:before {
+ content: "\e879"; }
-.icojam_air_baloon_2:before {
- content: "\eb7e"; }
+.icojam_strawberry:before {
+ content: "\e87a"; }
-.icojam_air_baloon_3:before {
- content: "\eb7f"; }
+.icojam_tomato_1:before {
+ content: "\e87b"; }
-.icojam_airliner:before {
- content: "\eb80"; }
+.icojam_tomato_2:before {
+ content: "\e87c"; }
-.icojam_ambulance:before {
- content: "\eb81"; }
+.icojam_watermelon_1:before {
+ content: "\e87d"; }
-.icojam_bicycle:before {
- content: "\eb82"; }
+.icojam_watermelon_2:before {
+ content: "\e87e"; }
-.icojam_boat:before {
- content: "\eb83"; }
+.icojam_wheat:before, .icojam_AGRI_LAND_PERC:before {
+ content: "\e87f"; }
-.icojam_bus_1:before {
- content: "\eb84"; }
+.icojam_barbecue:before {
+ content: "\e880"; }
-.icojam_bus_2:before {
- content: "\eb85"; }
+.icojam_bone:before {
+ content: "\e881"; }
-.icojam_bus_london:before {
- content: "\eb86"; }
+.icojam_bread_1:before {
+ content: "\e882"; }
-.icojam_cruise_ship:before {
- content: "\eb87"; }
+.icojam_bread_2:before {
+ content: "\e883"; }
-.icojam_fighter:before {
- content: "\eb88"; }
+.icojam_bread_baguette:before {
+ content: "\e884"; }
-.icojam_gas_tanker:before {
- content: "\eb89"; }
+.icojam_burger_1:before {
+ content: "\e885"; }
-.icojam_helicopter:before {
- content: "\eb8a"; }
+.icojam_burger_2:before {
+ content: "\e886"; }
-.icojam_motocycle:before {
- content: "\eb8b"; }
+.icojam_cake_1:before {
+ content: "\e887"; }
-.icojam_plane2:before {
- content: "\eb8c"; }
+.icojam_cake_2:before {
+ content: "\e888"; }
-.icojam_plane_landing:before {
- content: "\eb8d"; }
+.icojam_cake_wedding:before {
+ content: "\e889"; }
-.icojam_plane_takeoff:before {
- content: "\eb8e"; }
+.icojam_candy_1:before {
+ content: "\e88a"; }
-.icojam_police_1:before {
- content: "\eb8f"; }
+.icojam_candy_2:before {
+ content: "\e88b"; }
-.icojam_police_2:before {
- content: "\eb90"; }
+.icojam_candy_3:before {
+ content: "\e88c"; }
-.icojam_railroad:before {
- content: "\eb91"; }
+.icojam_candy_lolipop:before {
+ content: "\e88d"; }
-.icojam_rocket_1:before {
- content: "\eb92"; }
+.icojam_cheese_1:before {
+ content: "\e88e"; }
-.icojam_rocket_2:before {
- content: "\eb93"; }
+.icojam_cheese_2:before {
+ content: "\e88f"; }
-.icojam_ship_1:before {
- content: "\eb94"; }
+.icojam_chicken:before {
+ content: "\e890"; }
-.icojam_ship_2:before {
- content: "\eb95"; }
+.icojam_chicken_leg:before {
+ content: "\e891"; }
-.icojam_ship_3:before {
- content: "\eb96"; }
+.icojam_chips:before {
+ content: "\e892"; }
-.icojam_shuttle:before {
- content: "\eb97"; }
+.icojam_chocolate_1:before {
+ content: "\e893"; }
-.icojam_sign_bus:before {
- content: "\eb98"; }
+.icojam_chocolate_2:before {
+ content: "\e894"; }
-.icojam_sign_car:before {
- content: "\eb99"; }
+.icojam_cookies:before {
+ content: "\e895"; }
-.icojam_sign_train_1:before {
- content: "\eb9a"; }
+.icojam_croissant:before {
+ content: "\e896"; }
-.icojam_sign_train_2:before {
- content: "\eb9b"; }
+.icojam_donut_1:before {
+ content: "\e897"; }
-.icojam_sign_train_3:before {
- content: "\eb9c"; }
+.icojam_donut_2:before {
+ content: "\e898"; }
-.icojam_sign_tramway:before {
- content: "\eb9d"; }
+.icojam_egg:before {
+ content: "\e899"; }
-.icojam_sign_trolley_bus:before {
- content: "\eb9e"; }
+.icojam_fish:before {
+ content: "\e89a"; }
-.icojam_sign_water_transport:before {
- content: "\eb9f"; }
+.icojam_fishbone:before {
+ content: "\e89b"; }
-.icojam_tank_1:before {
- content: "\eba0"; }
+.icojam_french_fries:before {
+ content: "\e89c"; }
-.icojam_tank_2:before {
- content: "\eba1"; }
+.icojam_grain:before {
+ content: "\e89d"; }
-.icojam_tanker:before {
- content: "\eba2"; }
+.icojam_ham:before {
+ content: "\e89e"; }
-.icojam_taxi:before {
- content: "\eba3"; }
+.icojam_honey:before {
+ content: "\e89f"; }
-.icojam_trailer:before {
- content: "\eba4"; }
+.icojam_hot_dog:before {
+ content: "\e8a0"; }
-.icojam_tramway:before {
- content: "\eba5"; }
+.icojam_ice_cream_1:before {
+ content: "\e8a1"; }
-.icojam_transport:before {
- content: "\eba6"; }
+.icojam_ice_cream_2:before {
+ content: "\e8a2"; }
-.icojam_trolley_bus:before {
- content: "\eba7"; }
+.icojam_omelette:before {
+ content: "\e8a3"; }
-.icojam_truck_1:before {
- content: "\eba8"; }
+.icojam_pasta_1:before {
+ content: "\e8a4"; }
-.icojam_truck_2:before {
- content: "\eba9"; }
+.icojam_pasta_2:before {
+ content: "\e8a5"; }
-.icojam_truck_3:before {
- content: "\ebaa"; }
+.icojam_pasta_3:before {
+ content: "\e8a6"; }
-.icojam_ufo:before {
- content: "\ebab"; }
+.icojam_pizza:before {
+ content: "\e8a7"; }
-.icojam_add_friend:before {
- content: "\ebac"; }
+.icojam_potato_slices:before {
+ content: "\e8a8"; }
-.icojam_best_friends:before {
- content: "\ebad"; }
+.icojam_pretzel:before {
+ content: "\e8a9"; }
-.icojam_couple:before {
- content: "\ebae"; }
+.icojam_rice:before {
+ content: "\e8aa"; }
-.icojam_delete_profile:before {
- content: "\ebaf"; }
+.icojam_roll:before {
+ content: "\e8ab"; }
-.icojam_forefinger_down:before {
- content: "\ebb0"; }
+.icojam_rolls_1:before {
+ content: "\e8ac"; }
-.icojam_forefinger_left:before {
- content: "\ebb1"; }
+.icojam_rolls_2:before {
+ content: "\e8ad"; }
-.icojam_forefinger_right:before {
- content: "\ebb2"; }
+.icojam_rolls_3:before {
+ content: "\e8ae"; }
-.icojam_forefinger_up:before {
- content: "\ebb3"; }
+.icojam_sausage_1:before {
+ content: "\e8af"; }
-.icojam_friends:before {
- content: "\ebb4"; }
+.icojam_sausage_2:before {
+ content: "\e8b0"; }
-.icojam_group:before {
- content: "\ebb5"; }
+.icojam_sausage_3:before {
+ content: "\e8b1"; }
-.icojam_hand_stop_1:before {
- content: "\ebb6"; }
+.icojam_sausage_4:before {
+ content: "\e8b2"; }
-.icojam_hand_stop_2:before {
- content: "\ebb7"; }
+.icojam_sausage_5:before {
+ content: "\e8b3"; }
-.icojam_man:before {
- content: "\ebb8"; }
+.icojam_steak:before {
+ content: "\e8b4"; }
-.icojam_registered_user:before {
- content: "\ebb9"; }
+.icojam_steak_t-bone:before {
+ content: "\e8b5"; }
-.icojam_remove_friend:before {
- content: "\ebba"; }
+.icojam_sushi_1:before {
+ content: "\e8b6"; }
-.icojam_user:before {
- content: "\ebbb"; }
+.icojam_sushi_2:before {
+ content: "\e8b7"; }
-.icojam_vote_no:before {
- content: "\ebbc"; }
+.icojam_truffle:before {
+ content: "\e8b8"; }
-.icojam_vote_yes:before {
- content: "\ebbd"; }
+.icojam_wafer_1:before {
+ content: "\e8b9"; }
-.icojam_woman2:before {
- content: "\ebbe"; }
+.icojam_wafer_2:before {
+ content: "\e8ba"; }
-.icojam_cloud2:before {
- content: "\ebbf"; }
+.icojam_wafer_3:before {
+ content: "\e8bb"; }
-.icojam_cold:before {
- content: "\ebc0"; }
+.icojam_waffle_horn:before {
+ content: "\e8bc"; }
-.icojam_day_cloudy:before {
- content: "\ebc1"; }
+.icojam_beer:before {
+ content: "\e8bd"; }
-.icojam_day_lot_clouds:before {
- content: "\ebc2"; }
+.icojam_bottle_1:before {
+ content: "\e8be"; }
-.icojam_day_partly_cloudy:before {
- content: "\ebc3"; }
+.icojam_bottle_2:before {
+ content: "\e8bf"; }
-.icojam_day_rain:before {
- content: "\ebc4"; }
+.icojam_bottle_3:before {
+ content: "\e8c0"; }
-.icojam_day_sunny:before {
- content: "\ebc5"; }
+.icojam_bottle_plastic:before {
+ content: "\e8c1"; }
-.icojam_flood:before {
- content: "\ebc6"; }
+.icojam_champagne:before {
+ content: "\e8c2"; }
-.icojam_fog:before {
- content: "\ebc7"; }
+.icojam_citrus:before {
+ content: "\e8c3"; }
-.icojam_hail:before {
- content: "\ebc8"; }
+.icojam_coffee_bean:before {
+ content: "\e8c4"; }
-.icojam_hail_heavy:before {
- content: "\ebc9"; }
+.icojam_cola_1:before {
+ content: "\e8c5"; }
-.icojam_hail_light:before {
- content: "\ebca"; }
+.icojam_cola_2:before {
+ content: "\e8c6"; }
-.icojam_lightning:before {
- content: "\ebcb"; }
+.icojam_condensed_milk:before {
+ content: "\e8c7"; }
-.icojam_night_cloudy:before {
- content: "\ebcc"; }
+.icojam_cucumbers:before {
+ content: "\e8c8"; }
-.icojam_night_lot_clouds:before {
- content: "\ebcd"; }
+.icojam_cup_1:before {
+ content: "\e8c9"; }
-.icojam_night_moon:before {
- content: "\ebce"; }
+.icojam_cup_2:before {
+ content: "\e8ca"; }
-.icojam_night_partly_cloudy:before {
- content: "\ebcf"; }
+.icojam_cup_3:before {
+ content: "\e8cb"; }
-.icojam_night_rain:before {
- content: "\ebd0"; }
+.icojam_cup_hot:before {
+ content: "\e8cc"; }
-.icojam_rain:before {
- content: "\ebd1"; }
+.icojam_fork_1:before {
+ content: "\e8cd"; }
-.icojam_rain_heavy:before {
- content: "\ebd2"; }
+.icojam_fork_2:before {
+ content: "\e8ce"; }
-.icojam_rain_light:before {
- content: "\ebd3"; }
+.icojam_glass2:before {
+ content: "\e8cf"; }
-.icojam_rain_lightning:before {
- content: "\ebd4"; }
+.icojam_glass_water:before {
+ content: "\e8d0"; }
-.icojam_snow:before {
- content: "\ebd5"; }
+.icojam_goblet_1:before {
+ content: "\e8d1"; }
-.icojam_snow_heavy:before {
- content: "\ebd6"; }
+.icojam_goblet_2:before {
+ content: "\e8d2"; }
-.icojam_snow_light:before {
- content: "\ebd7"; }
+.icojam_goblet_3:before {
+ content: "\e8d3"; }
-.icojam_snow_rain:before {
- content: "\ebd8"; }
+.icojam_goblet_4:before {
+ content: "\e8d4"; }
-.icojam_thermometer2:before {
- content: "\ebd9"; }
+.icojam_goblet_5:before {
+ content: "\e8d5"; }
-.icojam_thunder:before {
- content: "\ebda"; }
+.icojam_goblet_6:before {
+ content: "\e8d6"; }
-.icojam_tornado:before {
- content: "\ebdb"; }
+.icojam_goblet_7:before {
+ content: "\e8d7"; }
-.icojam_umbrella2:before {
- content: "\ebdc"; }
+.icojam_goblet_wineglass:before {
+ content: "\e8d8"; }
-.icojam_water2:before {
- content: "\ebdd"; }
+.icojam_jam_1:before {
+ content: "\e8d9"; }
-.icojam_wet:before {
- content: "\ebde"; }
+.icojam_jam_2:before {
+ content: "\e8da"; }
-.icojam_attach_1:before {
- content: "\ebdf"; }
+.icojam_milk:before {
+ content: "\e8db"; }
-.icojam_attach_2:before {
- content: "\ebe0"; }
+.icojam_mushrooms:before {
+ content: "\e8dc"; }
-.icojam_bag_1:before {
- content: "\ebe1"; }
+.icojam_package:before {
+ content: "\e8dd"; }
-.icojam_bag_2:before {
- content: "\ebe2"; }
+.icojam_pan_1:before {
+ content: "\e8de"; }
-.icojam_bag_3:before {
- content: "\ebe3"; }
+.icojam_pan_2:before {
+ content: "\e8df"; }
-.icojam_bag_4:before {
- content: "\ebe4"; }
+.icojam_pan_3:before {
+ content: "\e8e0"; }
-.icojam_bag_5:before {
- content: "\ebe5"; }
+.icojam_pan_4:before {
+ content: "\e8e1"; }
-.icojam_calendar_1:before {
- content: "\ebe6"; }
+.icojam_pepper2:before {
+ content: "\e8e2"; }
-.icojam_calendar_2:before {
- content: "\ebe7"; }
+.icojam_plate_1:before {
+ content: "\e8e3"; }
-.icojam_calendar_3:before {
- content: "\ebe8"; }
+.icojam_plate_2:before {
+ content: "\e8e4"; }
-.icojam_calendar_4:before {
- content: "\ebe9"; }
+.icojam_preserves_1:before {
+ content: "\e8e5"; }
-.icojam_calendar_5:before {
- content: "\ebea"; }
+.icojam_preserves_2:before {
+ content: "\e8e6"; }
-.icojam_calendar_6:before {
- content: "\ebeb"; }
+.icojam_preserves_3:before {
+ content: "\e8e7"; }
-.icojam_clipboard_1:before {
- content: "\ebec"; }
+.icojam_salt:before {
+ content: "\e8e8"; }
-.icojam_clipboard_2:before {
- content: "\ebed"; }
+.icojam_take-out_coffee:before {
+ content: "\e8e9"; }
-.icojam_clipboard_3:before {
- content: "\ebee"; }
+.icojam_tea:before {
+ content: "\e8ea"; }
-.icojam_copy:before {
- content: "\ebef"; }
+.icojam_tea_bag_1:before {
+ content: "\e8eb"; }
-.icojam_count_delete:before {
- content: "\ebf0"; }
+.icojam_tea_bag_2:before {
+ content: "\e8ec"; }
-.icojam_count_finish:before {
- content: "\ebf1"; }
+.icojam_teapot:before {
+ content: "\e8ed"; }
-.icojam_count_new:before {
- content: "\ebf2"; }
+.icojam_wine_1:before {
+ content: "\e8ee"; }
-.icojam_count_pause:before {
- content: "\ebf3"; }
+.icojam_wine_2:before {
+ content: "\e8ef"; }
-.icojam_count_play:before {
- content: "\ebf4"; }
+.icojam_armchair:before {
+ content: "\e8f0"; }
-.icojam_count_remove:before {
- content: "\ebf5"; }
+.icojam_baby_cot:before {
+ content: "\e8f1"; }
-.icojam_count_stop:before {
- content: "\ebf6"; }
+.icojam_bath:before {
+ content: "\e8f2"; }
-.icojam_cursor:before {
- content: "\ebf7"; }
+.icojam_bed2:before {
+ content: "\e8f3"; }
-.icojam_cut:before {
- content: "\ebf8"; }
+.icojam_bench:before {
+ content: "\e8f4"; }
-.icojam_document_1:before {
- content: "\ebf9"; }
+.icojam_bench_1:before {
+ content: "\e8f5"; }
-.icojam_document_2:before {
- content: "\ebfa"; }
+.icojam_bidet:before {
+ content: "\e8f6"; }
-.icojam_document_check:before {
- content: "\ebfb"; }
+.icojam_blanket:before {
+ content: "\e8f7"; }
-.icojam_document_delete:before {
- content: "\ebfc"; }
+.icojam_bookshelf:before {
+ content: "\e8f8"; }
-.icojam_document_favorite:before {
- content: "\ebfd"; }
+.icojam_box_locker:before {
+ content: "\e8f9"; }
-.icojam_document_new:before {
- content: "\ebfe"; }
+.icojam_box_open:before {
+ content: "\e8fa"; }
-.icojam_document_remove:before {
- content: "\ebff"; }
+.icojam_cabinet:before {
+ content: "\e8fb"; }
-.icojam_document_search:before {
- content: "\ec00"; }
+.icojam_carpet:before {
+ content: "\e8fc"; }
-.icojam_document_text2:before {
- content: "\ec01"; }
+.icojam_chair_1:before {
+ content: "\e8fd"; }
-.icojam_enter:before {
- content: "\ec02"; }
+.icojam_chair_2:before {
+ content: "\e8fe"; }
-.icojam_erase:before {
- content: "\ec03"; }
+.icojam_chair_3:before {
+ content: "\e8ff"; }
-.icojam_eraser:before {
- content: "\ec04"; }
+.icojam_chair_director_folding:before {
+ content: "\e900"; }
-.icojam_exit:before {
- content: "\ec05"; }
+.icojam_chair_office:before {
+ content: "\e901"; }
-.icojam_factory:before {
- content: "\ec06"; }
+.icojam_chair_rocking:before {
+ content: "\e902"; }
-.icojam_folder:before {
- content: "\ec07"; }
+.icojam_chair_round:before {
+ content: "\e903"; }
-.icojam_folder_1:before {
- content: "\ec08"; }
+.icojam_chandelier:before {
+ content: "\e904"; }
-.icojam_folder_1_open:before {
- content: "\ec09"; }
+.icojam_changing_table:before {
+ content: "\e905"; }
-.icojam_folder_2:before {
- content: "\ec0a"; }
+.icojam_chest_of_drawers:before {
+ content: "\e906"; }
-.icojam_folder_2_open:before {
- content: "\ec0b"; }
+.icojam_chest_of_drawers_2:before {
+ content: "\e907"; }
-.icojam_folder_check:before {
- content: "\ec0c"; }
+.icojam_cot:before {
+ content: "\e908"; }
-.icojam_folder_delete:before {
- content: "\ec0d"; }
+.icojam_curtains:before {
+ content: "\e909"; }
-.icojam_folder_favorite:before {
- content: "\ec0e"; }
+.icojam_cushion:before {
+ content: "\e90a"; }
-.icojam_folder_new:before {
- content: "\ec0f"; }
+.icojam_door:before {
+ content: "\e90b"; }
-.icojam_folder_remove:before {
- content: "\ec10"; }
+.icojam_doublebed:before {
+ content: "\e90c"; }
-.icojam_folder_search:before {
- content: "\ec11"; }
+.icojam_floor_lamp_1:before {
+ content: "\e90d"; }
-.icojam_join_1:before {
- content: "\ec12"; }
+.icojam_floor_lamp_2:before {
+ content: "\e90e"; }
-.icojam_join_2:before {
- content: "\ec13"; }
+.icojam_floor_lamp_3:before {
+ content: "\e90f"; }
-.icojam_mail:before {
- content: "\ec14"; }
+.icojam_hanger:before {
+ content: "\e910"; }
-.icojam_paste:before {
- content: "\ec15"; }
+.icojam_hanger_1:before {
+ content: "\e911"; }
-.icojam_pen3:before {
- content: "\ec16"; }
+.icojam_heated_towel_rail:before {
+ content: "\e912"; }
-.icojam_pencil3:before {
- content: "\ec17"; }
+.icojam_hook:before {
+ content: "\e913"; }
-.icojam_pencil_write:before {
- content: "\ec18"; }
+.icojam_hooks:before {
+ content: "\e914"; }
-.icojam_portfolio:before {
- content: "\ec19"; }
+.icojam_linen:before {
+ content: "\e915"; }
-.icojam_profile_1:before {
- content: "\ec1a"; }
+.icojam_mirror:before {
+ content: "\e916"; }
-.icojam_profile_2:before {
- content: "\ec1b"; }
+.icojam_pan:before {
+ content: "\e917"; }
-.icojam_time:before {
- content: "\ec1c"; }
+.icojam_picture2:before {
+ content: "\e918"; }
-.icojam_time_favorite:before {
- content: "\ec1d"; }
+.icojam_pier-glass:before {
+ content: "\e919"; }
-/* Roboto */
-/* Roboto Import */
-/* Roboto Regular */
-@font-face {
- font-family: 'Roboto';
- src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_regular/Roboto-Regular-webfont.eot");
- src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_regular/Roboto-Regular-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_regular/Roboto-Regular-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_regular/Roboto-Regular-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_regular/Roboto-Regular-webfont.svg#RobotoRegular") format("svg");
- font-weight: 400;
- font-style: normal; }
-@font-face {
- font-family: 'Roboto';
- src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_bold/Roboto-Bold-webfont.eot");
- src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_bold/Roboto-Bold-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_bold/Roboto-Bold-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_bold/Roboto-Bold-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_bold/Roboto-Bold-webfont.svg#RobotoBold") format("svg");
- font-weight: 700;
- font-style: normal; }
-@font-face {
- font-family: 'Roboto';
- src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_thin/Roboto-Thin-webfont.eot");
- src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_thin/Roboto-Thin-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_thin/Roboto-Thin-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_thin/Roboto-Thin-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_thin/Roboto-Thin-webfont.svg#RobotoThin") format("svg");
- font-weight: 100;
- font-style: normal; }
-@font-face {
- font-family: 'Roboto';
- src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_light/Roboto-Light-webfont.eot");
- src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_light/Roboto-Light-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_light/Roboto-Light-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_light/Roboto-Light-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_light/Roboto-Light-webfont.svg#RobotoLight") format("svg");
- font-weight: 300;
- font-style: normal; }
-@font-face {
- font-family: 'Roboto';
- src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_medium/Roboto-Medium-webfont.eot");
- src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_medium/Roboto-Medium-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_medium/Roboto-Medium-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_medium/Roboto-Medium-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_medium/Roboto-Medium-webfont.svg#RobotoMedium") format("svg");
- font-weight: 500;
- font-style: normal; }
-@font-face {
- font-family: 'Roboto';
- src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_black/Roboto-Black-webfont.eot");
- src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_black/Roboto-Black-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_black/Roboto-Black-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_black/Roboto-Black-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_black/Roboto-Black-webfont.svg#RobotoBold") format("svg");
- font-weight: 900;
- font-style: normal; }
-/* Roboto Condensed */
-@font-face {
- font-family: 'Roboto Condensed';
- src: url("http://fenixapps.fao.org/repository/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_condensed/RobotoCondensed-Regular-webfont.eot");
- src: url("http://fenixapps.fao.org/repository/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_condensed/RobotoCondensed-Regular-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_condensed/RobotoCondensed-Regular-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_condensed/RobotoCondensed-Regular-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_condensed/RobotoCondensed-Regular-webfont.svg#RobotoRegular") format("svg");
- font-weight: 400;
- font-style: normal; }
-@font-face {
- font-family: 'Roboto Condensed';
- src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_lightcondensed/RobotoCondensed-Light-webfont.eot");
- src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_lightcondensed/RobotoCondensed-Light-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_lightcondensed/RobotoCondensed-Light-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_lightcondensed/RobotoCondensed-Light-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_lightcondensed/RobotoCondensed-Light-webfont.svg#RobotoRegular") format("svg");
- font-weight: 300;
- font-style: normal; }
-@font-face {
- font-family: 'Roboto Condensed';
- src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_boldcondensed/RobotoCondensed-Bold-webfont.eot");
- src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_boldcondensed/RobotoCondensed-Bold-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_boldcondensed/RobotoCondensed-Bold-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_boldcondensed/RobotoCondensed-Bold-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_boldcondensed/RobotoCondensed-Bold-webfont.svg#RobotoRegular") format("svg");
- font-weight: 700;
- font-style: normal; }
-/* Font Awesome */
-/*!
- * Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome
- * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
- */
-/* It is a CDN - Read the readme file in sources directory */
-/* It is a CDN - Read the readme file in sources directory */
-/* FONT PATH
- * -------------------------- */
-@font-face {
- font-family: 'FontAwesome';
- src: url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.eot?v=4.2.0");
- src: url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.eot?#iefix&v=4.2.0") format("embedded-opentype"), url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.woff?v=4.2.0") format("woff"), url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.ttf?v=4.2.0") format("truetype"), url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular") format("svg");
- font-weight: normal;
- font-style: normal; }
-.fa {
- display: inline-block;
- font: normal normal normal 14px/1 FontAwesome;
- font-size: inherit;
- text-rendering: auto;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale; }
+.icojam_rack:before {
+ content: "\e91a"; }
-/* makes the font 33% larger relative to the icon container */
-.fa-lg {
- font-size: 1.33333em;
- line-height: 0.75em;
- vertical-align: -15%; }
+.icojam_racks:before {
+ content: "\e91b"; }
-.fa-2x {
- font-size: 2em; }
+.icojam_radiator2:before {
+ content: "\e91c"; }
-.fa-3x {
- font-size: 3em; }
+.icojam_reading-lamp:before {
+ content: "\e91d"; }
-.fa-4x {
- font-size: 4em; }
+.icojam_shelf:before {
+ content: "\e91e"; }
-.fa-5x {
- font-size: 5em; }
+.icojam_shelf_2:before {
+ content: "\e91f"; }
-.fa-fw {
- width: 1.28571em;
- text-align: center; }
+.icojam_shelfs:before {
+ content: "\e920"; }
-.fa-ul {
- padding-left: 0;
- margin-left: 2.14286em;
- list-style-type: none; }
- .fa-ul > li {
- position: relative; }
+.icojam_shelfs_2:before {
+ content: "\e921"; }
-.fa-li {
- position: absolute;
- left: -2.14286em;
- width: 2.14286em;
- top: 0.14286em;
- text-align: center; }
- .fa-li.fa-lg {
- left: -1.85714em; }
+.icojam_singlebed:before {
+ content: "\e922"; }
-.fa-border {
- padding: .2em .25em .15em;
- border: solid 0.08em #eee;
- border-radius: .1em; }
+.icojam_sink_bathroom:before {
+ content: "\e923"; }
-.pull-right {
- float: right; }
+.icojam_sink_kitchen:before {
+ content: "\e924"; }
-.pull-left {
- float: left; }
+.icojam_sofa:before {
+ content: "\e925"; }
-.fa.pull-left {
- margin-right: .3em; }
-.fa.pull-right {
- margin-left: .3em; }
+.icojam_sofa_1:before {
+ content: "\e926"; }
-.fa-spin {
- -webkit-animation: fa-spin 2s infinite linear;
- animation: fa-spin 2s infinite linear; }
+.icojam_sofa_2:before {
+ content: "\e927"; }
-@-webkit-keyframes fa-spin {
- 0% {
- -webkit-transform: rotate(0deg);
- transform: rotate(0deg); }
- 100% {
- -webkit-transform: rotate(359deg);
- transform: rotate(359deg); } }
-@keyframes fa-spin {
- 0% {
- -webkit-transform: rotate(0deg);
- transform: rotate(0deg); }
- 100% {
- -webkit-transform: rotate(359deg);
- transform: rotate(359deg); } }
-.fa-rotate-90 {
- filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
- -webkit-transform: rotate(90deg);
- -ms-transform: rotate(90deg);
- transform: rotate(90deg); }
+.icojam_stand:before {
+ content: "\e928"; }
-.fa-rotate-180 {
- filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
- -webkit-transform: rotate(180deg);
- -ms-transform: rotate(180deg);
- transform: rotate(180deg); }
+.icojam_stand_2:before {
+ content: "\e929"; }
-.fa-rotate-270 {
- filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
- -webkit-transform: rotate(270deg);
- -ms-transform: rotate(270deg);
- transform: rotate(270deg); }
+.icojam_stand_3:before {
+ content: "\e92a"; }
-.fa-flip-horizontal {
- filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0);
- -webkit-transform: scale(-1, 1);
- -ms-transform: scale(-1, 1);
- transform: scale(-1, 1); }
+.icojam_stand_4:before {
+ content: "\e92b"; }
-.fa-flip-vertical {
- filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
- -webkit-transform: scale(1, -1);
- -ms-transform: scale(1, -1);
- transform: scale(1, -1); }
+.icojam_table_1:before {
+ content: "\e92c"; }
-:root .fa-rotate-90,
-:root .fa-rotate-180,
-:root .fa-rotate-270,
-:root .fa-flip-horizontal,
-:root .fa-flip-vertical {
- filter: none; }
+.icojam_table_2:before {
+ content: "\e92d"; }
-.fa-stack {
- position: relative;
- display: inline-block;
- width: 2em;
- height: 2em;
- line-height: 2em;
- vertical-align: middle; }
+.icojam_table_3:before {
+ content: "\e92e"; }
-.fa-stack-1x, .fa-stack-2x {
- position: absolute;
- left: 0;
- width: 100%;
- text-align: center; }
+.icojam_table_4:before {
+ content: "\e92f"; }
-.fa-stack-1x {
- line-height: inherit; }
+.icojam_table_round:before {
+ content: "\e930"; }
-.fa-stack-2x {
- font-size: 2em; }
+.icojam_table-lamp:before {
+ content: "\e931"; }
-.fa-inverse {
- color: #fff; }
+.icojam_toilet_paper:before {
+ content: "\e932"; }
-/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
- readers do not read off random characters that represent icons */
-.fa-search:before {
- content: ""; }
+.icojam_towel:before {
+ content: "\e933"; }
-.fa-th:before {
- content: ""; }
+.icojam_wardrobe:before {
+ content: "\e934"; }
-.fa-th-list:before {
- content: ""; }
+.icojam_wardrobe_1:before {
+ content: "\e935"; }
-.fa-home:before {
- content: ""; }
+.icojam_wardrobe_2:before {
+ content: "\e936"; }
-.fa-clock-o:before {
- content: ""; }
+.icojam_window:before {
+ content: "\e937"; }
-.fa-refresh:before {
- content: ""; }
+.icojam_bag_bagful:before {
+ content: "\e938"; }
-.fa-lock:before {
- content: ""; }
+.icojam_balloon:before {
+ content: "\e939"; }
-.fa-barcode:before {
- content: ""; }
+.icojam_balloons:before {
+ content: "\e93a"; }
-.fa-map-marker:before {
- content: ""; }
+.icojam_bell:before {
+ content: "\e93b"; }
-.fa-calendar:before {
- content: ""; }
+.icojam_bouquet_flowers:before {
+ content: "\e93c"; }
-.fa-twitter-square:before {
- content: ""; }
+.icojam_bow_knot:before {
+ content: "\e93d"; }
-.fa-facebook-square:before {
- content: ""; }
+.icojam_bracelet:before {
+ content: "\e93e"; }
-.fa-globe:before {
- content: ""; }
+.icojam_candle:before {
+ content: "\e93f"; }
-.fa-wrench:before {
- content: ""; }
+.icojam_christmas_newyear_tree:before {
+ content: "\e940"; }
-.fa-google-plus-square:before {
- content: ""; }
+.icojam_christmas_tree_decoration:before {
+ content: "\e941"; }
-.fa-google-plus:before {
- content: ""; }
+.icojam_christmas_tree_decoration_lashlight:before {
+ content: "\e942"; }
-.fa-caret-down:before {
- content: ""; }
+.icojam_cookie_man:before {
+ content: "\e943"; }
-.fa-caret-up:before {
- content: ""; }
+.icojam_crown_king_top:before {
+ content: "\e944"; }
-.fa-caret-left:before {
- content: ""; }
+.icojam_diamond:before {
+ content: "\e945"; }
-.fa-caret-right:before {
- content: ""; }
+.icojam_diamond_brilliant:before {
+ content: "\e946"; }
-.fa-rss-square:before {
- content: ""; }
+.icojam_easter_egg:before {
+ content: "\e947"; }
-.fa-slack:before {
- content: ""; }
+.icojam_fireworks:before {
+ content: "\e948"; }
-.fa-database:before {
- content: ""; }
+.icojam_flag_victory:before {
+ content: "\e949"; }
-/* Fenix Typography */
-body {
- color: #666666;
- font: normal normal 300 12px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
+.icojam_flag_victory_2:before {
+ content: "\e94a"; }
-a {
- color: #0f6eae; }
- a:focus {
- outline: none; }
- a:active {
- outline: none; }
+.icojam_flower:before {
+ content: "\e94b"; }
-.dropdown-menu > li > a {
- font-weight: 300;
- color: #666666; }
+.icojam_flower_pot:before {
+ content: "\e94c"; }
-h1 {
- font: normal normal 300 18px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
- color: #0f6eae; }
+.icojam_flowers:before {
+ content: "\e94d"; }
-h2 {
- font: normal normal 300 14px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
- color: #2b6892; }
+.icojam_four-leaved_shamrock_lucky:before {
+ content: "\e94e"; }
-h3 {
- font: normal normal 500 12px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
- color: #3e657f; }
+.icojam_garland_lamp:before {
+ content: "\e94f"; }
-h4 {
- font: normal normal 300 11px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
- color: #51616c; }
+.icojam_grandfather_frost:before {
+ content: "\e950"; }
-h1 small, h2 small, h3 small, h4 small, h5 small, h6 small, .h1 small, .h2 small, .h3 small, .h4 small, .h5 small, .h6 small, h1 .small, h2 .small, h3 .small, h4 .small, h5 .small, h6 .small, .h1 .small, .h2 .small, .h3 .small, .h4 .small, .h5 .small, .h6 .small {
- font-family: Roboto;
- font-weight: 700;
- color: #0f6eae;
- text-transform: uppercase;
- font-size: 12px; }
+.icojam_happy_sunny:before {
+ content: "\e951"; }
-.truncate {
- white-space: nowrap;
- overflow: hidden;
- text-overflow: ellipsis; }
+.icojam_horseshoe:before {
+ content: "\e952"; }
-/* Fenix - Reset */
-/* Components */
-/* Fenix - Components Index */
-/* Fenix - Buttons Component */
-/** avoid dotted lines when clicking on button**/
-input[type="button"] {
- outline: none; }
+.icojam_mitten:before {
+ content: "\e953"; }
-button:focus {
- outline: 0;
- outline: none; }
+.icojam_necklace:before {
+ content: "\e954"; }
-button:active {
- outline: 0;
- outline: none; }
+.icojam_package2:before {
+ content: "\e955"; }
-.btn:focus, .btn:active, .btn:active:focus {
- outline: none; }
+.icojam_pearl:before {
+ content: "\e956"; }
-input[type="button"]::-moz-focus-inner {
- border: 0; }
+.icojam_petard:before {
+ content: "\e957"; }
-.btn {
- background-color: #0f6eae;
- color: white;
- border-color: transparent;
- font: normal normal 300 12px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
- .btn:hover {
- background-color: transparent;
- color: #0f6eae;
- border-color: #0f6eae; }
- .btn:active {
- background-color: transparent;
- color: #0f6eae;
- border-color: #0f6eae;
- -webkit-box-shadow: 0 0 0 white;
- -moz-box-shadow: 0 0 0 white;
- box-shadow: 0 0 0 white; }
+.icojam_poinsettia_christmas_star:before {
+ content: "\e958"; }
-.fx-button-reset {
- background-color: transparent;
- color: #666666;
- border-color: transparent;
- font: normal normal 300 12px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
- .fx-button-reset:hover {
- background-color: transparent;
- color: #666666;
- border-color: transparent; }
- .fx-button-reset:active {
- background-color: transparent;
- color: #666666;
- border-color: transparent;
- -webkit-box-shadow: 0 0 0 white;
- -moz-box-shadow: 0 0 0 white;
- box-shadow: 0 0 0 white; }
-
-.btn-primary.disabled
-, .btn-primary[disabled]
-, fieldset[disabled] .btn-primary
-, .btn-primary.disabled:hover
-, .btn-primary[disabled]:hover
-, fieldset[disabled] .btn-primary:hover
-, .btn-primary.disabled:focus
-, .btn-primary[disabled]:focus
-, fieldset[disabled] .btn-primary:focus
-, .btn-primary.disabled:active
-, .btn-primary[disabled]:active
-, fieldset[disabled] .btn-primary:active
-, .btn-primary.disabled.active
-, .btn-primary[disabled].active
-, fieldset[disabled] .btn-primary.active {
- background-color: #3e657f;
- border-color: #3e657f; }
+.icojam_present:before {
+ content: "\e959"; }
-/* Fenix UI Catalog */
-.fx-catalog-welcome {
- text-align: center;
- max-width: 300px;
- position: absolute;
- left: 50%;
- top: 50%;
- -ms-transform: translate(-50%, -50%);
- -webkit-transform: translate(-50%, -50%);
- transform: translate(-50%, -50%); }
- .fx-catalog-welcome .catalog-ico {
- height: 50px;
- width: 50px; }
- .fx-catalog-welcome h1 {
- margin-top: 10px; }
+.icojam_present_gift:before {
+ content: "\e95a"; }
-/* Packery */
-.fx-catalog-form-module {
- width: 50%;
- border: 10px solid #f1f1f1; }
+.icojam_ring:before {
+ content: "\e95b"; }
-.fx-catalog-form-module.fit {
- width: 100%; }
+.icojam_ring_finger:before {
+ content: "\e95c"; }
-.fx_result_description_title {
- text-transform: uppercase;
- display: inline; }
+.icojam_saint_patrick_hat:before {
+ content: "\e95d"; }
-.fx_result_description_source {
- display: inline;
- color: #999999; }
+.icojam_salute_fireworks:before {
+ content: "\e95e"; }
-.fx_result_description_source:before {
- content: "-"; }
+.icojam_salute_fireworks_2:before {
+ content: "\e95f"; }
-.fx_result_description_baseperiod {
- font-style: italic;
- font-size: 10px; }
+.icojam_salute_fireworks_3:before {
+ content: "\e960"; }
-.fenix-result {
- width: 100%;
- background-color: white;
- border: 1px solid #D2D0D0;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- border-radius: 0;
- margin-bottom: 20px;
- min-height: 100px;
- padding: 19px 0 16px 19px; }
+.icojam_salute_fireworks_4:before {
+ content: "\e961"; }
-/*========= HEADER =========*/
-.fx-catalog-header {
- text-align: center;
- background-color: #f1f1f1; }
- .fx-catalog-header em {
- font: normal normal 400 10px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
+.icojam_santa_claus:before {
+ content: "\e962"; }
-.fx-catalog-header-btn {
- cursor: pointer; }
+.icojam_santa_claus_hat:before {
+ content: "\e963"; }
-/*========= FILTER CONTAINER =========*/
-.fx-catalog-modular-filter-container {
- background-color: #f1f1f1;
- min-height: 250px;
- overflow: hidden; }
+.icojam_santa_claus_head:before {
+ content: "\e964"; }
-/*========= MODULAR MENU =========*/
-.fx-catalog-modular-menu-container {
- background-color: #f1f1f1;
- padding: 0;
- min-height: 250px; }
+.icojam_shopping:before {
+ content: "\e965"; }
-.fx-catalog-modular-menu-category-plus {
- position: absolute;
- top: 0;
- height: 15px;
- width: 15px;
- background: url("../../submodules/fenix-ui-common/css/img/fenix-catalog-sprite-small.svg") no-repeat -90px 0;
- background-size: 150px 30px; }
+.icojam_sledge:before {
+ content: "\e966"; }
-.fx-catalog-mod-timerseries {
- top: 25px; }
+.icojam_snowman:before {
+ content: "\e967"; }
-.region-css {
- height: 100%;
- position: relative; }
+.icojam_sock_boots:before {
+ content: "\e968"; }
-.jstree-holder {
- height: 209px;
- overflow-y: auto; }
+.icojam_teddy_bear:before {
+ content: "\e969"; }
-/*========= RESULTS */
-/*========= COMMONS =========*/
-.fx_horegon {
- display: inline; }
+.icojam_treasures_money_gold_boiler:before {
+ content: "\e96a"; }
-.fx_result_icon_img {
- width: 42px; }
+.icojam_turkey_chicken:before {
+ content: "\e96b"; }
-#fx-catalog-results {
- margin-top: 20px; }
+.icojam_wedding_jewel:before {
+ content: "\e96c"; }
-.fx-analysis-page-title {
- font-weight: 100;
- color: #666666; }
+.icojam_add-on:before {
+ content: "\e96d"; }
-.fx-analysis-page-description {
- color: #666666; }
+.icojam_advertise_1:before {
+ content: "\e96e"; }
-.well {
- background-color: transparent;
- border: none;
- -webkit-box-shadow: 0 0 0 white;
- -moz-box-shadow: 0 0 0 white;
- box-shadow: 0 0 0 white; }
+.icojam_advertise_2:before {
+ content: "\e96f"; }
-.fx-catalog-toolbar {
- color: #666666; }
- .fx-catalog-toolbar .fx-widget-stack-btns {
- text-align: right; }
- .fx-catalog-toolbar .fx-widget-stack-btns em {
- font-style: normal;
- background-color: #666666;
- width: 30px;
- height: 20px;
- display: inline-block;
- color: white;
- text-align: center;
- -webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- -ms-border-radius: 3px;
- border-radius: 3px; }
- .fx-catalog-toolbar .fx-widget-stack-btns input {
- margin-left: 33px; }
+.icojam_archive:before {
+ content: "\e970"; }
-/* Fenix - Circle Number Component */
-.fx-circle-number {
- color: white;
- display: inline-block;
- font: normal normal 500 14px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
- height: 20px;
- width: 20px;
- line-height: 20px;
- text-align: center;
- background-color: #0f6eae;
- -webkit-border-radius: 100%;
- -moz-border-radius: 100%;
- -ms-border-radius: 100%;
- border-radius: 100%;
- -ms-transform: translate(0, -50%);
- -webkit-transform: translate(0, -50%);
- transform: translate(0, -50%); }
+.icojam_box:before {
+ content: "\e971"; }
-/* Fenix Datepicker - Components */
-.datepicker {
- font-size: 12px; }
- .datepicker .datepicker-days .day {
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- border-radius: 0; }
- .datepicker .datepicker-days .day.active {
- background-color: #0f6eae; }
- .datepicker .datepicker-days .day.today:before {
- border-bottom-color: #0f6eae; }
- .datepicker .datepicker-days .day.active.today:before {
- border-bottom-color: white; }
+.icojam_box_opened:before {
+ content: "\e972"; }
-/* Fenix - Fieldset Component */
-fieldset {
- border: 0; }
- fieldset .fx-fieldset-subtitle label {
- font-size: 12px; }
+.icojam_browser:before {
+ content: "\e973"; }
-.inside-full-height {
- /*
- // if you want to give content full height give him height: 100%;
- // with content full height you can't apply margins to the content
- // content full height does not work in ie http://stackoverflow.com/questions/27384433/ie-display-table-cell-child-ignores-height-100
- */
- height: 100%;
- margin-top: 0;
- margin-bottom: 0; }
+.icojam_comment_12:before {
+ content: "\e974"; }
-.content {
- padding: 12px 3px; }
+.icojam_comment_22:before {
+ content: "\e975"; }
-/* columns of same height styles */
-.row-height {
- display: table;
- table-layout: fixed;
- height: 100%;
- width: 100%; }
+.icojam_comments:before {
+ content: "\e976"; }
-.col-height {
- display: table-cell;
- float: none;
- height: 100%; }
+.icojam_compare_balance:before {
+ content: "\e977"; }
-.col-top {
- vertical-align: top; }
+.icojam_compare_disbalance:before {
+ content: "\e978"; }
-.col-middle {
- vertical-align: middle; }
+.icojam_download_1:before {
+ content: "\e979"; }
-.col-bottom {
- vertical-align: bottom; }
+.icojam_download_2:before {
+ content: "\e97a"; }
-@media (min-width: 480px) {
- .row-xs-height {
- display: table;
- table-layout: fixed;
- height: 100%;
- width: 100%; }
+.icojam_download_3:before {
+ content: "\e97b"; }
- .col-xs-height {
- display: table-cell;
- float: none;
- height: 100%; }
+.icojam_download_4:before {
+ content: "\e97c"; }
- .col-xs-top {
- vertical-align: top; }
+.icojam_download_5:before {
+ content: "\e97d"; }
- .col-xs-middle {
- vertical-align: middle; }
+.icojam_firewall:before {
+ content: "\e97e"; }
- .col-xs-bottom {
- vertical-align: bottom; } }
-@media (min-width: 768px) {
- .row-sm-height {
- display: table;
- table-layout: fixed;
- height: 100%;
- width: 100%; }
+.icojam_grid_01:before {
+ content: "\e97f"; }
- .col-sm-height {
- display: table-cell;
- float: none;
- height: 100%; }
+.icojam_grid_02:before {
+ content: "\e980"; }
- .col-sm-top {
- vertical-align: top; }
+.icojam_grid_03:before {
+ content: "\e981"; }
- .col-sm-middle {
- vertical-align: middle; }
+.icojam_grid_04:before {
+ content: "\e982"; }
- .col-sm-bottom {
- vertical-align: bottom; } }
-@media (min-width: 992px) {
- .row-md-height {
- display: table;
- table-layout: fixed;
- height: 100%;
- width: 100%; }
+.icojam_grid_05:before {
+ content: "\e983"; }
- .col-md-height {
- display: table-cell;
- float: none;
- height: 100%; }
+.icojam_grid_06:before {
+ content: "\e984"; }
- .col-md-top {
- vertical-align: top; }
+.icojam_grid_07:before {
+ content: "\e985"; }
- .col-md-middle {
- vertical-align: middle; }
+.icojam_grid_08:before {
+ content: "\e986"; }
- .col-md-bottom {
- vertical-align: bottom; } }
-@media (min-width: 1200px) {
- .row-lg-height {
- display: table;
- table-layout: fixed;
- height: 100%;
- width: 100%; }
+.icojam_grid_09:before {
+ content: "\e987"; }
- .col-lg-height {
- display: table-cell;
- float: none;
- height: 100%; }
+.icojam_grid_10:before {
+ content: "\e988"; }
- .col-lg-top {
- vertical-align: top; }
+.icojam_grid_11:before {
+ content: "\e989"; }
- .col-lg-middle {
- vertical-align: middle; }
+.icojam_grid_12:before {
+ content: "\e98a"; }
- .col-lg-bottom {
- vertical-align: bottom; } }
-/* Fenix - Inputs Component */
-/* remove x icon in IE 10+ */
-input[type=text]::-ms-clear {
- display: none; }
+.icojam_grid_13:before {
+ content: "\e98b"; }
-/* Input Placeholder*/
-.form-control::-webkit-input-placeholder {
- /* WebKit browsers */
- opacity: .5; }
+.icojam_grid_14:before {
+ content: "\e98c"; }
-.form-control:-moz-placeholder {
- /* Mozilla Firefox 4 to 18 */
- opacity: .5; }
+.icojam_grid_15:before {
+ content: "\e98d"; }
-.form-control::-moz-placeholder {
- /* Mozilla Firefox 19+ */
- opacity: .5; }
+.icojam_grid_16:before {
+ content: "\e98e"; }
-.form-control:-ms-input-placeholder {
- /* Internet Explorer 10+ */
- opacity: .5; }
+.icojam_grid_17:before {
+ content: "\e98f"; }
-/* Fenix - Labels Component */
-label {
- font: normal normal 300 12px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
+.icojam_grid_18:before {
+ content: "\e990"; }
-/* Fenix - Legend Component */
-legend {
- color: #666666;
- cursor: pointer;
- border: 0;
- font-size: 12px; }
- legend label {
- font-size: 12px;
- cursor: pointer; }
+.icojam_grid_19:before {
+ content: "\e991"; }
-/* Fenix - Modular Form Component */
-.fx-catalog-modular-form-holder {
- -moz-border-bottom-colors: none;
- -moz-border-left-colors: none;
- -moz-border-right-colors: none;
- -moz-border-top-colors: none;
- background-color: white;
- border-color: #D2D0D0;
- border-image: none;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- border-radius: 0;
- border-style: solid;
- border-width: 1px 1px 2px;
- margin: 10px 0 20px;
- padding: 20px;
- width: auto;
- padding: 5px;
- margin: 0; }
+.icojam_grid_20:before {
+ content: "\e992"; }
-.fx-catalog-modular-form-wrapper {
- padding-right: 0;
- /*overflow: hidden;*/
- min-height: 250px;
- position: relative;
- background-color: #f1f1f1; }
+.icojam_grid_21:before {
+ content: "\e993"; }
-.fx-catalog-modular-form-header {
- position: relative;
- height: 30px; }
+.icojam_grid_22:before {
+ content: "\e994"; }
-.fx-catalog-modular-form-handler {
- position: absolute;
- left: 7px;
- top: 7px;
- height: 15px;
- width: 15px;
- background: url("../../submodules/fenix-ui-common/css/img/fenix-catalog-sprite-small.svg") no-repeat -15px 0;
- background-size: 150px 30px;
- cursor: pointer; }
+.icojam_grid_23:before {
+ content: "\e995"; }
-.fx-catalog-modular-form-close-btn {
- position: absolute;
- top: 7px;
- right: 7px;
- height: 15px;
- width: 15px;
- background: url("../../submodules/fenix-ui-common/css/img/fenix-catalog-sprite-small.svg") no-repeat -45px 0;
- background-size: 150px 30px;
- cursor: pointer; }
+.icojam_grid_24:before {
+ content: "\e996"; }
-.fx-catalog-modular-form-resize-btn {
- position: absolute;
- top: 7px;
- right: 28px;
- height: 15px;
- width: 15px;
- background: url("../../submodules/fenix-ui-common/css/img/fenix-catalog-sprite-small.svg") no-repeat -30px 0;
- background-size: 150px 30px;
- cursor: pointer; }
+.icojam_grid_25:before {
+ content: "\e997"; }
-.fx-catalog-modular-form-label {
- position: absolute;
- top: 4px;
- left: 30px;
- font-weight: 300;
- color: #3e657f; }
+.icojam_grid_26:before {
+ content: "\e998"; }
-.fx-catalog-modular-form-content {
- padding: 10px 10px 10px 10px;
- height: 100px; }
+.icojam_grid_27:before {
+ content: "\e999"; }
-div[data-module] .fx-catalog-modular-form-content {
- height: 173px; }
+.icojam_grid_28:before {
+ content: "\e99a"; }
-div[data-module="region"] .fx-catalog-modular-form-content {
- height: 263px; }
+.icojam_grid_29:before {
+ content: "\e99b"; }
-div[data-module="referencePeriod"] .fx-catalog-modular-form-content {
- height: 263px; }
+.icojam_grid_30:before {
+ content: "\e99c"; }
-div[data-module="sector"] .fx-catalog-modular-form-content {
- height: 263px; }
+.icojam_grid_31:before {
+ content: "\e99d"; }
-/* Fenix - Navigation Component */
-.navbar {
- border: 0;
- border-width: 0; }
+.icojam_grid_32:before {
+ content: "\e99e"; }
-.nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
- border-color: #0f6eae; }
+.icojam_grid_33:before {
+ content: "\e99f"; }
-.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus {
- background-color: transparent;
- color: #666666; }
+.icojam_grid_34:before {
+ content: "\e9a0"; }
-.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
- color: #0f6eae; }
+.icojam_grid_35:before {
+ content: "\e9a1"; }
-/* Fenix - Object Box Component */
-.obj-box, .obj-box-radius10, .obj-box-title {
- -moz-border-bottom-colors: none;
- -moz-border-left-colors: none;
- -moz-border-right-colors: none;
- -moz-border-top-colors: none;
- background-color: white;
- border-color: #D2D0D0;
- border-image: none;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- border-radius: 0;
- border-style: solid;
- border-width: 1px 1px 2px;
- margin: 10px 0 20px;
- padding: 20px;
- width: auto; }
+.icojam_grid_36:before {
+ content: "\e9a2"; }
-.obj-box-radius10 {
- -webkit-border-radius: 10px;
- -moz-border-radius: 10px;
- -ms-border-radius: 10px;
- border-radius: 10px; }
+.icojam_grid_37:before {
+ content: "\e9a3"; }
-.obj-box-title {
- padding-top: 5px; }
- .obj-box-title h4 {
- color: #0f6eae;
- font: normal normal 300 11px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
+.icojam_grid_38:before {
+ content: "\e9a4"; }
-/* Fenix - Panel Component */
-.panel-group {
- margin-bottom: 0px; }
- .panel-group .panel {
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- border-radius: 0;
- background-color: transparent;
- border: none;
- border-bottom: 1px solid #D2D0D0; }
- .panel-group .panel-default {
- -webkit-box-shadow: none;
- -moz-box-shadow: none;
- box-shadow: none; }
- .panel-group .panel-default:last-child {
- border-bottom-width: 0px; }
- .panel-group .panel-heading {
- background-color: transparent;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- border-radius: 0;
- padding: 10px; }
- .panel-group .panel-heading .panel-title {
- font: normal normal 300 16px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
- .panel-group .panel-heading .panel-title a {
- color: #666666;
- text-transform: uppercase; }
- .panel-group .panel-heading .panel-title a:hover {
- text-decoration: none; }
- .panel-group .panel-heading .panel-title a:active {
- text-decoration: none; }
- .panel-group .panel-heading .panel-title a:focus {
- text-decoration: none; }
- .panel-group .panel-heading.fx-active-panel .panel-title a {
- color: #0f6eae; }
- .panel-group .panel-body .btn {
- background-color: transparent;
- color: #666666;
- border-color: transparent;
- font: normal normal 300 12px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
- text-align: left;
- position: relative; }
- .panel-group .panel-body .btn:hover {
- background-color: transparent;
- color: #666666;
- border-color: transparent; }
- .panel-group .panel-body .btn:active {
- background-color: transparent;
- color: #666666;
- border-color: transparent;
- -webkit-box-shadow: 0 0 0 white;
- -moz-box-shadow: 0 0 0 white;
- box-shadow: 0 0 0 white; }
- .panel-group .panel-body .btn span.fa {
- margin-right: 10px; }
+.icojam_grid_columns:before {
+ content: "\e9a5"; }
-.fx-panel-plus, .fx-panel-minus, .fx-panel-required {
- display: inline-block;
- margin-right: 25px; }
+.icojam_grid_layout:before {
+ content: "\e9a6"; }
-.fx-panel-plus {
- height: 15px;
- width: 15px;
- background: url("../../submodules/fenix-ui-common/css/img/fenix-catalog-sprite-small.svg") no-repeat -90px 0;
- background-size: 150px 30px; }
+.icojam_grid_rows:before {
+ content: "\e9a7"; }
-.fx-panel-minus {
- height: 15px;
- width: 15px;
- background: url("../../submodules/fenix-ui-common/css/img/fenix-catalog-sprite-small.svg") no-repeat -90px -15px;
- background-size: 150px 30px; }
+.icojam_grid_thumbnails:before {
+ content: "\e9a8"; }
-.fx-panel-info {
- height: 15px;
- width: 15px;
- background: url("../../submodules/fenix-ui-common/css/img/fenix-catalog-sprite-small.svg") no-repeat 0 0;
- background-size: 150px 30px;
- float: right; }
+.icojam_headphones:before {
+ content: "\e9a9"; }
-.fx-panel-required {
- height: 15px;
- width: 15px;
- background: url("../../submodules/fenix-ui-common/css/img/fenix-catalog-sprite-small.svg") no-repeat -15px -15px;
- background-size: 150px 30px; }
+.icojam_html_code:before {
+ content: "\e9aa"; }
-.fx-panel-ok {
- height: 15px;
- width: 15px;
- background: url("../../submodules/fenix-ui-common/css/img/fenix-catalog-sprite-small.svg") no-repeat -45px -15px;
- background-size: 150px 30px; }
+.icojam_index_1:before {
+ content: "\e9ab"; }
-.fx-panel-remove {
- height: 15px;
- width: 15px;
- background: url("../../submodules/fenix-ui-common/css/img/fenix-catalog-sprite-small.svg") no-repeat -60px -15px;
- background-size: 150px 30px; }
+.icojam_index_2:before {
+ content: "\e9ac"; }
-.fx-panel-refresh {
- height: 15px;
- width: 15px;
- background: url("../../submodules/fenix-ui-common/css/img/fenix-catalog-sprite-small.svg") no-repeat -75px -15px;
- background-size: 150px 30px; }
+.icojam_knob:before {
+ content: "\e9ad"; }
-/* Fenix Popover Component */
-.popover {
- width: 200px; }
+.icojam_play:before {
+ content: "\e9ae"; }
-/* Radio Buttons */
-input[type="radio"] {
- display: none; }
+.icojam_player_1:before {
+ content: "\e9af"; }
-input[type="radio"] + label {
- cursor: pointer;
- margin: 0 7px;
- font-size: 10px;
- text-transform: uppercase;
- font-weight: 500; }
- input[type="radio"] + label:before {
- content: '';
- display: inline-block;
- height: 15px;
- width: 15px;
- background-color: #dddddd;
- -webkit-border-radius: 100%;
- -moz-border-radius: 100%;
- -ms-border-radius: 100%;
- border-radius: 100%;
- border: 0 solid #0f6eae;
- position: relative;
- top: 4px;
- left: -4px; }
-
-input[type="radio"]:checked + label {
- color: #0f6eae; }
- input[type="radio"]:checked + label:before {
- border-width: 5px; }
+.icojam_player_2:before {
+ content: "\e9b0"; }
-input[type="radio"] + label,
-input[type="radio"]:checked + label {
- -webkit-transition: all 0.3s ease 0s;
- -moz-transition: all 0.3s ease 0s;
- -ms-transition: all 0.3s ease 0s;
- -o-transition: all 0.3s ease 0s;
- transition: all 0.3s ease 0s; }
- input[type="radio"] + label:before,
- input[type="radio"]:checked + label:before {
- -webkit-transition: all 0.3s ease 0s;
- -moz-transition: all 0.3s ease 0s;
- -ms-transition: all 0.3s ease 0s;
- -o-transition: all 0.3s ease 0s;
- transition: all 0.3s ease 0s; }
+.icojam_preview_cover_flow:before {
+ content: "\e9b2"; }
-/* Checkbox Buttons */
-input[type="checkbox"] {
- display: none; }
+.icojam_preview_fullscreen:before {
+ content: "\e9b3"; }
-input[type="checkbox"] + label {
- cursor: pointer;
- margin: 0 7px;
- font-size: 10px;
- text-transform: uppercase;
- font-weight: 500; }
- input[type="checkbox"] + label:before {
- content: '';
- display: inline-block;
- height: 15px;
- width: 15px;
- background-color: #dddddd;
- -webkit-border-radius: 100%;
- -moz-border-radius: 100%;
- -ms-border-radius: 100%;
- border-radius: 100%;
- border: 0 solid #0f6eae;
- position: relative;
- top: 4px;
- left: -4px; }
+.icojam_preview_list:before {
+ content: "\e9b4"; }
-input[type="checkbox"]:checked + label {
- color: #0f6eae; }
- input[type="checkbox"]:checked + label:before {
- border-width: 5px; }
+.icojam_preview_matrix:before {
+ content: "\e9b5"; }
-input[type="checkbox"] + label,
-input[type="checkbox"]:checked + label {
- -webkit-transition: all 0.3s ease 0s;
- -moz-transition: all 0.3s ease 0s;
- -ms-transition: all 0.3s ease 0s;
- -o-transition: all 0.3s ease 0s;
- transition: all 0.3s ease 0s; }
- input[type="checkbox"] + label:before,
- input[type="checkbox"]:checked + label:before {
- -webkit-transition: all 0.3s ease 0s;
- -moz-transition: all 0.3s ease 0s;
- -ms-transition: all 0.3s ease 0s;
- -o-transition: all 0.3s ease 0s;
- transition: all 0.3s ease 0s; }
+.icojam_preview_presentation:before {
+ content: "\e9b6"; }
-/* Fenix Range Slider */
-.ui-rangeSlider-innerBar {
- height: 3px !important;
- top: 7px !important;
- background-color: #D2D0D0 !important; }
+.icojam_preview_table:before {
+ content: "\e9b7"; }
-.ui-rangeSlider-arrow.ui-rangeSlider-leftArrow {
- background: url(img/arrow-left-on.svg) no-repeat !important;
- width: 48px;
- height: 48px;
- background-position: -16px -15px !important; }
+.icojam_preview_thumbnails:before {
+ content: "\e9b8"; }
-.ui-rangeSlider-arrow.ui-rangeSlider-rightArrow {
- background: url(img/arrow-right-on.svg) no-repeat !important;
- width: 48px;
- height: 48px;
- background-position: 16px -15px !important; }
+.icojam_quotes_1:before {
+ content: "\e9b9"; }
-.ui-rangeSlider-label.ui-rangeSlider-rightLabel {
- background-image: url("img/label.png") !important;
- margin-bottom: 5px !important; }
+.icojam_quotes_2:before {
+ content: "\e9ba"; }
-.ui-rangeSlider-label.ui-rangeSlider-leftLabel {
- background-image: url("img/label.png") !important;
- margin-bottom: 5px !important; }
+.icojam_send:before {
+ content: "\e9bb"; }
-.ui-rangeSlider-label-value {
- font-size: 12px;
- font-weight: 500; }
+.icojam_share:before {
+ content: "\e9bc"; }
-.ui-rangeSlider-leftHandle, .ui-rangeSlider-rightHandle {
- width: 20px !important;
- height: 20px !important;
- background-color: #0f6eae !important;
- -webkit-border-radius: 100%;
- -moz-border-radius: 100%;
- -ms-border-radius: 100%;
- border-radius: 100%; }
+.icojam_site_alert:before {
+ content: "\e9bd"; }
-.ui-rangeSlider-bar {
- background-color: #0f6eae !important;
- margin-top: 8px !important;
- height: 5px !important; }
+.icojam_site_attention:before {
+ content: "\e9be"; }
-/* Fenix - Resume Bar Component */
-.fx-resume-bar {
- padding-right: 150px;
- background-color: #f1f1f1;
- position: relative; }
+.icojam_site_back:before {
+ content: "\e9bf"; }
-#fx-resume {
- background-color: white;
- padding-top: 20px;
- min-height: 60px; }
+.icojam_site_close:before {
+ content: "\e9c0"; }
-.fx-resume-title {
- color: #0f6eae;
- padding-left: 15px;
- padding-top: 5px;
- font: normal normal 400 10px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
- position: absolute;
- top: 0; }
+.icojam_site_close_tab:before {
+ content: "\e9c1"; }
-.fx-resume-noitem {
- padding-left: 15px;
- position: absolute;
- top: 15px; }
+.icojam_site_favorite:before {
+ content: "\e9c2"; }
-#fx-catalog-submit-btn {
- color: white;
- text-transform: uppercase;
- background-color: #0f6eae;
- width: 150px;
- position: absolute;
- bottom: 0;
- right: 0;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- border-radius: 0; }
- #fx-catalog-submit-btn.disabled {
- background-color: #f1f1f1;
- opacity: 1;
- border-color: #666666;
- color: #666666; }
+.icojam_site_foward:before {
+ content: "\e9c3"; }
-.fx-resume-item-selected {
- position: relative;
- border-top: 5px solid white;
- border-bottom: 5px solid white; }
- .fx-resume-item-selected .fx-resume-module-title {
- display: inline-block;
- width: 20%;
- padding-left: 15px; }
- .fx-resume-item-selected .fx-resume-module-title em {
- font: normal normal 400 10px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
- color: #0f6eae;
- font-size: 12px;
- /* Not expected */
- position: absolute;
- top: 0; }
- .fx-resume-item-selected .fx-resume-module-list-holder {
- display: inline-block;
- max-width: 80%;
- padding-right: 15px; }
- .fx-resume-item-selected .fx-resume-module-list-holder .fx-resume-module-list {
- display: inline-block;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- border-radius: 0;
- border: 1px solid #D2D0D0; }
+.icojam_site_new:before {
+ content: "\e9c4"; }
-.fx-resume-obj-close {
- display: inline-block;
- height: 15px;
- width: 15px;
- background: url("../../submodules/fenix-ui-common/css/img/fenix-catalog-sprite-small.svg") no-repeat -45px 0;
- background-size: 150px 30px;
- cursor: pointer;
- position: relative;
- top: 3px; }
+.icojam_site_options:before {
+ content: "\e9c5"; }
-.fx-resume-list-obj {
- display: inline-block; }
- .fx-resume-list-obj .fx-resume-obj-value {
- display: inline;
- margin-right: 7px; }
+.icojam_site_ping:before {
+ content: "\e9c6"; }
-/* Fenix Section Switcher */
-.fx-section-switcher {
- list-style: none;
- padding-left: 0;
- margin-bottom: 0; }
- .fx-section-switcher > li {
- margin-bottom: 10px;
- display: inline-block; }
- .fx-section-switcher > li > a {
- padding: 0 10px;
- color: #666666;
- font-weight: 500;
- font-size: 12px;
- text-transform: uppercase;
- position: relative; }
- .fx-section-switcher > li > a:first-child {
- padding-left: 0; }
- .fx-section-switcher > li > a:hover, .fx-section-switcher > li > a:active, .fx-section-switcher > li > a:focus {
- text-decoration: none; }
- .fx-section-switcher > li.active > a:before {
- content: '';
- position: absolute;
- width: calc(100% - 20px);
- height: 2px;
- background-color: #0f6eae;
- left: 10px;
- bottom: -2px;
- pointer-events: none; }
- .fx-section-switcher > li.active > a:first-child:before {
- left: 0;
- width: calc(100% - 10px); }
+.icojam_site_refresh:before {
+ content: "\e9c7"; }
-/* Fenix - Sidebar Component */
-.bs-docs-sidebar.affix {
- position: static; }
+.icojam_site_search:before {
+ content: "\e9c8"; }
-.bs-docs-sidenav {
- margin-bottom: 20px;
- margin-top: 20px; }
+.icojam_tablet:before {
+ content: "\e9c9"; }
-.bs-docs-sidebar .nav > li > a {
- color: #666666;
- display: block;
- padding: 4px 20px;
- cursor: pointer;
- border-left: 1px solid transparent; }
+.icojam_text_center:before {
+ content: "\e9ca"; }
-.bs-docs-sidebar .nav > li > a:hover, .bs-docs-sidebar .nav > li > a:focus {
- background-color: transparent;
- border-left: 1px solid #0f6eae;
- color: #0f6eae;
- text-decoration: none; }
+.icojam_text_justify_all:before {
+ content: "\e9cb"; }
-.bs-docs-sidebar .nav > .active > a, .bs-docs-sidebar .nav > .active:hover > a, .bs-docs-sidebar .nav > .active:focus > a {
- background-color: transparent;
- border-left: 1px solid #0f6eae;
- color: #0f6eae;
- font-weight: 700; }
+.icojam_text_justify_centered:before {
+ content: "\e9cc"; }
-.bs-docs-sidebar .nav .nav {
- display: none;
- padding-bottom: 10px; }
+.icojam_text_justify_left:before {
+ content: "\e9cd"; }
-.bs-docs-sidebar .nav .nav > li > a {
- padding-bottom: 1px;
- padding-left: 30px;
- padding-top: 1px; }
+.icojam_text_justify_right:before {
+ content: "\e9ce"; }
-@media (min-width: 768px) {
- .bs-docs-sidebar {
- padding-left: 20px; } }
-@media (min-width: 992px) {
- .bs-docs-sidebar .nav > .active > ul {
- display: block; }
+.icojam_text_left_align:before {
+ content: "\e9cf"; }
- .bs-docs-sidebar.affix, .bs-docs-sidebar.affix-bottom {
- width: 213px; }
+.icojam_text_right_align:before {
+ content: "\e9d0"; }
- .bs-docs-sidebar.affix {
- position: fixed;
- top: 80px; }
+.icojam_top_1:before {
+ content: "\e9d1"; }
- .bs-docs-sidebar.affix-bottom {
- position: absolute; }
+.icojam_top_2:before {
+ content: "\e9d2"; }
- .bs-docs-sidebar.affix-bottom .bs-docs-sidenav, .bs-docs-sidebar.affix .bs-docs-sidenav {
- margin-bottom: 0;
- margin-top: 0; } }
-@media (min-width: 1200px) {
- .bs-docs-sidebar.affix-bottom, .bs-docs-sidebar.affix {
- width: 263px; } }
-/*!
- * Start Bootstrap - Simple Sidebar HTML Template (http://startbootstrap.com)
- * Code licensed under the Apache License v2.0.
- * For details, see http://www.apache.org/licenses/LICENSE-2.0.
- */
-/* Toggle Styles */
-#wrapper {
- padding-left: 0;
- -webkit-transition: all 0.5s ease;
- -moz-transition: all 0.5s ease;
- -o-transition: all 0.5s ease;
- transition: all 0.5s ease; }
+.icojam_view_expand_1:before {
+ content: "\e9d3"; }
-#wrapper.toggled {
- padding-left: 250px; }
+.icojam_view_expand_2:before {
+ content: "\e9d4"; }
-#sidebar-wrapper {
- z-index: 1000;
- position: fixed;
- left: 250px;
- width: 0;
- height: 100%;
- margin-left: -250px;
- overflow-y: auto;
- background: #000;
- -webkit-transition: all 0.5s ease;
- -moz-transition: all 0.5s ease;
- -o-transition: all 0.5s ease;
- transition: all 0.5s ease; }
+.icojam_view_full_screen:before {
+ content: "\e9d5"; }
-#wrapper.toggled #sidebar-wrapper {
- width: 250px; }
+.icojam_view_maximize:before {
+ content: "\e9d6"; }
-#page-content-wrapper {
- width: 100%;
- position: absolute;
- padding: 15px;
- overflow-x: hidden; }
+.icojam_view_minimize:before {
+ content: "\e9d7"; }
-#wrapper.toggled #page-content-wrapper {
- position: absolute;
- margin-right: -250px; }
+.icojam_view_roll-up_1:before {
+ content: "\e9d8"; }
-/* Sidebar Styles */
-.sidebar-nav {
- position: absolute;
- top: 0;
- width: 250px;
- margin: 0;
- padding: 0;
- list-style: none; }
+.icojam_view_roll-up_2:before {
+ content: "\e9d9"; }
-.sidebar-nav li {
- text-indent: 20px;
- line-height: 40px; }
+.icojam_view_scale_1:before {
+ content: "\e9da"; }
-.sidebar-nav li a {
- display: block;
- text-decoration: none;
- color: #999999; }
+.icojam_view_scale_2:before {
+ content: "\e9db"; }
-.sidebar-nav li a:hover {
- text-decoration: none;
- color: #fff;
- background: rgba(255, 255, 255, 0.2); }
+.icojam_window2:before {
+ content: "\e9dc"; }
-.sidebar-nav li a:active,
-.sidebar-nav li a:focus {
- text-decoration: none; }
+.icojam_window_attention:before {
+ content: "\e9dd"; }
-.sidebar-nav > .sidebar-brand {
- height: 65px;
- font-size: 18px;
- line-height: 60px; }
+.icojam_window_close_1:before {
+ content: "\e9de"; }
-.sidebar-nav > .sidebar-brand a {
- color: #999999; }
+.icojam_window_close_2:before {
+ content: "\e9df"; }
-.sidebar-nav > .sidebar-brand a:hover {
- color: #fff;
- background: none; }
+.icojam_window_favorite:before {
+ content: "\e9e0"; }
-@media (min-width: 768px) {
- #wrapper {
- padding-left: 250px; }
+.icojam_window_new:before {
+ content: "\e9e1"; }
- #wrapper.toggled {
- padding-left: 0; }
+.icojam_window_next:before {
+ content: "\e9e2"; }
- #sidebar-wrapper {
- width: 250px; }
+.icojam_window_open:before {
+ content: "\e9e3"; }
- #wrapper.toggled #sidebar-wrapper {
- width: 0; }
+.icojam_window_options:before {
+ content: "\e9e4"; }
- #page-content-wrapper {
- padding: 20px;
- position: relative; }
+.icojam_window_previous:before {
+ content: "\e9e5"; }
- #wrapper.toggled #page-content-wrapper {
- position: relative;
- margin-right: 0; } }
-/* Tabs component */
-.fx-tabs .nav-tabs {
- -ms-transform: translateX(-10px);
- -webkit-transform: translateX(-10px);
- transform: translateX(-10px); }
- .fx-tabs .nav-tabs > li {
- margin-bottom: 10px; }
- .fx-tabs .nav-tabs > li > a {
- padding: 0 10px;
- color: #666666;
- font-weight: 500;
- font-size: 12px;
- text-transform: uppercase; }
- .fx-tabs .nav-tabs > li > a:before {
- -webkit-transition: all 0.3s ease 0s;
- -moz-transition: all 0.3s ease 0s;
- -ms-transition: all 0.3s ease 0s;
- -o-transition: all 0.3s ease 0s;
- transition: all 0.3s ease 0s;
- content: '';
- position: absolute;
- width: 100%;
- height: 2px;
- background-color: #0f6eae;
- left: 0;
- bottom: -2px;
- pointer-events: none;
- -ms-transform: scaleX(0);
- -webkit-transform: scaleX(0);
- transform: scaleX(0); }
- .fx-tabs .nav-tabs > li.active > a {
- color: #0f6eae; }
- .fx-tabs .nav-tabs > li.active > a:before {
- -webkit-transition: all 0.3s ease 0s;
- -moz-transition: all 0.3s ease 0s;
- -ms-transition: all 0.3s ease 0s;
- -o-transition: all 0.3s ease 0s;
- transition: all 0.3s ease 0s;
- -ms-transform: scaleX(0.8);
- -webkit-transform: scaleX(0.8);
- transform: scaleX(0.8); }
-.fx-tabs .tab-content {
- padding-top: 10px; }
- .fx-tabs .tab-content > div {
- padding: 0; }
-.fx-tabs li {
- margin: 12px 0; }
+.icojam_window_refresh:before {
+ content: "\e9e6"; }
-/* Fenix - Top Menu Component */
-.navbar ul {
- list-style: outside none none;
- padding-left: 0; }
+.icojam_window_search:before {
+ content: "\e9e7"; }
-.navbar .container {
- position: relative; }
+.icojam_window_stop:before {
+ content: "\e9e8"; }
-.nav-pills li a {
- color: #666666; }
+.icojam_bird_1:before {
+ content: "\e9e9"; }
-.navbar-brand {
- background-position: 0 3px;
- background-repeat: no-repeat;
- background-size: 100% 100%;
- display: block; }
+.icojam_bird_2:before {
+ content: "\e9ea"; }
-.navbar .lang_picker {
- text-transform: uppercase; }
+.icojam_blink:before {
+ content: "\e9eb"; }
-.navbar .lang_picker li {
- cursor: pointer; }
+.icojam_blood:before {
+ content: "\e9ec"; }
-.navbar .lang_picker li a, .navbar .lang_picker li a:hover {
- text-align: center;
- text-decoration: none; }
+.icojam_brain:before {
+ content: "\e9ed"; }
-.navbar .lang_picker li:last-child {
- border-right: medium none; }
+.icojam_cardiogram_1:before {
+ content: "\e9ee"; }
-/* Fenix Upload Component */
-.fx-uploader-container .fx-uploader-header {
- padding: 10px 0;
- border-bottom: 1px solid #D2D0D0; }
-.fx-uploader-container #fx-uploader-input {
- display: none; }
-.fx-uploader-container .fx-widget-icons {
- cursor: pointer; }
+.icojam_cardiogram_2:before {
+ content: "\e9ef"; }
-.fx-uploader-item {
- margin-top: 15px;
- position: relative; }
- .fx-uploader-item .uploader-item-header {
- background-color: #f1f1f1;
- padding: 15px; }
- .fx-uploader-item .item-title {
- display: inline-block;
- font-weight: 300;
- font-size: 16px;
- margin-top: 0; }
- .fx-uploader-item .file-type {
- position: relative;
- top: -2px;
- left: 5px;
- text-transform: uppercase;
- font-weight: 300; }
- .fx-uploader-item .file-description {
- color: #999999; }
+.icojam_chicken2:before {
+ content: "\e9f0"; }
+
+.icojam_DNA_1:before {
+ content: "\e9f1"; }
+
+.icojam_DNA_2:before {
+ content: "\e9f2"; }
+
+.icojam_DNA_3:before {
+ content: "\e9f3"; }
+
+.icojam_doctor:before {
+ content: "\e9f4"; }
+
+.icojam_dog:before {
+ content: "\e9f5"; }
+
+.icojam_drugs:before {
+ content: "\e9f6"; }
+
+.icojam_ear:before {
+ content: "\e9f7"; }
+
+.icojam_eye_1:before {
+ content: "\e9f8"; }
+
+.icojam_eye_2:before {
+ content: "\e9f9"; }
+
+.icojam_eye_3:before {
+ content: "\e9fa"; }
+
+.icojam_eye_4:before {
+ content: "\e9fb"; }
+
+.icojam_eye_5:before {
+ content: "\e9fc"; }
+
+.icojam_eye_6:before {
+ content: "\e9fd"; }
+
+.icojam_eye_7:before {
+ content: "\e9fe"; }
+
+.icojam_eyelash:before {
+ content: "\e9ff"; }
+
+.icojam_fish2:before {
+ content: "\ea00"; }
+
+.icojam_fist:before {
+ content: "\ea01"; }
+
+.icojam_heart:before {
+ content: "\ea02"; }
+
+.icojam_hostpital:before {
+ content: "\ea03"; }
+
+.icojam_injection:before {
+ content: "\ea04"; }
+
+.icojam_kidney:before {
+ content: "\ea05"; }
+
+.icojam_lips:before {
+ content: "\ea06"; }
+
+.icojam_liver:before {
+ content: "\ea07"; }
+
+.icojam_LSD:before {
+ content: "\ea08"; }
+
+.icojam_lungs:before {
+ content: "\ea09"; }
+
+.icojam_medicine_chest:before {
+ content: "\ea0a"; }
+
+.icojam_microscope_1:before {
+ content: "\ea0b"; }
+
+.icojam_microscope_2:before {
+ content: "\ea0c"; }
+
+.icojam_monkey:before {
+ content: "\ea0d"; }
+
+.icojam_nose_1:before {
+ content: "\ea0e"; }
+
+.icojam_nose_2:before {
+ content: "\ea0f"; }
+
+.icojam_nurse:before {
+ content: "\ea10"; }
+
+.icojam_patch_1:before {
+ content: "\ea11"; }
+
+.icojam_patch_2:before {
+ content: "\ea12"; }
+
+.icojam_pill_1:before {
+ content: "\ea13"; }
+
+.icojam_pill_2:before {
+ content: "\ea14"; }
+
+.icojam_pill_3:before {
+ content: "\ea15"; }
+
+.icojam_pill_4:before {
+ content: "\ea16"; }
+
+.icojam_pill_5:before {
+ content: "\ea17"; }
+
+.icojam_pill_6:before {
+ content: "\ea18"; }
+
+.icojam_pill_7:before {
+ content: "\ea19"; }
+
+.icojam_pill_8:before {
+ content: "\ea1a"; }
+
+.icojam_pill_drugs:before {
+ content: "\ea1b"; }
+
+.icojam_red_cross:before {
+ content: "\ea1c"; }
+
+.icojam_skull:before {
+ content: "\ea1d"; }
+
+.icojam_skull_and_bones:before {
+ content: "\ea1e"; }
+
+.icojam_sleep_1:before {
+ content: "\ea1f"; }
+
+.icojam_sleep_2:before {
+ content: "\ea20"; }
+
+.icojam_sleep_3:before {
+ content: "\ea21"; }
+
+.icojam_smoke:before {
+ content: "\ea22"; }
+
+.icojam_snake:before {
+ content: "\ea23"; }
+
+.icojam_stomach:before {
+ content: "\ea24"; }
+
+.icojam_syringe:before {
+ content: "\ea25"; }
+
+.icojam_test-tube_1:before {
+ content: "\ea26"; }
+
+.icojam_test-tube_2:before {
+ content: "\ea27"; }
+
+.icojam_test-tube_3:before {
+ content: "\ea28"; }
+
+.icojam_test-tube_4:before {
+ content: "\ea29"; }
+
+.icojam_test-tube_5:before {
+ content: "\ea2a"; }
+
+.icojam_thermometer:before {
+ content: "\ea2b"; }
+
+.icojam_tooth:before {
+ content: "\ea2c"; }
+
+.icojam_anchor:before {
+ content: "\ea2d"; }
+
+.icojam_axis_3d:before {
+ content: "\ea2e"; }
+
+.icojam_book:before {
+ content: "\ea2f"; }
+
+.icojam_categories:before {
+ content: "\ea30"; }
+
+.icojam_cloud:before {
+ content: "\ea31"; }
+
+.icojam_cloud_connect:before {
+ content: "\ea32"; }
+
+.icojam_cloud_delete:before {
+ content: "\ea33"; }
+
+.icojam_cloud_download:before {
+ content: "\ea34"; }
+
+.icojam_cloud_new:before {
+ content: "\ea35"; }
+
+.icojam_cloud_ok:before {
+ content: "\ea36"; }
+
+.icojam_cloud_upload:before {
+ content: "\ea37"; }
+
+.icojam_compas_1:before {
+ content: "\ea38"; }
+
+.icojam_compas_2:before {
+ content: "\ea39"; }
+
+.icojam_cup_12:before {
+ content: "\ea3a"; }
+
+.icojam_cup_22:before {
+ content: "\ea3b"; }
+
+.icojam_eye_12:before {
+ content: "\ea3d"; }
+
+.icojam_eye_22:before {
+ content: "\ea3e"; }
+
+.icojam_feather:before {
+ content: "\ea3f"; }
+
+.icojam_flash:before {
+ content: "\ea40"; }
+
+.icojam_food_1:before {
+ content: "\ea41"; }
+
+.icojam_food_2:before {
+ content: "\ea42"; }
+
+.icojam_food_3:before {
+ content: "\ea43"; }
+
+.icojam_geo:before {
+ content: "\ea44"; }
+
+.icojam_goal:before {
+ content: "\ea45"; }
+
+.icojam_goal_1:before {
+ content: "\ea46"; }
+
+.icojam_inbox_1:before {
+ content: "\ea47"; }
+
+.icojam_inbox_mail:before {
+ content: "\ea48"; }
+
+.icojam_inbox_receive:before {
+ content: "\ea49"; }
+
+.icojam_inbox_send:before {
+ content: "\ea4a"; }
+
+.icojam_inbox_sent:before {
+ content: "\ea4b"; }
+
+.icojam_info_1:before {
+ content: "\ea4c"; }
+
+.icojam_info_2:before {
+ content: "\ea4d"; }
+
+.icojam_info_3:before {
+ content: "\ea4e"; }
+
+.icojam_languages:before {
+ content: "\ea4f"; }
+
+.icojam_link_2:before {
+ content: "\ea51"; }
+
+.icojam_link_3:before {
+ content: "\ea52"; }
+
+.icojam_link_close_1:before {
+ content: "\ea53"; }
+
+.icojam_link_close_2:before {
+ content: "\ea54"; }
+
+.icojam_link_delete_1:before {
+ content: "\ea55"; }
+
+.icojam_link_delete_2:before {
+ content: "\ea56"; }
+
+.icojam_link_new_1:before {
+ content: "\ea57"; }
+
+.icojam_link_new_2:before {
+ content: "\ea58"; }
+
+.icojam_location_1:before {
+ content: "\ea59"; }
+
+.icojam_location_2:before {
+ content: "\ea5a"; }
+
+.icojam_location_3:before {
+ content: "\ea5b"; }
+
+.icojam_location_4:before {
+ content: "\ea5c"; }
+
+.icojam_location_5:before {
+ content: "\ea5d"; }
+
+.icojam_location_current:before {
+ content: "\ea5e"; }
+
+.icojam_location_delete:before {
+ content: "\ea5f"; }
+
+.icojam_location_favorite:before {
+ content: "\ea60"; }
+
+.icojam_location_new:before {
+ content: "\ea61"; }
+
+.icojam_location_remove:before {
+ content: "\ea62"; }
+
+.icojam_map_1:before {
+ content: "\ea63"; }
+
+.icojam_map_2:before {
+ content: "\ea64"; }
+
+.icojam_map_3:before {
+ content: "\ea65"; }
+
+.icojam_map_4:before {
+ content: "\ea66"; }
+
+.icojam_map_location:before {
+ content: "\ea67"; }
+
+.icojam_options:before {
+ content: "\ea68"; }
+
+.icojam_patch:before {
+ content: "\ea69"; }
+
+.icojam_plane:before {
+ content: "\ea6a"; }
+
+.icojam_present2:before {
+ content: "\ea6b"; }
+
+.icojam_radio_1:before {
+ content: "\ea6c"; }
+
+.icojam_radio_2:before {
+ content: "\ea6d"; }
+
+.icojam_script:before {
+ content: "\ea6e"; }
+
+.icojam_speed_1:before {
+ content: "\ea6f"; }
+
+.icojam_speed_2:before {
+ content: "\ea70"; }
+
+.icojam_switch_off:before {
+ content: "\ea71"; }
+
+.icojam_switch_off_1:before {
+ content: "\ea72"; }
+
+.icojam_switch_on:before {
+ content: "\ea73"; }
+
+.icojam_switch_on_1:before {
+ content: "\ea74"; }
+
+.icojam_tag_1:before {
+ content: "\ea75"; }
+
+.icojam_tag_2:before {
+ content: "\ea76"; }
+
+.icojam_tag_delete:before {
+ content: "\ea77"; }
+
+.icojam_tag_favorite:before {
+ content: "\ea78"; }
+
+.icojam_tag_new:before {
+ content: "\ea79"; }
+
+.icojam_tag_ready:before {
+ content: "\ea7a"; }
+
+.icojam_tag_remove:before {
+ content: "\ea7b"; }
+
+.icojam_tags_1:before {
+ content: "\ea7c"; }
+
+.icojam_tags_2:before {
+ content: "\ea7d"; }
+
+.icojam_target:before {
+ content: "\ea7e"; }
+
+.icojam_target_1:before {
+ content: "\ea7f"; }
+
+.icojam_toggle_down_slide:before {
+ content: "\ea80"; }
+
+.icojam_toggle_left_slide:before {
+ content: "\ea81"; }
+
+.icojam_toggle_right_slide:before {
+ content: "\ea82"; }
+
+.icojam_toggle_up_slide:before {
+ content: "\ea83"; }
+
+.icojam_water:before {
+ content: "\ea84"; }
+
+.icojam_airdrop:before {
+ content: "\ea85"; }
+
+.icojam_application_delete:before {
+ content: "\ea86"; }
+
+.icojam_application_favorite:before {
+ content: "\ea87"; }
+
+.icojam_application_new:before {
+ content: "\ea88"; }
+
+.icojam_application_ready:before {
+ content: "\ea89"; }
+
+.icojam_application_remove:before {
+ content: "\ea8a"; }
+
+.icojam_battery_1:before {
+ content: "\ea8b"; }
+
+.icojam_battery_2:before {
+ content: "\ea8c"; }
+
+.icojam_battery_3:before {
+ content: "\ea8d"; }
+
+.icojam_battery_empty:before {
+ content: "\ea8e"; }
+
+.icojam_battery_full:before {
+ content: "\ea8f"; }
+
+.icojam_bell2:before {
+ content: "\ea90"; }
+
+.icojam_bucket_tool:before {
+ content: "\ea91"; }
+
+.icojam_bug:before {
+ content: "\ea92"; }
+
+.icojam_cards:before {
+ content: "\ea93"; }
+
+.icojam_chart_1:before {
+ content: "\ea94"; }
+
+.icojam_chart_2:before {
+ content: "\ea95"; }
+
+.icojam_chart_3:before {
+ content: "\ea96"; }
+
+.icojam_chart_4:before {
+ content: "\ea97"; }
+
+.icojam_chess:before {
+ content: "\ea98"; }
+
+.icojam_connect_1:before {
+ content: "\ea99"; }
+
+.icojam_connect_2:before {
+ content: "\ea9a"; }
+
+.icojam_contrast:before {
+ content: "\ea9b"; }
+
+.icojam_crop:before {
+ content: "\ea9c"; }
+
+.icojam_crop_2:before {
+ content: "\ea9d"; }
+
+.icojam_dropper_pipette:before {
+ content: "\ea9e"; }
+
+.icojam_filter:before {
+ content: "\ea9f"; }
+
+.icojam_folder_close:before {
+ content: "\eaa0"; }
+
+.icojam_folder_open:before {
+ content: "\eaa1"; }
+
+.icojam_font:before {
+ content: "\eaa2"; }
+
+.icojam_glasses:before {
+ content: "\eaa3"; }
+
+.icojam_graph_tools:before {
+ content: "\eaa4"; }
+
+.icojam_grid:before {
+ content: "\eaa5"; }
+
+.icojam_hang:before {
+ content: "\eaa6"; }
+
+.icojam_layer_order_1:before {
+ content: "\eaa7"; }
+
+.icojam_layer_order_2:before {
+ content: "\eaa8"; }
+
+.icojam_megaphone:before {
+ content: "\eaa9"; }
+
+.icojam_mirror_horizontal:before {
+ content: "\eaaa"; }
+
+.icojam_mirror_vertical:before {
+ content: "\eaab"; }
+
+.icojam_mixer2:before {
+ content: "\eaac"; }
+
+.icojam_movie_1:before {
+ content: "\eaad"; }
+
+.icojam_movie_2:before {
+ content: "\eaae"; }
+
+.icojam_movie_3:before {
+ content: "\eaaf"; }
+
+.icojam_movie_4:before {
+ content: "\eab0"; }
+
+.icojam_music_1:before {
+ content: "\eab1"; }
+
+.icojam_music_2:before {
+ content: "\eab2"; }
+
+.icojam_news_1:before {
+ content: "\eab3"; }
+
+.icojam_news_2:before {
+ content: "\eab4"; }
+
+.icojam_news_3:before {
+ content: "\eab5"; }
+
+.icojam_news_newspaper_1:before {
+ content: "\eab6"; }
+
+.icojam_news_newspaper_2:before {
+ content: "\eab7"; }
+
+.icojam_options2:before {
+ content: "\eab8"; }
+
+.icojam_palette:before {
+ content: "\eab9"; }
+
+.icojam_pattern_tool:before {
+ content: "\eaba"; }
+
+.icojam_pen2:before {
+ content: "\eabb"; }
+
+.icojam_pen_felt:before {
+ content: "\eabc"; }
+
+.icojam_pencil2:before {
+ content: "\eabd"; }
+
+.icojam_phone_1:before {
+ content: "\eabe"; }
+
+.icojam_phone_2:before {
+ content: "\eabf"; }
+
+.icojam_photo_reel:before {
+ content: "\eac0"; }
+
+.icojam_picture_portrait:before {
+ content: "\eac1"; }
+
+.icojam_pitchfork:before {
+ content: "\eac2"; }
+
+.icojam_radar_satellite_antenna:before {
+ content: "\eac3"; }
+
+.icojam_rocket:before {
+ content: "\eac4"; }
+
+.icojam_saturn:before {
+ content: "\eac5"; }
+
+.icojam_signal:before {
+ content: "\eac6"; }
+
+.icojam_signal_3:before {
+ content: "\eac7"; }
+
+.icojam_speaker_1:before {
+ content: "\eac8"; }
+
+.icojam_speaker_2:before {
+ content: "\eac9"; }
+
+.icojam_speaker_3:before {
+ content: "\eaca"; }
+
+.icojam_speaker_mute:before {
+ content: "\eacb"; }
+
+.icojam_sputnik:before {
+ content: "\eacc"; }
+
+.icojam_stamp:before {
+ content: "\eacd"; }
+
+.icojam_terminal2:before {
+ content: "\eace"; }
+
+.icojam_terminal_application:before {
+ content: "\eacf"; }
+
+.icojam_text_align_center:before {
+ content: "\ead0"; }
+
+.icojam_text_align_left:before {
+ content: "\ead1"; }
+
+.icojam_text_align_right:before {
+ content: "\ead2"; }
+
+.icojam_video_add:before {
+ content: "\ead3"; }
+
+.icojam_video_delete:before {
+ content: "\ead4"; }
+
+.icojam_video_favorite:before {
+ content: "\ead5"; }
+
+.icojam_video_pause:before {
+ content: "\ead6"; }
+
+.icojam_video_play:before {
+ content: "\ead7"; }
+
+.icojam_video_record:before {
+ content: "\ead8"; }
+
+.icojam_video_remove:before {
+ content: "\ead9"; }
+
+.icojam_video_stop:before {
+ content: "\eada"; }
+
+.icojam_video_uploaded:before {
+ content: "\eadb"; }
+
+.icojam_wi-fi_2:before {
+ content: "\eadc"; }
+
+.icojam_wi-fi_3:before {
+ content: "\eadd"; }
+
+.icojam_wi-fi_4:before {
+ content: "\eade"; }
+
+.icojam_wi-fi_5:before {
+ content: "\eadf"; }
+
+.icojam_zoom_in:before {
+ content: "\eae0"; }
+
+.icojam_zoom_out:before {
+ content: "\eae1"; }
+
+.icojam_alert:before {
+ content: "\eae2"; }
+
+.icojam_baby_boy:before {
+ content: "\eae3"; }
+
+.icojam_baby_child:before {
+ content: "\eae4"; }
+
+.icojam_baby_girl:before {
+ content: "\eae5"; }
+
+.icojam_children:before {
+ content: "\eae6"; }
+
+.icojam_couple_1:before {
+ content: "\eae7"; }
+
+.icojam_couple_2:before {
+ content: "\eae8"; }
+
+.icojam_disabled:before {
+ content: "\eae9"; }
+
+.icojam_escalator:before {
+ content: "\eaea"; }
+
+.icojam_exit_1:before {
+ content: "\eaeb"; }
+
+.icojam_exit_2:before {
+ content: "\eaec"; }
+
+.icojam_father_daughter_1:before {
+ content: "\eaed"; }
+
+.icojam_father_daughter_2:before {
+ content: "\eaee"; }
+
+.icojam_father_son_1:before {
+ content: "\eaef"; }
+
+.icojam_father_son_2:before, .icojam_NODA:before, .icojam_ODA_GNI:before, .icojam_NET_ODA_REC:before, .icojam_NET_ODA_REC_PC:before, .icojam_DT_ODA_ODAT_GN_ZS:before {
+ content: "\eaf0"; }
+
+.icojam_female:before {
+ content: "\eaf1"; }
+
+.icojam_fire_extinguisher:before {
+ content: "\eaf2"; }
+
+.icojam_firehose:before {
+ content: "\eaf3"; }
+
+.icojam_fountain_1:before {
+ content: "\eaf4"; }
+
+.icojam_human:before {
+ content: "\eaf5"; }
+
+.icojam_lift_1:before {
+ content: "\eaf6"; }
+
+.icojam_lift_2:before {
+ content: "\eaf7"; }
+
+.icojam_lift_service:before {
+ content: "\eaf8"; }
+
+.icojam_male:before {
+ content: "\eaf9"; }
+
+.icojam_mens:before {
+ content: "\eafa"; }
+
+.icojam_mother_child:before {
+ content: "\eafb"; }
+
+.icojam_mother_daughter_1:before {
+ content: "\eafc"; }
+
+.icojam_mother_daughter_2:before {
+ content: "\eafd"; }
+
+.icojam_mother_son_1:before {
+ content: "\eafe"; }
+
+.icojam_mother_son_2:before {
+ content: "\eaff"; }
+
+.icojam_parking_1:before {
+ content: "\eb00"; }
+
+.icojam_parking_2:before {
+ content: "\eb01"; }
+
+.icojam_people_crowd:before {
+ content: "\eb02"; }
+
+.icojam_pharmacy:before {
+ content: "\eb03"; }
+
+.icojam_pram:before {
+ content: "\eb04"; }
+
+.icojam_pregnant:before {
+ content: "\eb05"; }
+
+.icojam_pump_1:before {
+ content: "\eb06"; }
+
+.icojam_pump_2:before {
+ content: "\eb07"; }
+
+.icojam_registration:before {
+ content: "\eb08"; }
+
+.icojam_run_evacuation:before {
+ content: "\eb09"; }
+
+.icojam_run_exit_1:before {
+ content: "\eb0a"; }
+
+.icojam_run_exit_2:before {
+ content: "\eb0b"; }
+
+.icojam_sos:before {
+ content: "\eb0c"; }
+
+.icojam_trash_1:before {
+ content: "\eb0d"; }
+
+.icojam_trash_2:before {
+ content: "\eb0e"; }
+
+.icojam_wc_1:before {
+ content: "\eb0f"; }
+
+.icojam_wc_2:before {
+ content: "\eb10"; }
+
+.icojam_wet_floor:before {
+ content: "\eb11"; }
+
+.icojam_woman:before {
+ content: "\eb12"; }
+
+.icojam_womans:before {
+ content: "\eb13"; }
+
+.icojam_action_redo_1:before {
+ content: "\eb14"; }
+
+.icojam_action_redo_2:before {
+ content: "\eb15"; }
+
+.icojam_action_undo_1:before {
+ content: "\eb16"; }
+
+.icojam_action_undo_2:before {
+ content: "\eb17"; }
+
+.icojam_arrow_down:before {
+ content: "\eb18"; }
+
+.icojam_arrow_down-left:before {
+ content: "\eb19"; }
+
+.icojam_arrow_down-right:before {
+ content: "\eb1a"; }
+
+.icojam_arrow_left:before {
+ content: "\eb1b"; }
+
+.icojam_arrow_right:before {
+ content: "\eb1c"; }
+
+.icojam_arrow_up:before {
+ content: "\eb1d"; }
+
+.icojam_arrow_up-left:before {
+ content: "\eb1e"; }
+
+.icojam_arrow_up-right:before {
+ content: "\eb1f"; }
+
+.icojam_button_backward_1:before {
+ content: "\eb20"; }
+
+.icojam_button_backward_2:before {
+ content: "\eb21"; }
+
+.icojam_button_check_1:before {
+ content: "\eb22"; }
+
+.icojam_button_check_2:before {
+ content: "\eb23"; }
+
+.icojam_button_delete_1:before {
+ content: "\eb24"; }
+
+.icojam_button_delete_2:before {
+ content: "\eb25"; }
+
+.icojam_document_text:before {
+ content: "\eb26"; }
+
+.icojam_button_foward_2:before {
+ content: "\eb27"; }
+
+.icojam_button_minus_1:before {
+ content: "\eb28"; }
+
+.icojam_button_minus_2:before {
+ content: "\eb29"; }
+
+button_new_2:before {
+ content: "\eb2b"; }
+
+.icojam_button_pause_1:before {
+ content: "\eb2c"; }
+
+.icojam_button_pause_2:before {
+ content: "\eb2d"; }
+
+.icojam_button_play_1:before {
+ content: "\eb2e"; }
+
+.icojam_button_play_2:before {
+ content: "\eb2f"; }
+
+.icojam_button_record_1:before {
+ content: "\eb30"; }
+
+.icojam_button_record_2:before {
+ content: "\eb31"; }
+
+.icojam_button_stop_1:before {
+ content: "\eb32"; }
+
+.icojam_button_stop_2:before {
+ content: "\eb33"; }
+
+.icojam_move_1:before {
+ content: "\eb34"; }
+
+.icojam_move_2:before {
+ content: "\eb35"; }
+
+.icojam_play_consistently:before {
+ content: "\eb36"; }
+
+.icojam_play_ping_pong:before {
+ content: "\eb37"; }
+
+.icojam_play_repeat:before {
+ content: "\eb38"; }
+
+.icojam_play_repeat_all:before {
+ content: "\eb39"; }
+
+.icojam_play_shuffle:before {
+ content: "\eb3a"; }
+
+.icojam_refresh_1:before {
+ content: "\eb3b"; }
+
+.icojam_refresh_2:before {
+ content: "\eb3c"; }
+
+.icojam_rotateccw_1:before {
+ content: "\eb3d"; }
+
+.icojam_rotate_1:before {
+ content: "\eb3e"; }
+
+.icojam_rotate_2:before {
+ content: "\eb3f"; }
+
+.icojam_rotate_3:before {
+ content: "\eb40"; }
+
+.icojam_rotate_4:before {
+ content: "\eb41"; }
+
+.icojam_rotate_ccw_2:before {
+ content: "\eb42"; }
+
+.icojam_rotate_cw_1:before {
+ content: "\eb43"; }
+
+.icojam_rotate_cw_2:before {
+ content: "\eb44"; }
+
+.icojam_swap_horizontal_1:before {
+ content: "\eb45"; }
+
+.icojam_swap_vertical_1:before {
+ content: "\eb46"; }
+
+.icojam_symbol_backward:before {
+ content: "\eb47"; }
+
+.icojam_symbol_foward:before {
+ content: "\eb48"; }
+
+.icojam_symbol_pause_1:before {
+ content: "\eb49"; }
+
+.icojam_symbol_play_1:before {
+ content: "\eb4a"; }
+
+.icojam_symbol_record_1:before {
+ content: "\eb4b"; }
+
+.icojam_symbol_stop_1:before {
+ content: "\eb4c"; }
+
+.icojam_window_close:before {
+ content: "\eb4d"; }
+
+.icojam_window_fullscreen_1:before {
+ content: "\eb4e"; }
+
+.icojam_window_fullscreen_2:before {
+ content: "\eb4f"; }
+
+.icojam_attention_1:before {
+ content: "\eb50"; }
+
+.icojam_attention_2:before {
+ content: "\eb51"; }
+
+.icojam_attention_3:before {
+ content: "\eb52"; }
+
+.icojam_bomb:before {
+ content: "\eb53"; }
+
+.icojam_bonus:before {
+ content: "\eb54"; }
+
+.icojam_cancel_1:before {
+ content: "\eb55"; }
+
+.icojam_cancel_2:before {
+ content: "\eb56"; }
+
+.icojam_cord_1:before {
+ content: "\eb57"; }
+
+.icojam_cord_2:before {
+ content: "\eb58"; }
+
+.icojam_flash2:before {
+ content: "\eb59"; }
+
+.icojam_flower_1:before {
+ content: "\eb5a"; }
+
+.icojam_flower_2:before {
+ content: "\eb5b"; }
+
+.icojam_flower_3:before {
+ content: "\eb5c"; }
+
+.icojam_help_1:before {
+ content: "\eb5d"; }
+
+.icojam_help_2:before {
+ content: "\eb5e"; }
+
+.icojam_hierarchy_12:before {
+ content: "\eb5f"; }
+
+.icojam_hierarchy_22:before {
+ content: "\eb60"; }
+
+.icojam_magnet:before {
+ content: "\eb61"; }
+
+.icojam_moon:before {
+ content: "\eb62"; }
+
+.icojam_peace:before {
+ content: "\eb63"; }
+
+.icojam_pie_chart:before {
+ content: "\eb64"; }
+
+.icojam_radiation:before {
+ content: "\eb65"; }
+
+.icojam_shape_bonus:before {
+ content: "\eb66"; }
+
+.icojam_shape_circle:before {
+ content: "\eb67"; }
+
+.icojam_shape_ellipse:before {
+ content: "\eb68"; }
+
+.icojam_shape_heptagon:before {
+ content: "\eb69"; }
+
+.icojam_shape_hexagon:before {
+ content: "\eb6a"; }
+
+.icojam_shape_hexagonal_rounded:before {
+ content: "\eb6b"; }
+
+.icojam_shape_hexagonal_star:before {
+ content: "\eb6c"; }
+
+.icojam_shape_octagon:before {
+ content: "\eb6d"; }
+
+.icojam_shape_octagonal_rounded:before {
+ content: "\eb6e"; }
+
+.icojam_shape_octagonal_star:before {
+ content: "\eb6f"; }
+
+.icojam_shape_pentagon:before {
+ content: "\eb70"; }
+
+.icojam_shape_rectangle:before {
+ content: "\eb71"; }
+
+.icojam_shape_rounded:before {
+ content: "\eb72"; }
+
+.icojam_shape_seven_rounded:before {
+ content: "\eb73"; }
+
+.icojam_shape_seven_star:before {
+ content: "\eb74"; }
+
+.icojam_shape_square:before {
+ content: "\eb75"; }
+
+.icojam_shape_star:before {
+ content: "\eb76"; }
+
+.icojam_shape_triangle:before {
+ content: "\eb77"; }
+
+.icojam_stop_1:before {
+ content: "\eb78"; }
+
+.icojam_stop_2:before {
+ content: "\eb79"; }
+
+.icojam_sun2:before {
+ content: "\eb7a"; }
+
+.icojam_switcher_1:before {
+ content: "\eb7b"; }
+
+.icojam_switcher_2:before {
+ content: "\eb7c"; }
+
+.icojam_air_baloon_1:before {
+ content: "\eb7d"; }
+
+.icojam_air_baloon_2:before {
+ content: "\eb7e"; }
+
+.icojam_air_baloon_3:before {
+ content: "\eb7f"; }
+
+.icojam_airliner:before {
+ content: "\eb80"; }
+
+.icojam_ambulance:before {
+ content: "\eb81"; }
+
+.icojam_bicycle:before {
+ content: "\eb82"; }
+
+.icojam_boat:before {
+ content: "\eb83"; }
+
+.icojam_bus_1:before {
+ content: "\eb84"; }
+
+.icojam_bus_2:before {
+ content: "\eb85"; }
+
+.icojam_bus_london:before {
+ content: "\eb86"; }
+
+.icojam_cruise_ship:before {
+ content: "\eb87"; }
+
+.icojam_fighter:before {
+ content: "\eb88"; }
+
+.icojam_gas_tanker:before {
+ content: "\eb89"; }
+
+.icojam_helicopter:before {
+ content: "\eb8a"; }
+
+.icojam_motocycle:before {
+ content: "\eb8b"; }
+
+.icojam_plane2:before {
+ content: "\eb8c"; }
+
+.icojam_plane_landing:before {
+ content: "\eb8d"; }
+
+.icojam_plane_takeoff:before {
+ content: "\eb8e"; }
+
+.icojam_police_1:before {
+ content: "\eb8f"; }
+
+.icojam_police_2:before {
+ content: "\eb90"; }
+
+.icojam_railroad:before {
+ content: "\eb91"; }
+
+.icojam_rocket_1:before {
+ content: "\eb92"; }
+
+.icojam_rocket_2:before {
+ content: "\eb93"; }
+
+.icojam_ship_1:before {
+ content: "\eb94"; }
+
+.icojam_ship_2:before {
+ content: "\eb95"; }
+
+.icojam_ship_3:before {
+ content: "\eb96"; }
+
+.icojam_shuttle:before {
+ content: "\eb97"; }
+
+.icojam_sign_bus:before {
+ content: "\eb98"; }
+
+.icojam_sign_car:before {
+ content: "\eb99"; }
+
+.icojam_sign_train_1:before {
+ content: "\eb9a"; }
+
+.icojam_sign_train_2:before {
+ content: "\eb9b"; }
+
+.icojam_sign_train_3:before {
+ content: "\eb9c"; }
+
+.icojam_sign_tramway:before {
+ content: "\eb9d"; }
+
+.icojam_sign_trolley_bus:before {
+ content: "\eb9e"; }
+
+.icojam_sign_water_transport:before {
+ content: "\eb9f"; }
+
+.icojam_tank_1:before {
+ content: "\eba0"; }
+
+.icojam_tank_2:before {
+ content: "\eba1"; }
+
+.icojam_tanker:before {
+ content: "\eba2"; }
+
+.icojam_taxi:before {
+ content: "\eba3"; }
+
+.icojam_trailer:before {
+ content: "\eba4"; }
+
+.icojam_tramway:before {
+ content: "\eba5"; }
+
+.icojam_transport:before {
+ content: "\eba6"; }
+
+.icojam_trolley_bus:before {
+ content: "\eba7"; }
+
+.icojam_truck_1:before {
+ content: "\eba8"; }
+
+.icojam_truck_2:before {
+ content: "\eba9"; }
+
+.icojam_truck_3:before {
+ content: "\ebaa"; }
+
+.icojam_ufo:before {
+ content: "\ebab"; }
+
+.icojam_add_friend:before {
+ content: "\ebac"; }
+
+.icojam_best_friends:before {
+ content: "\ebad"; }
+
+.icojam_couple:before {
+ content: "\ebae"; }
+
+.icojam_delete_profile:before {
+ content: "\ebaf"; }
+
+.icojam_forefinger_down:before {
+ content: "\ebb0"; }
+
+.icojam_forefinger_left:before {
+ content: "\ebb1"; }
+
+.icojam_forefinger_right:before {
+ content: "\ebb2"; }
+
+.icojam_forefinger_up:before {
+ content: "\ebb3"; }
+
+.icojam_friends:before, .icojam_POP_TOT:before, .icojam_RUR_POP_PERC:before {
+ content: "\ebb4"; }
+
+.icojam_group:before {
+ content: "\ebb5"; }
+
+.icojam_hand_stop_1:before {
+ content: "\ebb6"; }
+
+.icojam_hand_stop_2:before {
+ content: "\ebb7"; }
+
+.icojam_man:before {
+ content: "\ebb8"; }
+
+.icojam_registered_user:before {
+ content: "\ebb9"; }
+
+.icojam_remove_friend:before {
+ content: "\ebba"; }
+
+.icojam_user:before {
+ content: "\ebbb"; }
+
+.icojam_vote_no:before {
+ content: "\ebbc"; }
+
+.icojam_vote_yes:before {
+ content: "\ebbd"; }
+
+.icojam_woman2:before {
+ content: "\ebbe"; }
+
+.icojam_cloud2:before {
+ content: "\ebbf"; }
+
+.icojam_cold:before {
+ content: "\ebc0"; }
+
+.icojam_day_cloudy:before {
+ content: "\ebc1"; }
+
+.icojam_day_lot_clouds:before {
+ content: "\ebc2"; }
+
+.icojam_day_partly_cloudy:before {
+ content: "\ebc3"; }
+
+.icojam_day_rain:before {
+ content: "\ebc4"; }
+
+.icojam_day_sunny:before {
+ content: "\ebc5"; }
+
+.icojam_flood:before {
+ content: "\ebc6"; }
+
+.icojam_fog:before {
+ content: "\ebc7"; }
+
+.icojam_hail:before {
+ content: "\ebc8"; }
+
+.icojam_hail_heavy:before {
+ content: "\ebc9"; }
+
+.icojam_hail_light:before {
+ content: "\ebca"; }
+
+.icojam_lightning:before {
+ content: "\ebcb"; }
+
+.icojam_night_cloudy:before {
+ content: "\ebcc"; }
+
+.icojam_night_lot_clouds:before {
+ content: "\ebcd"; }
+
+.icojam_night_moon:before {
+ content: "\ebce"; }
+
+.icojam_night_partly_cloudy:before {
+ content: "\ebcf"; }
+
+.icojam_night_rain:before {
+ content: "\ebd0"; }
+
+.icojam_rain:before {
+ content: "\ebd1"; }
+
+.icojam_rain_heavy:before {
+ content: "\ebd2"; }
+
+.icojam_rain_light:before {
+ content: "\ebd3"; }
+
+.icojam_rain_lightning:before {
+ content: "\ebd4"; }
+
+.icojam_snow:before {
+ content: "\ebd5"; }
+
+.icojam_snow_heavy:before {
+ content: "\ebd6"; }
+
+.icojam_snow_light:before {
+ content: "\ebd7"; }
+
+.icojam_snow_rain:before {
+ content: "\ebd8"; }
+
+.icojam_thermometer2:before {
+ content: "\ebd9"; }
+
+.icojam_thunder:before {
+ content: "\ebda"; }
+
+.icojam_tornado:before {
+ content: "\ebdb"; }
+
+.icojam_umbrella2:before {
+ content: "\ebdc"; }
+
+.icojam_water2:before {
+ content: "\ebdd"; }
+
+.icojam_wet:before {
+ content: "\ebde"; }
+
+.icojam_attach_1:before {
+ content: "\ebdf"; }
+
+.icojam_attach_2:before {
+ content: "\ebe0"; }
+
+.icojam_bag_1:before {
+ content: "\ebe1"; }
+
+.icojam_bag_2:before {
+ content: "\ebe2"; }
+
+.icojam_bag_3:before {
+ content: "\ebe3"; }
+
+.icojam_bag_4:before {
+ content: "\ebe4"; }
+
+.icojam_bag_5:before {
+ content: "\ebe5"; }
+
+.icojam_calendar_1:before {
+ content: "\ebe6"; }
+
+.icojam_calendar_2:before {
+ content: "\ebe7"; }
+
+.icojam_calendar_3:before {
+ content: "\ebe8"; }
+
+.icojam_calendar_4:before {
+ content: "\ebe9"; }
+
+.icojam_calendar_5:before {
+ content: "\ebea"; }
+
+.icojam_calendar_6:before {
+ content: "\ebeb"; }
+
+.icojam_clipboard_1:before {
+ content: "\ebec"; }
+
+.icojam_clipboard_2:before {
+ content: "\ebed"; }
+
+.icojam_clipboard_3:before {
+ content: "\ebee"; }
+
+.icojam_copy:before {
+ content: "\ebef"; }
+
+.icojam_count_delete:before {
+ content: "\ebf0"; }
+
+.icojam_count_finish:before {
+ content: "\ebf1"; }
+
+.icojam_count_new:before {
+ content: "\ebf2"; }
+
+.icojam_count_pause:before {
+ content: "\ebf3"; }
+
+.icojam_count_play:before {
+ content: "\ebf4"; }
+
+.icojam_count_remove:before {
+ content: "\ebf5"; }
+
+.icojam_count_stop:before {
+ content: "\ebf6"; }
+
+.icojam_cursor:before {
+ content: "\ebf7"; }
+
+.icojam_cut:before {
+ content: "\ebf8"; }
+
+.icojam_document_1:before {
+ content: "\ebf9"; }
+
+.icojam_document_2:before {
+ content: "\ebfa"; }
+
+.icojam_document_check:before {
+ content: "\ebfb"; }
+
+.icojam_document_delete:before {
+ content: "\ebfc"; }
+
+.icojam_document_favorite:before {
+ content: "\ebfd"; }
+
+.icojam_document_new:before {
+ content: "\ebfe"; }
+
+.icojam_document_remove:before {
+ content: "\ebff"; }
+
+.icojam_document_search:before {
+ content: "\ec00"; }
+
+.icojam_document_text2:before {
+ content: "\ec01"; }
+
+.icojam_enter:before {
+ content: "\ec02"; }
+
+.icojam_erase:before {
+ content: "\ec03"; }
+
+.icojam_eraser:before {
+ content: "\ec04"; }
+
+.icojam_exit:before {
+ content: "\ec05"; }
+
+.icojam_factory:before {
+ content: "\ec06"; }
+
+.icojam_folder:before {
+ content: "\ec07"; }
+
+.icojam_folder_1:before {
+ content: "\ec08"; }
+
+.icojam_folder_1_open:before {
+ content: "\ec09"; }
+
+.icojam_folder_2:before {
+ content: "\ec0a"; }
+
+.icojam_folder_2_open:before {
+ content: "\ec0b"; }
+
+.icojam_folder_check:before {
+ content: "\ec0c"; }
+
+.icojam_folder_delete:before {
+ content: "\ec0d"; }
+
+.icojam_folder_favorite:before {
+ content: "\ec0e"; }
+
+.icojam_folder_new:before {
+ content: "\ec0f"; }
+
+.icojam_folder_remove:before {
+ content: "\ec10"; }
+
+.icojam_folder_search:before {
+ content: "\ec11"; }
+
+.icojam_join_1:before {
+ content: "\ec12"; }
+
+.icojam_join_2:before {
+ content: "\ec13"; }
+
+.icojam_mail:before {
+ content: "\ec14"; }
+
+.icojam_paste:before {
+ content: "\ec15"; }
+
+.icojam_pen3:before {
+ content: "\ec16"; }
+
+.icojam_pencil3:before {
+ content: "\ec17"; }
+
+.icojam_pencil_write:before {
+ content: "\ec18"; }
+
+.icojam_portfolio:before {
+ content: "\ec19"; }
+
+.icojam_profile_1:before {
+ content: "\ec1a"; }
+
+.icojam_profile_2:before {
+ content: "\ec1b"; }
+
+.icojam_time:before {
+ content: "\ec1c"; }
+
+.icojam_time_favorite:before {
+ content: "\ec1d"; }
+
+/* Roboto */
+/* Roboto Import */
+/* Roboto Regular */
+@font-face {
+ font-family: 'Roboto';
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_regular/Roboto-Regular-webfont.eot");
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_regular/Roboto-Regular-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_regular/Roboto-Regular-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_regular/Roboto-Regular-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_regular/Roboto-Regular-webfont.svg#RobotoRegular") format("svg");
+ font-weight: 400;
+ font-style: normal; }
+@font-face {
+ font-family: 'Roboto';
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_bold/Roboto-Bold-webfont.eot");
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_bold/Roboto-Bold-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_bold/Roboto-Bold-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_bold/Roboto-Bold-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_bold/Roboto-Bold-webfont.svg#RobotoBold") format("svg");
+ font-weight: 700;
+ font-style: normal; }
+@font-face {
+ font-family: 'Roboto';
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_thin/Roboto-Thin-webfont.eot");
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_thin/Roboto-Thin-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_thin/Roboto-Thin-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_thin/Roboto-Thin-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_thin/Roboto-Thin-webfont.svg#RobotoThin") format("svg");
+ font-weight: 100;
+ font-style: normal; }
+@font-face {
+ font-family: 'Roboto';
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_light/Roboto-Light-webfont.eot");
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_light/Roboto-Light-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_light/Roboto-Light-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_light/Roboto-Light-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_light/Roboto-Light-webfont.svg#RobotoLight") format("svg");
+ font-weight: 300;
+ font-style: normal; }
+@font-face {
+ font-family: 'Roboto';
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_medium/Roboto-Medium-webfont.eot");
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_medium/Roboto-Medium-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_medium/Roboto-Medium-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_medium/Roboto-Medium-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_medium/Roboto-Medium-webfont.svg#RobotoMedium") format("svg");
+ font-weight: 500;
+ font-style: normal; }
+@font-face {
+ font-family: 'Roboto';
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_black/Roboto-Black-webfont.eot");
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_black/Roboto-Black-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_black/Roboto-Black-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_black/Roboto-Black-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-reg/roboto_black/Roboto-Black-webfont.svg#RobotoBold") format("svg");
+ font-weight: 900;
+ font-style: normal; }
+/* Roboto Condensed */
+@font-face {
+ font-family: 'Roboto Condensed';
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_condensed/RobotoCondensed-Regular-webfont.eot");
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_condensed/RobotoCondensed-Regular-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_condensed/RobotoCondensed-Regular-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_condensed/RobotoCondensed-Regular-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_condensed/RobotoCondensed-Regular-webfont.svg#RobotoRegular") format("svg");
+ font-weight: 400;
+ font-style: normal; }
+@font-face {
+ font-family: 'Roboto Condensed';
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_lightcondensed/RobotoCondensed-Light-webfont.eot");
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_lightcondensed/RobotoCondensed-Light-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_lightcondensed/RobotoCondensed-Light-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_lightcondensed/RobotoCondensed-Light-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_lightcondensed/RobotoCondensed-Light-webfont.svg#RobotoRegular") format("svg");
+ font-weight: 300;
+ font-style: normal; }
+@font-face {
+ font-family: 'Roboto Condensed';
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_boldcondensed/RobotoCondensed-Bold-webfont.eot");
+ src: url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_boldcondensed/RobotoCondensed-Bold-webfont.eot?#iefix") format("embedded-opentype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_boldcondensed/RobotoCondensed-Bold-webfont.woff") format("woff"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_boldcondensed/RobotoCondensed-Bold-webfont.ttf") format("truetype"), url("http://fenixrepo.fao.org/cdn/css/fenix-ui-common/css/fonts/roboto/sources/roboto-condensed/roboto_boldcondensed/RobotoCondensed-Bold-webfont.svg#RobotoRegular") format("svg");
+ font-weight: 700;
+ font-style: normal; }
+/* Font Awesome */
+/*!
+ * Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome
+ * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
+ */
+/* It is a CDN - Read the readme file in sources directory */
+/* It is a CDN - Read the readme file in sources directory */
+/* FONT PATH
+ * -------------------------- */
+@font-face {
+ font-family: 'FontAwesome';
+ src: url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.eot?v=4.2.0");
+ src: url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.eot?#iefix&v=4.2.0") format("embedded-opentype"), url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.woff?v=4.2.0") format("woff"), url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.ttf?v=4.2.0") format("truetype"), url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular") format("svg");
+ font-weight: normal;
+ font-style: normal; }
+.fa, .gt-hd-icon.gt-hd-asc, .gt-hd-icon, .gt-hd-icon.gt-hd-desc {
+ display: inline-block;
+ font: normal normal normal 14px/1 FontAwesome;
+ font-size: inherit;
+ text-rendering: auto;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale; }
+
+/* makes the font 33% larger relative to the icon container */
+.fa-lg {
+ font-size: 1.33333em;
+ line-height: 0.75em;
+ vertical-align: -15%; }
+
+.fa-2x {
+ font-size: 2em; }
+
+.fa-3x {
+ font-size: 3em; }
+
+.fa-4x {
+ font-size: 4em; }
+
+.fa-5x {
+ font-size: 5em; }
+
+.fa-fw {
+ width: 1.28571em;
+ text-align: center; }
+
+.fa-ul {
+ padding-left: 0;
+ margin-left: 2.14286em;
+ list-style-type: none; }
+ .fa-ul > li {
+ position: relative; }
+
+.fa-li {
+ position: absolute;
+ left: -2.14286em;
+ width: 2.14286em;
+ top: 0.14286em;
+ text-align: center; }
+ .fa-li.fa-lg {
+ left: -1.85714em; }
+
+.fa-border {
+ padding: .2em .25em .15em;
+ border: solid 0.08em #eee;
+ border-radius: .1em; }
+
+.pull-right {
+ float: right; }
+
+.pull-left {
+ float: left; }
+
+.fa.pull-left, .pull-left.gt-hd-icon {
+ margin-right: .3em; }
+.fa.pull-right, .pull-right.gt-hd-icon {
+ margin-left: .3em; }
+
+.fa-spin {
+ -webkit-animation: fa-spin 2s infinite linear;
+ animation: fa-spin 2s infinite linear; }
+
+@-webkit-keyframes fa-spin {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg); }
+ 100% {
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg); } }
+@keyframes fa-spin {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg); }
+ 100% {
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg); } }
+.fa-rotate-90 {
+ filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
+ -webkit-transform: rotate(90deg);
+ -ms-transform: rotate(90deg);
+ transform: rotate(90deg); }
+
+.fa-rotate-180 {
+ filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
+ -webkit-transform: rotate(180deg);
+ -ms-transform: rotate(180deg);
+ transform: rotate(180deg); }
+
+.fa-rotate-270 {
+ filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
+ -webkit-transform: rotate(270deg);
+ -ms-transform: rotate(270deg);
+ transform: rotate(270deg); }
+
+.fa-flip-horizontal {
+ filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0);
+ -webkit-transform: scale(-1, 1);
+ -ms-transform: scale(-1, 1);
+ transform: scale(-1, 1); }
+
+.fa-flip-vertical {
+ filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
+ -webkit-transform: scale(1, -1);
+ -ms-transform: scale(1, -1);
+ transform: scale(1, -1); }
+
+:root .fa-rotate-90,
+:root .fa-rotate-180,
+:root .fa-rotate-270,
+:root .fa-flip-horizontal,
+:root .fa-flip-vertical {
+ filter: none; }
+
+.fa-stack {
+ position: relative;
+ display: inline-block;
+ width: 2em;
+ height: 2em;
+ line-height: 2em;
+ vertical-align: middle; }
+
+.fa-stack-1x, .fa-stack-2x {
+ position: absolute;
+ left: 0;
+ width: 100%;
+ text-align: center; }
+
+.fa-stack-1x {
+ line-height: inherit; }
+
+.fa-stack-2x {
+ font-size: 2em; }
+
+.fa-inverse {
+ color: #fff; }
+
+/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
+ readers do not read off random characters that represent icons */
+.fa-search:before {
+ content: ""; }
+
+.fa-th:before {
+ content: ""; }
+
+.fa-th-list:before {
+ content: ""; }
+
+.fa-home:before {
+ content: ""; }
+
+.fa-clock-o:before {
+ content: ""; }
+
+.fa-refresh:before {
+ content: ""; }
+
+.fa-lock:before {
+ content: ""; }
+
+.fa-barcode:before {
+ content: ""; }
+
+.fa-map-marker:before {
+ content: ""; }
+
+.fa-calendar:before {
+ content: ""; }
+
+.fa-twitter-square:before {
+ content: ""; }
+
+.fa-facebook-square:before {
+ content: ""; }
+
+.fa-globe:before {
+ content: ""; }
+
+.fa-wrench:before {
+ content: ""; }
+
+.fa-google-plus-square:before {
+ content: ""; }
+
+.fa-google-plus:before {
+ content: ""; }
+
+.fa-caret-down:before, .gt-hd-icon.gt-hd-desc:before {
+ content: ""; }
+
+.fa-caret-up:before, .gt-hd-icon.gt-hd-asc:before {
+ content: ""; }
+
+.fa-caret-left:before {
+ content: ""; }
+
+.fa-caret-right:before {
+ content: ""; }
+
+.fa-sort:before, .gt-hd-icon:before {
+ content: ""; }
+
+.fa-rss-square:before {
+ content: ""; }
+
+.fa-slack:before {
+ content: ""; }
+
+.fa-database:before {
+ content: ""; }
+
+/* Fenix Typography */
+.truncate {
+ white-space: nowrap;
+ overflow: hidden;
+ text-overflow: ellipsis; }
+
+/* Fenix - Reset */
+/* Components */
+/* Fenix - Components Index */
+/* Fenix - Buttons Component */
+/** avoid dotted lines when clicking on button**/
+input[type="button"] {
+ outline: none; }
+
+button:focus {
+ outline: 0;
+ outline: none; }
+
+button:active {
+ outline: 0;
+ outline: none; }
+
+.btn:focus, .btn:active, .btn:active:focus {
+ outline: none; }
+
+input[type="button"]::-moz-focus-inner {
+ border: 0; }
+
+/** end of **/
+.btn-round {
+ padding: 3px;
+ height: 24px;
+ -webkit-border-radius: 50%;
+ -moz-border-radius: 50%;
+ -ms-border-radius: 50%;
+ border-radius: 50%; }
+ .btn-round:last-child:not(:first-child), .btn-round:not(:first-child) {
+ -webkit-border-radius: 50%;
+ -moz-border-radius: 50%;
+ -ms-border-radius: 50%;
+ border-radius: 50%; }
+
+/* Visualization Box btns */
+.btn-default.meta-btn {
+ background-color: #999999;
+ font-size: 11px;
+ color: white;
+ padding: 1px 5px;
+ border-color: transparent;
+ -webkit-border-radius: 5px;
+ -moz-border-radius: 5px;
+ -ms-border-radius: 5px;
+ border-radius: 5px; }
+ .btn-default.meta-btn:hover {
+ background-color: #b3b3b3;
+ border-color: transparent; }
+
+/* Fenix UI Catalog */
+.fx-catalog-welcome {
+ text-align: center;
+ max-width: 300px;
+ position: absolute;
+ left: 50%;
+ top: 50%;
+ -ms-transform: translate(-50%, -50%);
+ -webkit-transform: translate(-50%, -50%);
+ transform: translate(-50%, -50%); }
+ .fx-catalog-welcome .catalog-ico {
+ height: 50px;
+ width: 50px; }
+ .fx-catalog-welcome h1 {
+ margin-top: 10px; }
+
+/* Packery */
+.fx-catalog-form-module {
+ width: 50%;
+ border: 10px solid #f1f1f1; }
+
+.fx-catalog-form-module.fit {
+ width: 100%; }
+
+.fx_result_description_title {
+ text-transform: uppercase;
+ display: inline; }
+
+.fx_result_description_source {
+ display: inline;
+ color: #999999; }
+
+.fx_result_description_source:before {
+ content: "-"; }
+
+.fx_result_description_baseperiod {
+ font-style: italic;
+ font-size: 10px; }
+
+.fenix-result {
+ width: 100%;
+ background-color: white;
+ border: 1px solid #D2D0D0;
+ -webkit-border-radius: 0;
+ -moz-border-radius: 0;
+ -ms-border-radius: 0;
+ border-radius: 0;
+ margin-bottom: 20px;
+ padding: 19px 0 16px 19px; }
+
+/*========= HEADER =========*/
+.fx-catalog-header {
+ text-align: center;
+ background-color: #f1f1f1; }
+ .fx-catalog-header em {
+ font: normal normal 400 10px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
+
+.fx-catalog-header-btn {
+ cursor: pointer; }
+
+/*========= FILTER CONTAINER =========*/
+.fx-catalog-modular-filter-container {
+ background-color: #f1f1f1;
+ min-height: 250px;
+ overflow: hidden; }
+
+/*========= MODULAR MENU =========*/
+.fx-catalog-modular-menu-container {
+ background-color: #f1f1f1;
+ padding: 0;
+ min-height: 250px; }
+
+.fx-catalog-modular-menu-category-plus {
+ position: absolute;
+ top: 0;
+ height: 15px;
+ width: 15px;
+ background: url("../../submodules/fenix-ui-common//css/img/fenix-catalog-sprite-small.svg") no-repeat -90px 0;
+ background-size: 150px 30px; }
+
+.fx-catalog-mod-timerseries {
+ top: 25px; }
+
+.region-css {
+ height: 100%;
+ position: relative; }
+
+.jstree-holder {
+ height: 209px;
+ overflow-y: auto; }
+
+.fx_result_icon {
+ font-size: 30px; }
+
+/*========= RESULTS */
+/*========= COMMONS =========*/
+.fx_horegon {
+ display: inline; }
+
+.fx_result_icon_img {
+ width: 42px; }
+
+#fx-catalog-results {
+ margin-top: 20px; }
+
+.fx-analysis-page-title {
+ font-weight: 100;
+ color: #333333; }
+
+.fx-analysis-page-description {
+ color: #333333; }
+
+.well {
+ background-color: transparent;
+ border: none;
+ -webkit-box-shadow: 0 0 0 white;
+ -moz-box-shadow: 0 0 0 white;
+ box-shadow: 0 0 0 white; }
+
+.fx-catalog-toolbar {
+ color: #333333; }
+ .fx-catalog-toolbar .fx-widget-stack-btns {
+ text-align: right; }
+ .fx-catalog-toolbar .fx-widget-stack-btns em {
+ font-style: normal;
+ background-color: #333333;
+ width: 30px;
+ height: 20px;
+ display: inline-block;
+ color: white;
+ text-align: center;
+ -webkit-border-radius: 3px;
+ -moz-border-radius: 3px;
+ -ms-border-radius: 3px;
+ border-radius: 3px; }
+ .fx-catalog-toolbar .fx-widget-stack-btns input {
+ margin-left: 33px; }
+
+/* Fenix - Circle Number Component */
+.fx-circle-number {
+ color: white;
+ display: inline-block;
+ font: normal normal 500 14px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
+ height: 20px;
+ width: 20px;
+ line-height: 20px;
+ text-align: center;
+ background-color: #2686ba;
+ -webkit-border-radius: 100%;
+ -moz-border-radius: 100%;
+ -ms-border-radius: 100%;
+ border-radius: 100%;
+ -ms-transform: translate(0, -50%);
+ -webkit-transform: translate(0, -50%);
+ transform: translate(0, -50%); }
+
+/* Fenix Color Reference */
+.color-main {
+ background-color: #2686ba; }
+
+.color-main-light-10 {
+ background-color: #3ca1d7; }
+
+/* Fenix Datepicker - Components */
+.datepicker {
+ font-size: 12px; }
+ .datepicker .datepicker-days .day {
+ -webkit-border-radius: 0;
+ -moz-border-radius: 0;
+ -ms-border-radius: 0;
+ border-radius: 0; }
+ .datepicker .datepicker-days .day.active {
+ background-color: #2686ba; }
+ .datepicker .datepicker-days .day.today:before {
+ border-bottom-color: #2686ba; }
+ .datepicker .datepicker-days .day.active.today:before {
+ border-bottom-color: white; }
+
+.dropdown-submenu {
+ position: relative; }
+
+.dropdown-submenu > .dropdown-menu {
+ top: 0;
+ left: 100%;
+ margin-top: -6px;
+ margin-left: -1px;
+ -webkit-border-radius: 0 6px 6px 6px;
+ -moz-border-radius: 0 6px 6px;
+ border-radius: 0 6px 6px 6px; }
+
+.dropdown-submenu:hover > .dropdown-menu {
+ display: block; }
+
+.dropdown-submenu > a:after {
+ display: block;
+ content: " ";
+ float: right;
+ width: 0;
+ height: 0;
+ border-color: transparent;
+ border-style: solid;
+ border-width: 5px 0 5px 5px;
+ border-left-color: #ccc;
+ margin-top: 5px;
+ margin-right: -10px; }
+
+.dropdown-submenu:hover > a:after {
+ border-left-color: #fff; }
+
+.dropdown-submenu.pull-left {
+ float: none; }
+
+.dropdown-submenu.pull-left > .dropdown-menu {
+ left: -100%;
+ margin-left: 10px;
+ -webkit-border-radius: 6px 0 6px 6px;
+ -moz-border-radius: 6px 0 6px 6px;
+ border-radius: 6px 0 6px 6px; }
+
+/* Fenix - Fieldset Component */
+fieldset {
+ border: 0; }
+ fieldset .fx-fieldset-subtitle label {
+ font-size: 12px; }
+
+/* Fenix Filter Tab */
+[data-plugin="filter"] .btn {
+ width: 150px; }
+[data-plugin="filter"] .fx-catalog-modular-form-holder {
+ border-color: transparent;
+ position: relative; }
+ [data-plugin="filter"] .fx-catalog-modular-form-holder:before {
+ content: '';
+ height: 1px;
+ width: calc(100% + 30px);
+ display: block;
+ background-color: #dddddd;
+ position: relative;
+ top: -13px;
+ left: -23px; }
+[data-plugin="filter"] .jstree-holder {
+ height: 100px; }
+[data-plugin="filter"] .fx-catalog-modular-form-label {
+ font-size: 14px;
+ left: 0; }
+[data-plugin="filter"] input[type="search"] {
+ -moz-border-radius-topleft: 0;
+ -webkit-border-top-left-radius: 0;
+ border-top-left-radius: 0;
+ -moz-border-radius-topright: 0;
+ -webkit-border-top-right-radius: 0;
+ border-top-right-radius: 0;
+ -moz-border-radius-bottomright: 0;
+ -webkit-border-bottom-right-radius: 0;
+ border-bottom-right-radius: 0;
+ -moz-border-radius-bottomleft: 0;
+ -webkit-border-bottom-left-radius: 0;
+ border-bottom-left-radius: 0;
+ -webkit-border-radius: 0;
+ -moz-border-radius: 0;
+ -ms-border-radius: 0;
+ border-radius: 0;
+ height: 20px;
+ margin-bottom: 3px;
+ position: absolute;
+ top: -27px;
+ width: 70%;
+ right: 25px;
+ background-color: transparent;
+ border: 1px solid #D2D0D0; }
+[data-plugin="filter"] form {
+ position: relative; }
+ [data-plugin="filter"] form:before {
+ content: "\e003";
+ font-family: 'Glyphicons Halflings';
+ position: absolute;
+ top: -23px;
+ left: calc(100% - 17px);
+ display: inline-block;
+ font-style: normal;
+ font-weight: 400;
+ line-height: 1;
+ -webkit-font-smoothing: antialiased;
+ color: #D2D0D0; }
+[data-plugin="filter"] .fx-filter-form-module.fit {
+ width: 100%; }
+
+.inside-full-height {
+ /*
+ // if you want to give content full height give him height: 100%;
+ // with content full height you can't apply margins to the content
+ // content full height does not work in ie http://stackoverflow.com/questions/27384433/ie-display-table-cell-child-ignores-height-100
+ */
+ height: 100%;
+ margin-top: 0;
+ margin-bottom: 0; }
+
+.content {
+ padding: 12px 3px; }
+
+/* columns of same height styles */
+.row-height {
+ display: table;
+ table-layout: fixed;
+ height: 100%;
+ width: 100%; }
+
+.col-height {
+ display: table-cell;
+ float: none;
+ height: 100%; }
+
+.col-top {
+ vertical-align: top; }
+
+.col-middle {
+ vertical-align: middle; }
+
+.col-bottom {
+ vertical-align: bottom; }
+
+@media (min-width: 480px) {
+ .row-xs-height {
+ display: table;
+ table-layout: fixed;
+ height: 100%;
+ width: 100%; }
+
+ .col-xs-height {
+ display: table-cell;
+ float: none;
+ height: 100%; }
+
+ .col-xs-top {
+ vertical-align: top; }
+
+ .col-xs-middle {
+ vertical-align: middle; }
+
+ .col-xs-bottom {
+ vertical-align: bottom; } }
+@media (min-width: 768px) {
+ .row-sm-height {
+ display: table;
+ table-layout: fixed;
+ height: 100%;
+ width: 100%; }
+
+ .col-sm-height {
+ display: table-cell;
+ float: none;
+ height: 100%; }
+
+ .col-sm-top {
+ vertical-align: top; }
+
+ .col-sm-middle {
+ vertical-align: middle; }
+
+ .col-sm-bottom {
+ vertical-align: bottom; } }
+@media (min-width: 992px) {
+ .row-md-height {
+ display: table;
+ table-layout: fixed;
+ height: 100%;
+ width: 100%; }
+
+ .col-md-height {
+ display: table-cell;
+ float: none;
+ height: 100%; }
+
+ .col-md-top {
+ vertical-align: top; }
+
+ .col-md-middle {
+ vertical-align: middle; }
+
+ .col-md-bottom {
+ vertical-align: bottom; } }
+@media (min-width: 1200px) {
+ .row-lg-height {
+ display: table;
+ table-layout: fixed;
+ height: 100%;
+ width: 100%; }
+
+ .col-lg-height {
+ display: table-cell;
+ float: none;
+ height: 100%; }
+
+ .col-lg-top {
+ vertical-align: top; }
+
+ .col-lg-middle {
+ vertical-align: middle; }
+
+ .col-lg-bottom {
+ vertical-align: bottom; } }
+/* Fenix Icons */
+.fx-icon, [data-selector-time] [data-action="previous"] span, [data-selector-time] [data-action="next"] span {
+ height: 15px;
+ width: 15px;
+ display: inline-block;
+ background-image: url("../../submodules/fenix-ui-common//css/img/fenix-catalog-sprite-small.svg");
+ background-repeat: no-repeat;
+ background-size: 150px 30px; }
+
+.fx-icon-close {
+ background-position: 0 -15px; }
+
+/* Fenix - Inputs Component */
+/* remove x icon in IE 10+ */
+input[type=text]::-ms-clear {
+ display: none; }
+
+/* Input Placeholder*/
+.form-control::-webkit-input-placeholder {
+ /* WebKit browsers */
+ opacity: .5; }
+
+.form-control:-moz-placeholder {
+ /* Mozilla Firefox 4 to 18 */
+ opacity: .5; }
+
+.form-control::-moz-placeholder {
+ /* Mozilla Firefox 19+ */
+ opacity: .5; }
+
+.form-control:-ms-input-placeholder {
+ /* Internet Explorer 10+ */
+ opacity: .5; }
+
+/*iOS switch like */
+.toggle-wrapper .toggle-text {
+ display: inline-block;
+ color: #999999;
+ font-size: 10px;
+ margin: 0;
+ position: relative;
+ top: -5px;
+ left: 2px; }
+.toggle-wrapper input[data-type="switch"] + label {
+ display: inline-block;
+ position: relative;
+ box-shadow: inset 0 0 0px 1px #d5d5d5;
+ text-indent: -5000px;
+ height: 15px;
+ width: 25px;
+ border-radius: 15px; }
+.toggle-wrapper input[data-type="switch"] + label:before {
+ content: "";
+ position: absolute;
+ display: block;
+ height: 15px;
+ width: 15px;
+ top: 0;
+ left: 0;
+ border-radius: 15px;
+ background: rgba(19, 191, 17, 0);
+ -moz-transition: .25s ease-in-out;
+ -webkit-transition: .25s ease-in-out;
+ transition: .25s ease-in-out; }
+.toggle-wrapper input[data-type="switch"] + label:after {
+ content: "";
+ position: absolute;
+ display: block;
+ height: 15px;
+ width: 15px;
+ top: 0;
+ left: 0px;
+ border-radius: 15px;
+ background: white;
+ box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2), 0 2px 4px rgba(0, 0, 0, 0.2);
+ -moz-transition: .25s ease-in-out;
+ -webkit-transition: .25s ease-in-out;
+ transition: .25s ease-in-out; }
+.toggle-wrapper input[data-type="switch"]:checked + label:before {
+ width: 20px;
+ background: #13bf11;
+ border-width: 0; }
+.toggle-wrapper input[data-type="switch"]:checked + label:after {
+ left: 10px;
+ box-shadow: inset 0 0 0 1px #13bf11, 0 2px 4px rgba(0, 0, 0, 0.2); }
+
+/* Fenix - Labels Component */
+label {
+ font: normal normal 300 12px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
+
+/* Fenix - Legend Component */
+legend {
+ color: #333333;
+ cursor: pointer;
+ border: 0;
+ font-size: 12px; }
+ legend label {
+ font-size: 12px;
+ cursor: pointer; }
+
+/* Metadata Viewer */
+.fx-md-viewer-wrapper {
+ font-size: 12px; }
+ .fx-md-viewer-wrapper .fx-md-viewer-title {
+ margin-top: 10px;
+ margin-bottom: 20px;
+ font-size: 18px; }
+ .fx-md-viewer-wrapper .fx-md-viewer-container {
+ width: 100%; }
+ .fx-md-viewer-wrapper th, .fx-md-viewer-wrapper td {
+ border-bottom: 1px solid #e5e5e5;
+ height: 25px;
+ padding: 5px 0; }
+ .fx-md-viewer-wrapper .treegrid-expander {
+ top: 3px;
+ cursor: pointer; }
+ .fx-md-viewer-wrapper .metadata-viewer-title {
+ width: 30%;
+ font-size: 12px;
+ font-weight: 500;
+ padding-right: 25px;
+ cursor: pointer; }
+ .fx-md-viewer-wrapper .metadata-viewer-title .fx-md-viewer-description {
+ top: 3px;
+ cursor: pointer;
+ opacity: 0;
+ -webkit-transition: all 0.3s ease 0s;
+ -moz-transition: all 0.3s ease 0s;
+ -ms-transition: all 0.3s ease 0s;
+ -o-transition: all 0.3s ease 0s;
+ transition: all 0.3s ease 0s; }
+ .fx-md-viewer-wrapper .metadata-viewer-title:hover .fx-md-viewer-description {
+ opacity: 1;
+ -webkit-transition: all 0.3s ease 0s;
+ -moz-transition: all 0.3s ease 0s;
+ -ms-transition: all 0.3s ease 0s;
+ -o-transition: all 0.3s ease 0s;
+ transition: all 0.3s ease 0s; }
+ .fx-md-viewer-wrapper .metadata-viewer-value {
+ width: 70%;
+ font-size: 12px; }
+ .fx-md-viewer-wrapper .popover-title {
+ background-color: transparent; }
+ .fx-md-viewer-wrapper .popover-title .text-info {
+ color: #2686ba; }
+
+/* Fenix - Modular Form Component */
+.fx-catalog-modular-form-holder {
+ -moz-border-bottom-colors: none;
+ -moz-border-left-colors: none;
+ -moz-border-right-colors: none;
+ -moz-border-top-colors: none;
+ background-color: white;
+ border-color: #D2D0D0;
+ border-image: none;
+ -webkit-border-radius: 0;
+ -moz-border-radius: 0;
+ -ms-border-radius: 0;
+ border-radius: 0;
+ border-style: solid;
+ border-width: 1px 1px 2px;
+ margin: 10px 0 20px;
+ padding: 20px;
+ width: auto;
+ padding: 5px;
+ margin: 0; }
+
+.fx-catalog-modular-form-wrapper {
+ padding-right: 0;
+ /*overflow: hidden;*/
+ min-height: 250px;
+ position: relative;
+ background-color: #f1f1f1; }
+
+.fx-catalog-modular-form-header {
+ position: relative;
+ height: 30px; }
+
+.fx-catalog-modular-form-handler {
+ position: absolute;
+ left: 7px;
+ top: 7px;
+ height: 15px;
+ width: 15px;
+ background: url("../../submodules/fenix-ui-common//css/img/fenix-catalog-sprite-small.svg") no-repeat -15px 0;
+ background-size: 150px 30px;
+ cursor: pointer; }
+
+.fx-catalog-modular-form-close-btn {
+ position: absolute;
+ top: 7px;
+ right: 7px;
+ height: 15px;
+ width: 15px;
+ background: url("../../submodules/fenix-ui-common//css/img/fenix-catalog-sprite-small.svg") no-repeat -45px 0;
+ background-size: 150px 30px;
+ cursor: pointer; }
+
+.fx-catalog-modular-form-resize-btn {
+ position: absolute;
+ top: 7px;
+ right: 28px;
+ height: 15px;
+ width: 15px;
+ background: url("../../submodules/fenix-ui-common//css/img/fenix-catalog-sprite-small.svg") no-repeat -30px 0;
+ background-size: 150px 30px;
+ cursor: pointer; }
+
+.fx-catalog-modular-form-label {
+ position: absolute;
+ top: 4px;
+ left: 30px;
+ font-weight: 300;
+ color: #5e7582; }
+
+.fx-catalog-modular-form-content {
+ padding: 10px 10px 10px 10px;
+ height: 100px; }
+
+div[data-module] .fx-catalog-modular-form-content {
+ height: 173px; }
+
+div[data-module="region"] .fx-catalog-modular-form-content {
+ height: 263px; }
+
+div[data-module="referencePeriod"] .fx-catalog-modular-form-content {
+ height: 263px; }
+
+div[data-module="sector"] .fx-catalog-modular-form-content {
+ height: 263px; }
+
+/* Fenix - Navigation Component */
+.navbar {
+ border: 0;
+ border-width: 0; }
+
+.nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
+ border-color: #2686ba; }
+
+.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus {
+ background-color: transparent;
+ color: #333333; }
+
+.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
+ color: #2686ba; }
+
+/* Fenix - Object Box Component */
+.obj-box, .obj-box-radius10, .obj-box-title {
+ -moz-border-bottom-colors: none;
+ -moz-border-left-colors: none;
+ -moz-border-right-colors: none;
+ -moz-border-top-colors: none;
+ background-color: white;
+ border-color: #D2D0D0;
+ border-image: none;
+ -webkit-border-radius: 0;
+ -moz-border-radius: 0;
+ -ms-border-radius: 0;
+ border-radius: 0;
+ border-style: solid;
+ border-width: 1px 1px 2px;
+ margin: 10px 0 20px;
+ padding: 20px;
+ width: auto; }
+
+.obj-box-radius10 {
+ -webkit-border-radius: 10px;
+ -moz-border-radius: 10px;
+ -ms-border-radius: 10px;
+ border-radius: 10px; }
+
+.obj-box-title {
+ padding-top: 5px; }
+ .obj-box-title h4 {
+ color: #2686ba;
+ font: normal normal 300 11px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
+
+/* Fenix - Panel Component */
+.panel-group {
+ margin-bottom: 0px; }
+ .panel-group .panel {
+ -webkit-border-radius: 0;
+ -moz-border-radius: 0;
+ -ms-border-radius: 0;
+ border-radius: 0;
+ background-color: transparent;
+ border: none;
+ border-bottom: 1px solid #D2D0D0; }
+ .panel-group .panel-default {
+ -webkit-box-shadow: none;
+ -moz-box-shadow: none;
+ box-shadow: none; }
+ .panel-group .panel-default:last-child {
+ border-bottom-width: 0px; }
+ .panel-group .panel-heading {
+ background-color: transparent;
+ -webkit-border-radius: 0;
+ -moz-border-radius: 0;
+ -ms-border-radius: 0;
+ border-radius: 0;
+ padding: 10px; }
+ .panel-group .panel-heading .panel-title {
+ font: normal normal 300 16px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
+ .panel-group .panel-heading .panel-title a {
+ color: #333333;
+ text-transform: uppercase; }
+ .panel-group .panel-heading .panel-title a:hover {
+ text-decoration: none; }
+ .panel-group .panel-heading .panel-title a:active {
+ text-decoration: none; }
+ .panel-group .panel-heading .panel-title a:focus {
+ text-decoration: none; }
+ .panel-group .panel-heading.fx-active-panel .panel-title a {
+ color: #2686ba; }
+ .panel-group .panel-body .btn {
+ background-color: transparent;
+ color: #333333;
+ border-color: transparent;
+ font: normal normal 300 12px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
+ text-align: left;
+ position: relative; }
+ .panel-group .panel-body .btn:hover {
+ background-color: transparent;
+ color: #333333;
+ border-color: transparent; }
+ .panel-group .panel-body .btn:active {
+ background-color: transparent;
+ color: #333333;
+ border-color: transparent;
+ -webkit-box-shadow: 0 0 0 white;
+ -moz-box-shadow: 0 0 0 white;
+ box-shadow: 0 0 0 white; }
+ .panel-group .panel-body .btn span.fa, .panel-group .panel-body .btn span.gt-hd-icon {
+ margin-right: 10px; }
+
+.fx-panel-plus, .fx-panel-minus, .fx-panel-required {
+ display: inline-block;
+ margin-right: 25px; }
+
+.fx-panel-plus {
+ height: 15px;
+ width: 15px;
+ background: url("../../submodules/fenix-ui-common//css/img/fenix-catalog-sprite-small.svg") no-repeat -90px 0;
+ background-size: 150px 30px; }
+
+.fx-panel-minus {
+ height: 15px;
+ width: 15px;
+ background: url("../../submodules/fenix-ui-common//css/img/fenix-catalog-sprite-small.svg") no-repeat -90px -15px;
+ background-size: 150px 30px; }
+
+.fx-panel-info {
+ height: 15px;
+ width: 15px;
+ background: url("../../submodules/fenix-ui-common//css/img/fenix-catalog-sprite-small.svg") no-repeat 0 0;
+ background-size: 150px 30px;
+ float: right; }
+
+.fx-panel-required {
+ height: 15px;
+ width: 15px;
+ background: url("../../submodules/fenix-ui-common//css/img/fenix-catalog-sprite-small.svg") no-repeat -15px -15px;
+ background-size: 150px 30px; }
+
+.fx-panel-ok {
+ height: 15px;
+ width: 15px;
+ background: url("../../submodules/fenix-ui-common//css/img/fenix-catalog-sprite-small.svg") no-repeat -45px -15px;
+ background-size: 150px 30px; }
+
+.fx-panel-remove {
+ height: 15px;
+ width: 15px;
+ background: url("../../submodules/fenix-ui-common//css/img/fenix-catalog-sprite-small.svg") no-repeat -60px -15px;
+ background-size: 150px 30px; }
+
+.fx-panel-refresh {
+ height: 15px;
+ width: 15px;
+ background: url("../../submodules/fenix-ui-common//css/img/fenix-catalog-sprite-small.svg") no-repeat -75px -15px;
+ background-size: 150px 30px; }
+
+.metadata-container .btn {
+ min-width: 0;
+ border-color: transparent; }
+ .metadata-container .btn:link, .metadata-container .btn:visited, .metadata-container .btn:hover, .metadata-container .btn:focus, .metadata-container .btn:active {
+ border-color: transparent; }
+.metadata-container .form-control {
+ -moz-border-radius-topleft: 0;
+ -webkit-border-top-left-radius: 0;
+ border-top-left-radius: 0;
+ -moz-border-radius-topright: 0;
+ -webkit-border-top-right-radius: 0;
+ border-top-right-radius: 0;
+ -moz-border-radius-bottomright: 0;
+ -webkit-border-bottom-right-radius: 0;
+ border-bottom-right-radius: 0;
+ -moz-border-radius-bottomleft: 0;
+ -webkit-border-bottom-left-radius: 0;
+ border-bottom-left-radius: 0;
+ -webkit-border-radius: 0;
+ -moz-border-radius: 0;
+ -ms-border-radius: 0;
+ border-radius: 0; }
+.metadata-container .btn-success, .metadata-container .btn-warning {
+ border-color: #2686ba; }
+
+/* Fenix Popover Component */
+.popover {
+ width: 200px; }
+
+/* Radio Buttons */
+input[type="radio"] {
+ display: none; }
+
+input[type="radio"] + label {
+ cursor: pointer;
+ margin: 0 7px;
+ font-weight: normal; }
+ input[type="radio"] + label:before {
+ content: '';
+ display: inline-block;
+ height: 15px;
+ width: 15px;
+ background-color: #bdbdbd;
+ -webkit-border-radius: 100%;
+ -moz-border-radius: 100%;
+ -ms-border-radius: 100%;
+ border-radius: 100%;
+ border: 0 solid #2686ba;
+ position: relative;
+ top: 2px;
+ left: -4px; }
+
+input[type="radio"]:checked + label {
+ color: #2686ba; }
+ input[type="radio"]:checked + label:before {
+ border-width: 5px; }
+
+input[type="radio"] + label:before,
+input[type="radio"]:checked + label:before {
+ -webkit-transition: all 0.3s ease 0s;
+ -moz-transition: all 0.3s ease 0s;
+ -ms-transition: all 0.3s ease 0s;
+ -o-transition: all 0.3s ease 0s;
+ transition: all 0.3s ease 0s; }
+
+/* Checkbox Buttons */
+input[type="checkbox"] {
+ display: none; }
+
+input[type="checkbox"] + label {
+ cursor: pointer;
+ margin: 0 7px;
+ font-weight: normal; }
+ input[type="checkbox"] + label:before {
+ content: '';
+ display: inline-block;
+ height: 15px;
+ width: 15px;
+ background-color: #bdbdbd;
+ border: 0 solid #2686ba;
+ position: relative;
+ top: 2px;
+ left: -4px; }
+
+input[type="checkbox"]:checked + label {
+ color: #2686ba; }
+ input[type="checkbox"]:checked + label:before {
+ border-width: 5px; }
+
+input[type="checkbox"] + label:before,
+input[type="checkbox"]:checked + label:before {
+ -webkit-transition: all 0.3s ease 0s;
+ -moz-transition: all 0.3s ease 0s;
+ -ms-transition: all 0.3s ease 0s;
+ -o-transition: all 0.3s ease 0s;
+ transition: all 0.3s ease 0s; }
+
+/* Disabled */
+input[type="checkbox"]:disabled + label,
+input[type="radio"]:disabled + label {
+ cursor: no-drop;
+ opacity: 0.4; }
+ input[type="checkbox"]:disabled + label:before,
+ input[type="radio"]:disabled + label:before {
+ cursor: no-drop;
+ opacity: 0.4; }
+
+/* Fenix Range Slider */
+.ui-rangeSlider-innerBar {
+ height: 3px !important;
+ top: 7px !important;
+ background-color: #D2D0D0 !important; }
+
+.ui-rangeSlider-arrow.ui-rangeSlider-leftArrow {
+ background: url(img/arrow-left-on.svg) no-repeat !important;
+ width: 48px;
+ height: 48px;
+ background-position: -16px -15px !important; }
+
+.ui-rangeSlider-arrow.ui-rangeSlider-rightArrow {
+ background: url(img/arrow-right-on.svg) no-repeat !important;
+ width: 48px;
+ height: 48px;
+ background-position: 16px -15px !important; }
+
+.ui-rangeSlider-label.ui-rangeSlider-rightLabel {
+ background-image: url("img/label.png") !important;
+ margin-bottom: 5px !important; }
+
+.ui-rangeSlider-label.ui-rangeSlider-leftLabel {
+ background-image: url("img/label.png") !important;
+ margin-bottom: 5px !important; }
+
+.ui-rangeSlider-label-value {
+ font-size: 12px;
+ font-weight: 500; }
+
+.ui-rangeSlider-leftHandle, .ui-rangeSlider-rightHandle {
+ width: 20px !important;
+ height: 20px !important;
+ background-color: #2686ba !important;
+ -webkit-border-radius: 100%;
+ -moz-border-radius: 100%;
+ -ms-border-radius: 100%;
+ border-radius: 100%; }
+
+.ui-rangeSlider-bar {
+ background-color: #2686ba !important;
+ margin-top: 8px !important;
+ height: 5px !important; }
+
+/* Fenix - Resume Bar Component */
+.fx-resume-bar {
+ padding-right: 150px;
+ background-color: #f1f1f1;
+ position: relative; }
+
+#fx-resume {
+ background-color: white;
+ padding-top: 20px;
+ min-height: 60px; }
+
+.fx-resume-title {
+ color: #2686ba;
+ padding-left: 15px;
+ padding-top: 5px;
+ font: normal normal 400 10px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
+ position: absolute;
+ top: 0; }
+
+.fx-resume-noitem {
+ padding-left: 15px;
+ position: absolute;
+ top: 15px; }
+
+#fx-catalog-submit-btn {
+ color: white;
+ text-transform: uppercase;
+ background-color: #2686ba;
+ width: 150px;
+ position: absolute;
+ bottom: 0;
+ right: 0;
+ -webkit-border-radius: 0;
+ -moz-border-radius: 0;
+ -ms-border-radius: 0;
+ border-radius: 0; }
+ #fx-catalog-submit-btn.disabled {
+ background-color: #f1f1f1;
+ opacity: 1;
+ border-color: #333333;
+ color: #333333; }
+
+.fx-resume-item-selected {
+ position: relative;
+ border-top: 5px solid white;
+ border-bottom: 5px solid white; }
+ .fx-resume-item-selected .fx-resume-module-title {
+ display: inline-block;
+ width: 20%;
+ padding-left: 15px; }
+ .fx-resume-item-selected .fx-resume-module-title em {
+ font: normal normal 400 10px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
+ color: #2686ba;
+ font-size: 12px;
+ /* Not expected */
+ position: absolute;
+ top: 0; }
+ .fx-resume-item-selected .fx-resume-module-list-holder {
+ display: inline-block;
+ max-width: 80%;
+ padding-right: 15px; }
+ .fx-resume-item-selected .fx-resume-module-list-holder .fx-resume-module-list {
+ display: inline-block;
+ -webkit-border-radius: 0;
+ -moz-border-radius: 0;
+ -ms-border-radius: 0;
+ border-radius: 0;
+ border: 1px solid #D2D0D0; }
+
+.fx-resume-obj-close {
+ display: inline-block;
+ height: 15px;
+ width: 15px;
+ background: url("../../submodules/fenix-ui-common//css/img/fenix-catalog-sprite-small.svg") no-repeat -45px 0;
+ background-size: 150px 30px;
+ cursor: pointer;
+ position: relative;
+ top: 3px; }
+
+.fx-resume-list-obj {
+ display: inline-block; }
+ .fx-resume-list-obj .fx-resume-obj-value {
+ display: inline;
+ margin-right: 7px; }
+
+/* Fenix Section Switcher */
+.fx-section-switcher {
+ list-style: none;
+ padding-left: 0;
+ margin-bottom: 0; }
+ .fx-section-switcher > li {
+ margin-bottom: 10px;
+ display: inline-block; }
+ .fx-section-switcher > li > a {
+ padding: 0 10px;
+ color: #333333;
+ font-weight: 500;
+ font-size: 12px;
+ text-transform: uppercase;
+ position: relative; }
+ .fx-section-switcher > li > a:first-child {
+ padding-left: 0; }
+ .fx-section-switcher > li > a:hover, .fx-section-switcher > li > a:active, .fx-section-switcher > li > a:focus {
+ text-decoration: none; }
+ .fx-section-switcher > li.active > a:before {
+ content: '';
+ position: absolute;
+ width: calc(100% - 20px);
+ height: 2px;
+ background-color: #2686ba;
+ left: 10px;
+ bottom: -2px;
+ pointer-events: none; }
+ .fx-section-switcher > li.active > a:first-child:before {
+ left: 0;
+ width: calc(100% - 10px); }
+
+/* Fenix - Sidebar Component */
+.bs-docs-sidebar.affix {
+ position: static; }
+
+.bs-docs-sidenav {
+ margin-bottom: 20px;
+ margin-top: 20px; }
+
+.bs-docs-sidebar .nav > li > a {
+ color: #333333;
+ display: block;
+ padding: 4px 20px;
+ cursor: pointer;
+ border-left: 1px solid transparent; }
+
+.bs-docs-sidebar .nav > li > a:hover, .bs-docs-sidebar .nav > li > a:focus {
+ background-color: transparent;
+ border-left: 1px solid #2686ba;
+ color: #2686ba;
+ text-decoration: none; }
+
+.bs-docs-sidebar .nav > .active > a, .bs-docs-sidebar .nav > .active:hover > a, .bs-docs-sidebar .nav > .active:focus > a {
+ background-color: transparent;
+ border-left: 1px solid #2686ba;
+ color: #2686ba;
+ font-weight: 700; }
+
+.bs-docs-sidebar .nav .nav {
+ display: none;
+ padding-bottom: 10px; }
+
+.bs-docs-sidebar .nav .nav > li > a {
+ padding-bottom: 1px;
+ padding-left: 30px;
+ padding-top: 1px; }
+
+@media (min-width: 768px) {
+ .bs-docs-sidebar {
+ padding-left: 20px; } }
+@media (min-width: 992px) {
+ .bs-docs-sidebar .nav > .active > ul {
+ display: block; }
+
+ .bs-docs-sidebar.affix, .bs-docs-sidebar.affix-bottom {
+ width: 213px; }
+
+ .bs-docs-sidebar.affix {
+ position: fixed;
+ top: 80px; }
+
+ .bs-docs-sidebar.affix-bottom {
+ position: absolute; }
+
+ .bs-docs-sidebar.affix-bottom .bs-docs-sidenav, .bs-docs-sidebar.affix .bs-docs-sidenav {
+ margin-bottom: 0;
+ margin-top: 0; } }
+@media (min-width: 1200px) {
+ .bs-docs-sidebar.affix-bottom, .bs-docs-sidebar.affix {
+ width: 263px; } }
+/*!
+ * Start Bootstrap - Simple Sidebar HTML Template (http://startbootstrap.com)
+ * Code licensed under the Apache License v2.0.
+ * For details, see http://www.apache.org/licenses/LICENSE-2.0.
+ */
+/* Toggle Styles */
+#wrapper {
+ padding-left: 0;
+ -webkit-transition: all 0.5s ease;
+ -moz-transition: all 0.5s ease;
+ -o-transition: all 0.5s ease;
+ transition: all 0.5s ease; }
+
+#wrapper.toggled {
+ padding-left: 250px; }
+
+#sidebar-wrapper {
+ z-index: 1000;
+ position: fixed;
+ left: 250px;
+ width: 0;
+ height: 100%;
+ margin-left: -250px;
+ overflow-y: auto;
+ background: #000;
+ -webkit-transition: all 0.5s ease;
+ -moz-transition: all 0.5s ease;
+ -o-transition: all 0.5s ease;
+ transition: all 0.5s ease; }
+
+#wrapper.toggled #sidebar-wrapper {
+ width: 250px; }
+
+#page-content-wrapper {
+ width: 100%;
+ position: absolute;
+ padding: 15px;
+ overflow-x: hidden; }
+
+#wrapper.toggled #page-content-wrapper {
+ position: absolute;
+ margin-right: -250px; }
+
+/* Sidebar Styles */
+.sidebar-nav {
+ position: absolute;
+ top: 0;
+ width: 250px;
+ margin: 0;
+ padding: 0;
+ list-style: none; }
+
+.sidebar-nav li {
+ text-indent: 20px;
+ line-height: 40px; }
+
+.sidebar-nav li a {
+ display: block;
+ text-decoration: none;
+ color: #999999; }
+
+.sidebar-nav li a:hover {
+ text-decoration: none;
+ color: #fff;
+ background: rgba(255, 255, 255, 0.2); }
+
+.sidebar-nav li a:active,
+.sidebar-nav li a:focus {
+ text-decoration: none; }
+
+.sidebar-nav > .sidebar-brand {
+ height: 65px;
+ font-size: 18px;
+ line-height: 60px; }
+
+.sidebar-nav > .sidebar-brand a {
+ color: #999999; }
+
+.sidebar-nav > .sidebar-brand a:hover {
+ color: #fff;
+ background: none; }
+
+@media (min-width: 768px) {
+ #wrapper {
+ padding-left: 250px; }
+
+ #wrapper.toggled {
+ padding-left: 0; }
+
+ #sidebar-wrapper {
+ width: 250px; }
+
+ #wrapper.toggled #sidebar-wrapper {
+ width: 0; }
+
+ #page-content-wrapper {
+ padding: 20px;
+ position: relative; }
+
+ #wrapper.toggled #page-content-wrapper {
+ position: relative;
+ margin-right: 0; } }
+/* Tabs component */
+.fx-tabs .nav-tabs {
+ border: 0; }
+ .fx-tabs .nav-tabs > li > a {
+ color: #333333;
+ border-color: transparent; }
+ .fx-tabs .nav-tabs > li > a:hover, .fx-tabs .nav-tabs > li > a:focus {
+ border-color: transparent;
+ background-color: transparent;
+ color: #2686ba; }
+ .fx-tabs .nav-tabs > li > a:before {
+ -webkit-transition: all 0.3s ease 0s;
+ -moz-transition: all 0.3s ease 0s;
+ -ms-transition: all 0.3s ease 0s;
+ -o-transition: all 0.3s ease 0s;
+ transition: all 0.3s ease 0s;
+ content: '';
+ position: absolute;
+ width: 100%;
+ height: 2px;
+ background-color: #2686ba;
+ left: 0;
+ bottom: 5px;
+ pointer-events: none;
+ -ms-transform: scaleX(0);
+ -webkit-transform: scaleX(0);
+ transform: scaleX(0); }
+ .fx-tabs .nav-tabs > li.active > a {
+ color: #2686ba; }
+ .fx-tabs .nav-tabs > li.active > a:before {
+ -webkit-transition: all 0.3s ease 0s;
+ -moz-transition: all 0.3s ease 0s;
+ -ms-transition: all 0.3s ease 0s;
+ -o-transition: all 0.3s ease 0s;
+ transition: all 0.3s ease 0s;
+ -ms-transform: scaleX(0.8);
+ -webkit-transform: scaleX(0.8);
+ transform: scaleX(0.8); }
+ .fx-tabs .nav-tabs > li.active > a:hover, .fx-tabs .nav-tabs > li.active > a:focus {
+ border-color: transparent;
+ background-color: transparent;
+ color: #2686ba; }
+.fx-tabs li {
+ margin: 12px 0; }
+
+/* Fenix - Top Menu Component */
+.navbar ul {
+ list-style: outside none none;
+ padding-left: 0; }
+
+.navbar .container {
+ position: relative; }
+
+.nav-pills li a {
+ color: #333333; }
+
+.navbar-brand {
+ background-position: 0 3px;
+ background-repeat: no-repeat;
+ background-size: 100% 100%;
+ display: block; }
+
+.navbar .lang_picker {
+ text-transform: uppercase; }
+
+.navbar .lang_picker li {
+ cursor: pointer; }
+
+.navbar .lang_picker li a, .navbar .lang_picker li a:hover {
+ text-align: center;
+ text-decoration: none; }
+
+.navbar .lang_picker li:last-child {
+ border-right: medium none; }
+
+/* Fenix Upload Component */
+.fx-uploader-container .fx-uploader-header {
+ padding: 10px 0;
+ border-bottom: 1px solid #D2D0D0; }
+.fx-uploader-container #fx-uploader-input {
+ display: none; }
+.fx-uploader-container .fx-widget-icons {
+ cursor: pointer; }
+
+.fx-uploader-item {
+ margin-top: 15px;
+ position: relative; }
+ .fx-uploader-item .uploader-item-header {
+ background-color: #f1f1f1;
+ padding: 15px; }
+ .fx-uploader-item .item-title {
+ display: inline-block;
+ font-weight: 300;
+ font-size: 16px;
+ margin-top: 0; }
+ .fx-uploader-item .file-type {
+ position: relative;
+ top: -2px;
+ left: 5px;
+ text-transform: uppercase;
+ font-weight: 300; }
+ .fx-uploader-item .file-description {
+ color: #999999; }
.fx-uploader-item .fx-uploader-item-remove {
position: absolute;
- right: 15px;
- top: 15px;
- cursor: pointer; }
- .fx-uploader-item .fx-uploader-item-list-container {
- height: 20px;
- overflow: hidden;
- padding-bottom: 15px;
- background-color: #f1f1f1;
- border-top: 1px solid #D2D0D0;
- -webkit-transition: all 0.3s ease 0s;
- -moz-transition: all 0.3s ease 0s;
- -ms-transition: all 0.3s ease 0s;
- -o-transition: all 0.3s ease 0s;
- transition: all 0.3s ease 0s; }
- .fx-uploader-item .fx-uploader-item-list-container[data-status="error"] {
- background-color: red;
- color: white; }
- .fx-uploader-item .fx-uploader-item-list-container[data-status="done"] {
- background-color: green;
- color: white; }
- .fx-uploader-item .fx-uploader-item-list-container ul {
- position: relative;
- -webkit-transition: all 0.3s ease 0s;
- -moz-transition: all 0.3s ease 0s;
- -ms-transition: all 0.3s ease 0s;
- -o-transition: all 0.3s ease 0s;
- transition: all 0.3s ease 0s; }
- .fx-uploader-item .fx-uploader-item-list-container ul li {
- height: 20px;
- padding: 0 15px;
- line-height: 20px; }
- .fx-uploader-item .fx-uploader-item-list-container ul li .step-icon {
- margin-right: 5px; }
+ right: 15px;
+ top: 15px;
+ cursor: pointer; }
+ .fx-uploader-item .fx-uploader-item-list-container {
+ height: 20px;
+ overflow: hidden;
+ padding-bottom: 15px;
+ background-color: #f1f1f1;
+ border-top: 1px solid #D2D0D0;
+ -webkit-transition: all 0.3s ease 0s;
+ -moz-transition: all 0.3s ease 0s;
+ -ms-transition: all 0.3s ease 0s;
+ -o-transition: all 0.3s ease 0s;
+ transition: all 0.3s ease 0s; }
+ .fx-uploader-item .fx-uploader-item-list-container[data-status="error"] {
+ background-color: red;
+ color: white; }
+ .fx-uploader-item .fx-uploader-item-list-container[data-status="done"] {
+ background-color: green;
+ color: white; }
+ .fx-uploader-item .fx-uploader-item-list-container ul {
+ position: relative;
+ -webkit-transition: all 0.3s ease 0s;
+ -moz-transition: all 0.3s ease 0s;
+ -ms-transition: all 0.3s ease 0s;
+ -o-transition: all 0.3s ease 0s;
+ transition: all 0.3s ease 0s; }
+ .fx-uploader-item .fx-uploader-item-list-container ul li {
+ height: 20px;
+ padding: 0 15px;
+ line-height: 20px; }
+ .fx-uploader-item .fx-uploader-item-list-container ul li .step-icon {
+ margin-right: 5px; }
+
+/* Fenix - Well Component */
+.well {
+ background-color: transparent;
+ border: none;
+ -webkit-box-shadow: 0 0 0 white;
+ -moz-box-shadow: 0 0 0 white;
+ box-shadow: 0 0 0 white; }
+
+/* Fenix - Widgets Component */
+/*
+
+.fx-visualization-box{
+ min-height: 450px;
+ padding: 22px 10px 10px 10px;
+
+ [data-control="remove"]{
+ position: relative;
+ top: -31px;
+ right: -5px;
+ color: $fenix-text;
+ cursor: pointer;
+
+
+
+ &:hover, &:active, &:focus{
+ text-decoration: none;
+ color: $fx-cool-blue;
+ }
+
+ span.fx-widget-icons{
+ font-size: 16px;
+ }
+
+ }
+
+
+}
+
+
+.fx-olap-holder * {
+ -webkit-box-sizing: content-box;
+ -moz-box-sizing: content-box;
+ box-sizing: content-box;
+}
+
+.fx-widget{
+
+
+
+ [data-role="pivot-container"] *{
+ -webkit-box-sizing: content-box;
+ -moz-box-sizing: content-box;
+ box-sizing: content-box;
+ }
+
+
+ &.loading{
+
+ }
+ background-color: white;
+ padding: 5px 10px 10px 10px;
+ @include fx-border-radius($fx-border-radius);
+ border: 1px solid $fenix-hr;
+ border-bottom: 3px solid $fenix-hr;
+ position: relative;
+
+
+ .nav-tabs {
+ border-bottom: none;
+
+ >li{
+
+ position: relative;
+
+ >a{
+ padding:6px 3px 6px 3px;
+ border-color: transparent;
+ cursor: pointer;
+ color: $fenix-text;
+
+
+ &:hover, &:active, &:focus, &:visited{
+ border-color: transparent;
+
+ background-color: transparent;
+ color: $fx-cool-blue;
+ }
+
+
+
+
+ }
+
+
+
+ }
+
+
+ >li.active{
+
+ >a{
+
+ &:hover, &:active, &:focus, &:visited{
+ border-color: transparent;
+ background-color: transparent;
+ }
+
+ color: $fx-cool-blue;
+
+
+ }
+
+ &:before{
+ content: '';
+ width: 100%;
+ height: 3px;
+ background-color: $fx-cool-blue;
+ position: absolute;
+ bottom:-7px;
+ }
+
+
+
+ }
+
+
+
+
+ }
+
+
+
+
+}
+
+
+.fx-dataset-details-container{
+ position: absolute;
+ top: 0;
+ right:10px;
+ background-color: white;
+ height: 35px;
+ width: calc(100% - 59px);
+ @include fx-border-radius($fx-border-radius);
+ border-bottom-left-radius: 0;
+ border-bottom-right-radius: 0;
+ border: 1px solid $fenix-hr;
+ padding: 3px 10px;
+
+
+ .fx-dataset-details{
+ width: 100%;
+ display:inline-block;
+ text-transform: uppercase;
+ font-weight: 700;
+ font-size:11px;
+ color: $fx-secondary-color;
+ }
+
+
+}
+
+
+
+.fx-widget:before{
+ content: "";
+ height: 1px;
+ background-color: $fenix-hr;
+ width: 100%;
+ position: absolute;
+ top: 42px;
+ left: 0px;
+}
+
+.fx-widget-chart-container{
+ position: relative;
+ width: 500px;
+ height: 350px;
+}
+
+
+
+.fx-icon{
+ width: 35px;
+ height: 35px;
+ display: inline-block;
+}
+
+
+.fx-handle{
+ cursor: move;
+ position: absolute;
+ top: 0;
+ background-color: white;
+ height: 35px;
+ width: 40px;
+ @include fx-border-radius($fx-border-radius);
+ border-bottom-left-radius: 0;
+ border-bottom-right-radius: 0;
+ border: 1px solid $fenix-hr;
+
+ &:before{
+ content:'';
+ position: absolute;
+ @include fx-small-icons(-15px, 0);
+ top:3px;
+ left:12px;
+ }
+
+
+
+}
+
+.widget-grid-container{
+ padding: 8px 10px;
+}
+
+.tab-content{
+ padding-top: 10px;
+}
+
+.fx-widget-icons{
+ font-size: 24px;
+}
+
+
+.small-icons-analysis{
+ .pull-right{
+ span{
+ font-size: 18px;
+ position: relative;
+ top: -33px;
+ left: 5px;
+ }
+ }
+}*/
+/* Fenix - Widgets Stack Component */
+#fx-widgets-stack {
+ z-index: 2 !important; }
+
+#fx-sessionstore-base {
+ overflow-x: hidden;
+ position: absolute;
+ width: 280px; }
+
+.fx-widgetstack-title-container {
+ height: 120px; }
+
+/* Panel */
+.extruder {
+ position: fixed;
+ cursor: default;
+ color: #333333; }
+
+.extruder .content {
+ display: none; }
+
+.extruder.right {
+ height: 100%;
+ overflow-x: hidden; }
+ .extruder.right .text {
+ width: 100% !important;
+ overflow: visible !important;
+ overflow-x: hidden !important; }
+
+.extruder-content {
+ border: 0 !important;
+ border-left: 1px solid #D2D0D0 !important;
+ background-color: rgba(255, 255, 255, 0.9) !important; }
+
+.extruder.right .ext_wrapper {
+ height: 100%;
+ right: 0;
+ top: 51px;
+ position: fixed !important; }
+
+.flap {
+ display: none; }
+
+.fx-closepanel-container {
+ border-bottom: 1px solid #2686ba;
+ padding: 5px 10px; }
+ .fx-closepanel-container .fx-widget-icons {
+ color: #2686ba;
+ margin-right: 5px;
+ cursor: pointer; }
+ .fx-closepanel-container #fx-ws-close-btn {
+ text-transform: uppercase;
+ color: #2686ba;
+ cursor: pointer;
+ line-height: 1;
+ display: inline-block;
+ -ms-transform: translate(0px, -6px);
+ -webkit-transform: translate(0px, -6px);
+ transform: translate(0px, -6px); }
+
+.ext_wrapper .content .text {
+ width: 100% !important; }
+
+#fx-sessionstore-title {
+ padding: 5px 10px; }
+
+#fx-sessionstore-ul-container {
+ position: relative;
+ overflow-x: hidden; }
+
+#fx-ws-list {
+ padding-left: 0px; }
+
+#fx-ws-list li {
+ list-style-type: none;
+ padding: 16px 16px 35px 16px;
+ position: relative;
+ border-bottom: 1px solid #2686ba; }
+
+.fx-sessionstore-item-title {
+ text-transform: uppercase;
+ font: normal normal 700 10px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
+
+.fx-sessionstore-item-info {
+ min-height: 50px;
+ padding-left: 70px; }
+
+.fx-sessionstore-item-movemetodesk {
+ float: left;
+ text-transform: uppercase;
+ font: normal normal 700 10px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
+ cursor: pointer;
+ margin-top: 10px;
+ position: relative; }
+
+.fx-sessionstore-item-removeme {
+ float: right;
+ text-transform: uppercase;
+ font: normal normal 700 10px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
+ cursor: pointer;
+ margin-top: 10px;
+ position: relative; }
+
+/* Vendor */
+/* Fenix - Facebook Patch */
+#fb-root {
+ display: none; }
+
+/* To fill the container and nothing else */
+.fb_iframe_widget, .fb_iframe_widget span, .fb_iframe_widget span iframe[style] {
+ width: 100% !important; }
+
+/* Fenix - Intro Js */
+.introjs-helperNumberLayer {
+ background: none;
+ color: white;
+ display: inline-block;
+ font: normal normal 500 14px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
+ height: 20px;
+ width: 20px;
+ line-height: 20px;
+ text-align: center;
+ background-color: #2686ba;
+ -webkit-border-radius: 100%;
+ -moz-border-radius: 100%;
+ -ms-border-radius: 100%;
+ border-radius: 100%;
+ -ms-transform: translate(0, -50%);
+ -webkit-transform: translate(0, -50%);
+ transform: translate(0, -50%);
+ -webkit-box-shadow: none;
+ -moz-box-shadow: none;
+ box-shadow: none;
+ text-shadow: none;
+ border: 0;
+ padding: 0;
+ left: -25px;
+ top: 0; }
+
+.introjs-button:hover, .introjs-button:active, .introjs-button:focus {
+ text-shadow: none;
+ color: #2686ba;
+ text-decoration: none; }
+
+/* Fenix - JQwidgets */
+.jqx-widget {
+ font: normal normal 300 12px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
+
+.jqx-widget-content {
+ color: #333333;
+ text-shadow: none;
+ border-color: #D2D0D0;
+ background: white; }
+
+.jqx-widget-header, .jqx-grid .jqx-widget-header {
+ color: #333333;
+ text-shadow: none;
+ border-color: transparent;
+ background-color: #c3e2f3;
+ background-image: -moz-linear-gradient(top, #c3e2f3, #c3e2f3);
+ background-image: -ms-linear-gradient(top, #c3e2f3, #c3e2f3);
+ background-image: -o-linear-gradient(top, #c3e2f3, #c3e2f3);
+ background-image: -webkit-gradient(linear, center top, center bottom, from(#c3e2f3), to(#c3e2f3));
+ background-image: -webkit-linear-gradient(top, #c3e2f3, #c3e2f3);
+ background-image: linear-gradient(top, #c3e2f3, #c3e2f3);
+ background-image: linear-gradient(to bottom, #c3e2f3, #c3e2f3);
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ -webkit-background-clip: padding-box;
+ background-repeat: no-repeat; }
+
+.jqx-grid-column-menubutton, .jqx-widget.jqx-grid-column-menubutton {
+ border-color: transparent; }
+
+.jqx-grid-cell, .jqx-widget .jqx-grid-cell {
+ background-color: white;
+ text-shadow: none;
+ font-weight: inherit;
+ font-size: 12px; }
+
+.jqx-fill-state-normal {
+ color: #333333;
+ text-shadow: none;
+ border-color: transparent;
+ background-color: transparent;
+ background-image: -moz-linear-gradient(top, transparent, transparent);
+ background-image: -ms-linear-gradient(top, transparent, transparent);
+ background-image: -o-linear-gradient(top, transparent, transparent);
+ background-image: -webkit-gradient(linear, center top, center bottom, from(transparent), to(transparent));
+ background-image: -webkit-linear-gradient(top, transparent, transparent);
+ background-image: linear-gradient(top, transparent, transparent);
+ background-image: linear-gradient(to bottom, transparent, transparent);
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ -webkit-background-clip: padding-box;
+ background-repeat: no-repeat; }
+
+.jqx-button {
+ color: #333333;
+ text-shadow: none;
+ border-color: transparent;
+ background-color: transparent;
+ background-image: -moz-linear-gradient(top, transparent, transparent);
+ background-image: -ms-linear-gradient(top, transparent, transparent);
+ background-image: -o-linear-gradient(top, transparent, transparent);
+ background-image: -webkit-gradient(linear, center top, center bottom, from(transparent), to(transparent));
+ background-image: -webkit-linear-gradient(top, transparent, transparent);
+ background-image: linear-gradient(top, transparent, transparent);
+ background-image: linear-gradient(to bottom, transparent, transparent);
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ -webkit-background-clip: padding-box;
+ background-repeat: no-repeat; }
+
+.jqx-grid-selectionarea {
+ border-color: #D2D0D0;
+ background-color: #dddddd; }
+
+.jqx-widget .jqx-grid-cell-sort, .jqx-widget .jqx-grid-cell-filter, .jqx-widget .jqx-grid-cell-pinned, .jqx-grid-cell-sort, .jqx-grid-cell-filter, .jqx-grid-cell-pinned {
+ background-color: #999999;
+ color: #333333;
+ text-shadow: none; }
+
+.jqx-widget .jqx-grid-cell-alt, .jqx-widget .jqx-grid-cell-sort-alt, .jqx-widget .jqx-grid-cell-pinned-alt, .jqx-widget .jqx-grid-cell-filter-alt, .jqx-grid-cell-alt, .jqx-grid-cell-sort-alt, .jqx-grid-cell-filter-alt {
+ background-color: white;
+ color: #333333;
+ text-shadow: none; }
+
+.jqx-fill-state-hover, .jqx-widget .jqx-grid-cell-hover {
+ color: #333333;
+ text-shadow: none;
+ border-color: transparent;
+ background-color: #c3e2f3;
+ background-image: -moz-linear-gradient(top, #c3e2f3, #c3e2f3);
+ background-image: -ms-linear-gradient(top, #c3e2f3, #c3e2f3);
+ background-image: -o-linear-gradient(top, #c3e2f3, #c3e2f3);
+ background-image: -webkit-gradient(linear, center top, center bottom, from(#c3e2f3), to(#c3e2f3));
+ background-image: -webkit-linear-gradient(top, #c3e2f3, #c3e2f3);
+ background-image: linear-gradient(top, #c3e2f3, #c3e2f3);
+ background-image: linear-gradient(to bottom, #c3e2f3, #c3e2f3);
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ -webkit-background-clip: padding-box;
+ background-repeat: no-repeat; }
+
+.jqx-fill-state-pressed, .jqx-widget .jqx-grid-cell-selected {
+ color: #333333;
+ text-shadow: none;
+ border-color: #c3e2f3;
+ background-color: #c3e2f3;
+ background-image: -moz-linear-gradient(top, #c3e2f3, #c3e2f3);
+ background-image: -ms-linear-gradient(top, #c3e2f3, #c3e2f3);
+ background-image: -o-linear-gradient(top, #c3e2f3, #c3e2f3);
+ background-image: -webkit-gradient(linear, center top, center bottom, from(#c3e2f3), to(#c3e2f3));
+ background-image: -webkit-linear-gradient(top, #c3e2f3, #c3e2f3);
+ background-image: linear-gradient(top, #c3e2f3, #c3e2f3);
+ background-image: linear-gradient(to bottom, #c3e2f3, #c3e2f3);
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ -webkit-background-clip: padding-box;
+ background-repeat: no-repeat; }
+
+.jqx-switchbutton-label-on {
+ color: #333333;
+ text-shadow: none;
+ border-color: #333333;
+ background-color: #dddddd;
+ background-image: -moz-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -ms-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -o-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -webkit-gradient(linear, center top, center bottom, from(#dddddd), to(#dddddd));
+ background-image: -webkit-linear-gradient(top, #dddddd, #dddddd);
+ background-image: linear-gradient(top, #dddddd, #dddddd);
+ background-image: linear-gradient(to bottom, #dddddd, #dddddd);
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ -webkit-background-clip: padding-box;
+ background-repeat: no-repeat; }
+
+.jqx-tabs-title-selected-top, .jqx-tabs-selection-tracker-top {
+ color: #333333;
+ text-shadow: none;
+ border-color: #D2D0D0;
+ border-bottom: 1px solid white;
+ background-image: none;
+ background-color: white; }
+
+.jqx-tabs-title-selected-bottom, .jqx-tabs-selection-tracker-bottom {
+ color: #333333;
+ text-shadow: none;
+ border-color: #D2D0D0;
+ border-top: 1px solid white;
+ background-image: none;
+ background-color: white; }
+
+.jqx-splitter-splitbar-hover {
+ background: #D2D0D0; }
+
+.jqx-splitter-splitbar-vertical, .jqx-splitter-splitbar-horizontal, .jqx-slider-track-horizontal, .jqx-slider-track-vertical {
+ background: #D2D0D0; }
+
+.jqx-splitter-collapse-button-horizontal, .jqx-splitter-collapse-button-vertical, .jqx-slider-rangebar {
+ background: #dddddd; }
+
+.jqx-scrollbar-state-normal {
+ background-color: white;
+ border-color: transparent; }
+
+.jqx-grid-bottomright, .jqx-panel-bottomright, .jqx-listbox-bottomright {
+ background-color: white; }
+
+.jqx-scrollbar-thumb-state-normal {
+ background-color: #dddddd;
+ background-image: -moz-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -ms-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -o-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -webkit-gradient(linear, center top, center bottom, from(#dddddd), to(#dddddd));
+ background-image: -webkit-linear-gradient(top, #dddddd, #dddddd);
+ background-image: linear-gradient(top, #dddddd, #dddddd);
+ background-image: linear-gradient(to bottom, #dddddd, #dddddd);
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ -webkit-background-clip: padding-box;
+ background-repeat: no-repeat; }
+
+.jqx-scrollbar-thumb-state-normal-horizontal {
+ background-color: #dddddd;
+ background-image: -moz-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -ms-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -o-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -webkit-gradient(linear, center top, center bottom, from(#dddddd), to(#dddddd));
+ background-image: -webkit-linear-gradient(top, #dddddd, #dddddd);
+ background-image: linear-gradient(top, #dddddd, #dddddd);
+ background-image: linear-gradient(to bottom, #dddddd, #dddddd);
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ -webkit-background-clip: padding-box;
+ background-repeat: no-repeat; }
+
+.jqx-scrollbar-thumb-state-hover {
+ background-color: #999999;
+ background-image: -moz-linear-gradient(top, #999999, #999999);
+ background-image: -ms-linear-gradient(top, #999999, #999999);
+ background-image: -o-linear-gradient(top, #999999, #999999);
+ background-image: -webkit-gradient(linear, center top, center bottom, from(#999999), to(#999999));
+ background-image: -webkit-linear-gradient(top, #999999, #999999);
+ background-image: linear-gradient(top, #999999, #999999);
+ background-image: linear-gradient(to bottom, #999999, #999999);
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ -webkit-background-clip: padding-box;
+ background-repeat: no-repeat; }
+
+.jqx-scrollbar-thumb-state-hover-horizontal {
+ background-color: #dddddd;
+ background-image: -moz-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -ms-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -o-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -webkit-gradient(linear, center top, center bottom, from(#dddddd), to(#dddddd));
+ background-image: -webkit-linear-gradient(top, #dddddd, #dddddd);
+ background-image: linear-gradient(top, #dddddd, #dddddd);
+ background-image: linear-gradient(to bottom, #dddddd, #dddddd);
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ -webkit-background-clip: padding-box;
+ background-repeat: no-repeat; }
+
+.jqx-scrollbar-thumb-state-pressed {
+ border-color: #dddddd;
+ background-color: #dddddd;
+ background-image: -moz-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -ms-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -o-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -webkit-gradient(linear, center top, center bottom, from(#dddddd), to(#dddddd));
+ background-image: -webkit-linear-gradient(top, #dddddd, #dddddd);
+ background-image: linear-gradient(top, #dddddd, #dddddd);
+ background-image: linear-gradient(to bottom, #dddddd, #dddddd);
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ -webkit-background-clip: padding-box;
+ background-repeat: no-repeat; }
+
+.jqx-scrollbar-thumb-state-pressed-horizontal {
+ background-color: #dddddd;
+ background-image: -moz-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -ms-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -o-linear-gradient(top, #dddddd, #dddddd);
+ background-image: -webkit-gradient(linear, center top, center bottom, from(#dddddd), to(#dddddd));
+ background-image: -webkit-linear-gradient(top, #dddddd, #dddddd);
+ background-image: linear-gradient(top, #dddddd, #dddddd);
+ background-image: linear-gradient(to bottom, #dddddd, #dddddd);
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ -webkit-background-clip: padding-box;
+ background-repeat: no-repeat; }
+
+.jqx-scrollbar-button-state-normal {
+ background-color: transparent;
+ background-image: -moz-linear-gradient(top, transparent, transparent);
+ background-image: -ms-linear-gradient(top, transparent, transparent);
+ background-image: -o-linear-gradient(top, transparent, transparent);
+ background-image: -webkit-gradient(linear, center top, center bottom, from(transparent), to(transparent));
+ background-image: -webkit-linear-gradient(top, transparent, transparent);
+ background-image: linear-gradient(top, transparent, transparent);
+ background-image: linear-gradient(to bottom, transparent, transparent);
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ -webkit-background-clip: padding-box;
+ background-repeat: no-repeat; }
+
+.jqx-scrollbar-button-state-hover {
+ background-color: transparent;
+ background-image: -moz-linear-gradient(top, transparent, transparent);
+ background-image: -ms-linear-gradient(top, transparent, transparent);
+ background-image: -o-linear-gradient(top, transparent, transparent);
+ background-image: -webkit-gradient(linear, center top, center bottom, from(transparent), to(transparent));
+ background-image: -webkit-linear-gradient(top, transparent, transparent);
+ background-image: linear-gradient(top, transparent, transparent);
+ background-image: linear-gradient(to bottom, transparent, transparent);
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ -webkit-background-clip: padding-box;
+ background-repeat: no-repeat; }
+
+.jqx-scrollbar-button-state-pressed {
+ background-color: transparent;
+ background-image: -moz-linear-gradient(top, transparent, transparent);
+ background-image: -ms-linear-gradient(top, transparent, transparent);
+ background-image: -o-linear-gradient(top, transparent, transparent);
+ background-image: -webkit-gradient(linear, center top, center bottom, from(transparent), to(transparent));
+ background-image: -webkit-linear-gradient(top, transparent, transparent);
+ background-image: linear-gradient(top, transparent, transparent);
+ background-image: linear-gradient(to bottom, transparent, transparent);
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ -webkit-background-clip: padding-box;
+ background-repeat: no-repeat; }
+
+.jqx-radiobutton-check-checked {
+ background: #333333;
+ width: 7px;
+ height: 7px;
+ margin-left: 2px;
+ margin-top: 2px;
+ border-width: 1px;
+ border-style: solid; }
+
+.jqx-rc-tl {
+ -moz-border-radius-topleft: 0;
+ -webkit-border-radius-topleft: 0;
+ border-radius-topleft: 0; }
+
+.jqx-rc-tr {
+ -moz-border-radius-topright: 0;
+ -webkit-border-radius-topright: 0;
+ border-radius-topright: 0; }
+
+.jqx-rc-bl {
+ -moz-border-radius-bottomleft: 0;
+ -webkit-border-radius-bottomleft: 0;
+ border-radius-bottomleft: 0; }
+
+.jqx-rc-br {
+ -moz-border-radius-bottomright: 0;
+ -webkit-border-radius-bottomright: 0;
+ border-radius-bottomright: 0; }
+
+.jqx-rc-t {
+ -moz-border-radius-topleft: 0;
+ -webkit-border-top-left-radius: 0;
+ border-top-left-radius: 0;
+ -moz-border-radius-topright: 0;
+ -webkit-border-top-right-radius: 0;
+ border-top-right-radius: 0; }
+
+.jqx-rc-b {
+ -moz-border-radius-bottomleft: 0;
+ -webkit-border-bottom-left-radius: 0;
+ border-bottom-left-radius: 0;
+ -moz-border-radius-bottomright: 0;
+ -webkit-border-bottom-right-radius: 0;
+ border-bottom-right-radius: 0; }
+
+.jqx-rc-r {
+ -moz-border-radius-topright: 0;
+ -webkit-border-top-right-radius: 0;
+ border-top-right-radius: 0;
+ -moz-border-radius-bottomright: 0;
+ -webkit-border-bottom-right-radius: 0;
+ border-bottom-right-radius: 0; }
+
+.jqx-rc-l {
+ -moz-border-radius-topleft: 0;
+ -webkit-border-top-left-radius: 0;
+ border-top-left-radius: 0;
+ -moz-border-radius-bottomleft: 0;
+ -webkit-border-bottom-left-radius: 0;
+ border-bottom-left-radius: 0; }
+
+.jqx-radiobutton-default, .jqx-radiobutton, .jqx-radiobutton-check-checked, .jqx-radiobutton-hover, .jqx-radiobutton-check-indeterminate, .jqx-radiobutton-check-indeterminate-disabled, .jqx-slider-button {
+ -moz-border-radius: 100% !important;
+ -webkit-border-radius: 100% !important;
+ border-radius: 100% !important; }
+
+.jqx-rc-all, .jqx-tooltip, .jqx-tooltip-text, .jqx-tooltip-main {
+ -moz-border-radius: 0;
+ -webkit-border-radius: 0;
+ border-radius: 0; }
+
+.jqx-menu-vertical {
+ background: white; }
+
+.jqx-widget .jqx-grid-column-header, .jqx-widget .jqx-grid-cell, .jqx-widget .jqx-grid-group-cell, .jqx-grid-cell {
+ border-color: #e5e5e5; }
+
+.jqx-tooltip, .jqx-tooltip-main {
+ color: #333333;
+ text-shadow: none;
+ border-color: #aaa;
+ background-color: #dddddd; }
+
+.jqx-combobox-content, .jqx-input {
+ color: #333333;
+ text-shadow: none;
+ border-color: #D2D0D0;
+ background-color: white; }
+
+.jqx-combobox-input {
+ color: #333333;
+ text-shadow: none; }
+
+.jqx-input-content {
+ color: #333333;
+ text-shadow: none;
+ background-color: white; }
+
+.jqx-fill-state-focus, .jqx-popup .jqx-fill-state-focus {
+ border-color: #333333; }
+
+.jqx-popup.jqx-listbox, .jqx-popup.jqx-calendar, .jqx-menu-dropdown, .jqx-popup.jqx-dropdownbutton-popup {
+ color: #333333;
+ text-shadow: none;
+ border-color: #333333;
+ background-color: white; }
+
+/* Fenix - Js tree */
+.jstree-default .jstree-search {
+ color: #333333;
+ font-weight: 300;
+ font-style: normal; }
+.jstree-default .jstree-node:not(.jstree-open) {
+ position: relative; }
+ .jstree-default .jstree-node:not(.jstree-open) .jstree-wholerow {
+ height: 100%; }
+
+.jstree-default .jstree-themeicon {
+ display: none;
+ /* It hides folder icon */ }
+
+.jstree-default .jstree-node,
+.jstree-default .jstree-icon {
+ background-image: url("../../submodules/fenix-ui-common//css/img/treejs-32px.svg"); }
+
+.jstree-default .jstree-wholerow-clicked {
+ background: none;
+ background-color: #c3e2f3; }
+
+.jstree-default .jstree-wholerow-hovered {
+ background: none;
+ background-color: #c3e2f3; }
+
+.jstree-default .jstree-disabled.jstree-clicked {
+ background: none;
+ background-color: #c3e2f3; }
+
+.jstree-container-ul .jstree-anchor {
+ white-space: normal;
+ height: auto;
+ width: 90%; }
+.jstree-container-ul [role="group"].jstree-children [role='treeitem'] {
+ position: relative; }
+
+li[role="treeitem"]:nth-child(odd) {
+ background-color: #f2f2f2 !important; }
+
+ul[role="group"] {
+ background-color: white; }
+
+/* Packery _ Fenix */
+/* clearfix */
+#fx-ana-result-container:after {
+ content: ' ';
+ display: block;
+ clear: both; }
+
+.fx-analysis-item {
+ width: 50%;
+ height: 450px;
+ padding: 22px 10px 10px 10px;
+ z-index: 200;
+ /* Veify correct z.index */ }
+ .fx-analysis-item.fit {
+ width: 100%; }
+
+.fx-analysis-item .fx-widget .tab-content {
+ height: 350px;
+ overflow-y: auto;
+ overflow-x: hidden; }
+
+.grid-sizer {
+ width: 50%; }
+
+/* Leaflet */
+/* Fenix Leaflet Import */
+/* Fenix Leaflet Zoom control 0.7.3*/
+/* Base */
+/* Default Styles */
+.container {
+ background-color: white; }
+
+.website-title {
+ font-size: 24px;
+ color: black; }
+
+.fit-height {
+ height: 100%; }
+
+/* Compare Result */
+.fixed-height {
+ height: 350px; }
+
+h1 {
+ color: #333; }
+
+h2 {
+ color: #2686ba; }
+
+.obj-box-header {
+ z-index: 1;
+ padding: 5px 15px;
+ border: 1px solid #C2C2C2;
+ background: #fafafa;
+ box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.05);
+ -moz-box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.05);
+ -webkit-box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.05); }
+ .obj-box-header .btn-default {
+ position: absolute;
+ right: 25px;
+ top: 6px; }
+ .obj-box-header h1 {
+ margin: 0; }
+ .obj-box-header p {
+ margin: 0; }
+
+.obj-box, .obj-box-radius10, .obj-box-title {
+ margin-top: 0;
+ position: relative; }
+
+.adam-entry-point {
+ position: relative; }
+ .adam-entry-point:nth-child(odd) .adam-entry-point-content:before {
+ content: '';
+ display: block;
+ position: absolute;
+ bottom: 0;
+ width: 80%;
+ left: 10%;
+ height: 1px;
+ background-color: #dfdfdf; }
+ .adam-entry-point:nth-child(odd) .adam-entry-point-content:after {
+ content: '';
+ display: block;
+ position: absolute;
+ right: 0;
+ width: 1px;
+ top: 10%;
+ height: 80%;
+ background-color: #dfdfdf; }
+ .adam-entry-point:nth-child(even) .adam-entry-point-content:before {
+ content: '';
+ display: block;
+ position: absolute;
+ bottom: 0;
+ width: 80%;
+ left: 10%;
+ height: 1px;
+ background-color: #dfdfdf; }
+ .adam-entry-point:last-child .adam-entry-point-content {
+ margin-bottom: 100px; }
+ .adam-entry-point .adam-entry-point-content {
+ padding: 35px; }
+ .adam-entry-point h2 {
+ font-size: 16px;
+ color: #333333; }
+ .adam-entry-point p.title {
+ color: #ec6e00;
+ font-size: 28px; }
+ .adam-entry-point p.text-justify {
+ color: #999999; }
-/* Fenix - Well Component */
-.well {
+.tree-holder {
+ height: 150px;
+ overflow-y: auto; }
+
+.fx-arrow-time {
+ position: absolute;
+ top: 55px;
+ left: 0;
+ width: 100%;
+ display: block; }
+ .fx-arrow-time:before {
+ content: '';
+ position: absolute;
+ top: 3px;
+ width: 100%;
+ height: 1px;
+ display: block;
+ background-color: #999999; }
+ .fx-arrow-time:after {
+ content: '';
+ width: 0;
+ height: 0;
+ display: block;
+ right: -1px;
+ position: absolute;
+ border-style: solid;
+ border-width: 4px 0 4px 8px;
+ border-color: transparent transparent transparent #999999; }
+
+#browse-top-link-fixed {
+ position: fixed;
+ left: -150px;
+ bottom: 100px;
+ opacity: 0;
+ -webkit-transition: all 0.3s ease 0s;
+ -moz-transition: all 0.3s ease 0s;
+ -ms-transition: all 0.3s ease 0s;
+ -o-transition: all 0.3s ease 0s;
+ transition: all 0.3s ease 0s; }
+
+#browse-top-link-fixed.affix {
+ left: 15px;
+ opacity: 1;
+ z-index: 2; }
+
+a {
+ color: #2686ba; }
+ a:focus {
+ outline: none; }
+ a:active {
+ outline: none; }
+
+.dropdown-menu > li > a {
+ font-weight: 300;
+ color: #333333; }
+
+h1 {
+ font: normal normal 300 18px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
+ color: #2686ba; }
+
+h2 {
+ font: normal normal 300 16px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
+ color: #487c98; }
+
+h3 {
+ font: normal normal 500 12px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
+ color: #5e7582; }
+
+h4 {
+ font: normal normal 300 11px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
+ color: #707070; }
+
+h1 small, h2 small, h3 small, h4 small, h5 small, h6 small, .h1 small, .h2 small, .h3 small, .h4 small, .h5 small, .h6 small, h1 .small, h2 .small, h3 .small, h4 .small, h5 .small, h6 .small, .h1 .small, .h2 .small, .h3 .small, .h4 .small, .h5 .small, .h6 .small {
+ font-family: Roboto;
+ font-weight: 700;
+ color: #2686ba;
+ text-transform: uppercase;
+ font-size: 12px; }
+
+.truncate {
+ white-space: nowrap;
+ overflow: hidden;
+ text-overflow: ellipsis; }
+
+/* BreadCrumbs */
+#breadcumb_container {
+ height: 35px;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap; }
+
+.breadcrumb {
background-color: transparent;
- border: none;
- -webkit-box-shadow: 0 0 0 white;
- -moz-box-shadow: 0 0 0 white;
- box-shadow: 0 0 0 white; }
+ font-size: 12px;
+ font-weight: bold;
+ padding: 8px 0;
+ margin-bottom: 0; }
+ .breadcrumb li a {
+ color: #333333;
+ text-transform: uppercase; }
-/* Fenix - Widgets Component */
-.fx-visualization-box {
- min-height: 450px;
- padding: 22px 10px 10px 10px; }
- .fx-visualization-box [data-control="remove"] {
+.breadcrumb > li + li:before {
+ content: '|';
+ color: #333333; }
+
+/* FAO Like Footer */
+footer.fao-footer {
+ background-color: #0d6cac;
+ padding-top: 15px;
+ padding-bottom: 15px;
+ color: white; }
+ footer.fao-footer li {
+ margin-bottom: 10px; }
+ footer.fao-footer h4 {
+ color: white;
+ font-size: 14px; }
+ footer.fao-footer a:link,
+ footer.fao-footer a:visited,
+ footer.fao-footer a:hover,
+ footer.fao-footer a:focus,
+ footer.fao-footer a:active {
+ color: white; }
+ footer.fao-footer .device-image {
+ padding-right: 10px;
+ float: left; }
+ footer.fao-footer .fao-social-holder {
+ display: inline-block;
+ width: 19%;
+ padding: 3px 2px; }
+
+/*//////////////////////////////////////////// Navbar Media queries */
+/* Ipad */
+@media (min-width: 768px) and (max-width: 990px) {
+ footer.fao-footer .device-image {
+ margin-bottom: 10px; }
+ footer.fao-footer .fao-social-holder {
+ display: inline-block;
+ width: 20%;
+ padding: 3px 2px; } }
+/* Iphone */
+@media (max-width: 767px) {
+ footer.fao-footer {
+ text-align: center; }
+ footer.fao-footer .device-image {
+ margin-bottom: 10px;
+ float: none; }
+ footer.fao-footer .fao-social-holder {
+ display: inline-block;
+ width: 15%;
+ margin: 3px; }
+
+ /* End of the iPhone media query*/ }
+/* FAO Like Top Menu */
+/* Bootstrap reset */
+.navbar-brand {
+ display: none; }
+
+/* Item on the right fix */
+.fx-menu .navbar-nav.navbar-right {
+ margin: 0; }
+ .fx-menu .navbar-nav.navbar-right li a {
+ border-right: 0; }
+
+/* Header */
+.container.fao-header {
+ height: 90px;
+ position: relative;
+ background-color: #0d6cac; }
+ .container.fao-header .fao-logo {
+ width: 300px;
+ height: auto;
position: relative;
- top: -18px;
- right: -5px;
- color: #666666;
- cursor: pointer; }
- .fx-visualization-box [data-control="remove"]:hover, .fx-visualization-box [data-control="remove"]:active, .fx-visualization-box [data-control="remove"]:focus {
- text-decoration: none;
- color: #0f6eae; }
- .fx-visualization-box [data-control="remove"] span.fx-widget-icons {
- font-size: 16px; }
+ top: 5px; }
+ .container.fao-header ul li {
+ border-right: 1px solid white; }
+ .container.fao-header ul li:last-child {
+ border-right: none; }
+ .container.fao-header ul li a {
+ color: white; }
+ .container.fao-header ul li a:hover {
+ text-decoration: none; }
-.fx-olap-holder * {
- -webkit-box-sizing: content-box;
- -moz-box-sizing: content-box;
- box-sizing: content-box; }
+/* Menu */
+.topmenu {
+ padding-top: 30px; }
+ .topmenu .navbar-collapse {
+ background-color: white;
+ background-image: -moz-linear-gradient(top, white, #efefef);
+ background-image: -ms-linear-gradient(top, white, #efefef);
+ background-image: -o-linear-gradient(top, white, #efefef);
+ background-image: -webkit-gradient(linear, center top, center bottom, from(white), to(#efefef));
+ background-image: -webkit-linear-gradient(top, white, #efefef);
+ background-image: linear-gradient(top, white, #efefef);
+ background-image: linear-gradient(to bottom, white, #efefef);
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ -webkit-background-clip: padding-box;
+ background-repeat: no-repeat;
+ border: 1px solid #D2D0D0; }
-.fx-widget {
- background-color: white;
- padding: 5px 10px 10px 10px;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- border-radius: 0;
- border: 1px solid #D2D0D0;
- border-bottom: 3px solid #D2D0D0;
- position: relative; }
- .fx-widget [data-role="pivot-container"] * {
- -webkit-box-sizing: content-box;
- -moz-box-sizing: content-box;
- box-sizing: content-box; }
- .fx-widget .nav-tabs {
- border-bottom: none; }
- .fx-widget .nav-tabs > li {
- position: relative; }
- .fx-widget .nav-tabs > li > a {
- padding: 3px 3px 6px 3px;
- border-color: transparent;
- cursor: pointer;
- color: #666666; }
- .fx-widget .nav-tabs > li > a:hover, .fx-widget .nav-tabs > li > a:active, .fx-widget .nav-tabs > li > a:focus, .fx-widget .nav-tabs > li > a:visited {
- border-color: transparent;
- background-color: transparent;
- color: #0f6eae; }
- .fx-widget .nav-tabs > li.active > a {
- color: #0f6eae; }
- .fx-widget .nav-tabs > li.active > a:hover, .fx-widget .nav-tabs > li.active > a:active, .fx-widget .nav-tabs > li.active > a:focus, .fx-widget .nav-tabs > li.active > a:visited {
- border-color: transparent;
- background-color: transparent; }
- .fx-widget .nav-tabs > li.active:before {
- content: '';
- width: 100%;
- height: 3px;
- background-color: #0f6eae;
- position: absolute;
- bottom: -7px; }
+.topmenu-buttons-holder {
+ padding-left: 0;
+ padding-right: 0; }
+
+.navbar-default {
+ background-color: transparent;
+ min-height: 40px;
+ margin-bottom: 0; }
+ .navbar-default .navbar-nav > li {
+ /* Home icon as fao website */ }
+ .navbar-default .navbar-nav > li > a {
+ height: 40px;
+ overflow: hidden;
+ padding-bottom: 10px;
+ padding-top: 10px;
+ border-right: 1px solid #D2D0D0; }
+ .navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
+ color: #ec6e00;
+ background-color: white; }
+ .navbar-default .navbar-nav > li.active a,
+ .navbar-default .navbar-nav > li.active a:link,
+ .navbar-default .navbar-nav > li.active a:visited,
+ .navbar-default .navbar-nav > li.active a:hover,
+ .navbar-default .navbar-nav > li.active a:focus,
+ .navbar-default .navbar-nav > li.active a:active {
+ border-bottom-color: transparent;
+ color: #ec6e00; }
+ .navbar-default .navbar-nav > li.home-menu-item {
+ width: 40px; }
+ .navbar-default .navbar-nav > li.home-menu-item.active a {
+ background-image: url(../../src/images/home-h.png); }
+ .navbar-default .navbar-nav > li.home-menu-item a {
+ background-image: url(../../src/images/home.png);
+ background-size: 20px 16px;
+ background-position: 50% 50%;
+ background-repeat: no-repeat; }
+ .navbar-default .navbar-nav > li.home-menu-item a:hover, .navbar-default .navbar-nav > li.home-menu-item a:focus {
+ background-image: url(../../src/images/home-h.png); }
+
+/* Open/Close button in mobile mode */
+.navbar-default .navbar-toggle {
+ border-color: transparent; }
+ .navbar-default .navbar-toggle:link, .navbar-default .navbar-toggle:visited, .navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus, .navbar-default .navbar-toggle:active {
+ background-color: transparent; }
+
+.navbar-collapse {
+ border-top: 0; }
+ .navbar-collapse .navbar-nav {
+ margin-top: 0; }
+
+/*//////////////////////////////////////////// Navbar Media queries */
+/* Ipad */
+/* Iphone */
+@media (max-width: 767px) {
+ .container.fao-header {
+ height: 140px; }
+ .container.fao-header .fao-header-menu {
+ margin-top: 15px;
+ text-align: center;
+ line-height: 20px; }
+ .container.fao-header .fao-header-menu ul li a {
+ /* Expand the item space in the mobile version */
+ margin: 5px; }
+
+ .topmenu {
+ padding-top: 30px; }
+ .topmenu .navbar-collapse {
+ background: none;
+ background-color: white;
+ border-color: transparent; }
+
+ .navbar-default .navbar-nav > li {
+ /* Home icon as fao website */ }
+ .navbar-default .navbar-nav > li > a {
+ border-right-color: transparent; }
+ .navbar-default .navbar-nav > li.active a,
+ .navbar-default .navbar-nav > li.active a:link,
+ .navbar-default .navbar-nav > li.active a:visited,
+ .navbar-default .navbar-nav > li.active a:hover,
+ .navbar-default .navbar-nav > li.active a:focus,
+ .navbar-default .navbar-nav > li.active a:active {
+ border-bottom-color: transparent;
+ color: #ec6e00 !important; }
+ .navbar-default .navbar-nav > li.home-menu-item {
+ width: 100%; }
+ .navbar-default .navbar-nav > li.home-menu-item a {
+ background-position: 15px 50%; }
+
+ /* End of the iPhone media query*/ }
+/*Form */
+.form-control {
+ -webkit-transition: none;
+ -moz-transition: none;
+ -ms-transition: none;
+ -o-transition: none;
+ transition: none;
+ outline: none;
+ background-color: #ededed;
+ -webkit-box-shadow: none;
+ -moz-box-shadow: none;
+ box-shadow: none;
+ border-color: transparent;
+ -webkit-border-radius: 5;
+ -moz-border-radius: 5;
+ -ms-border-radius: 5;
+ border-radius: 5;
+ font-weight: 500;
+ padding: 3px 12px;
+ font-size: 12px;
+ height: 28px; }
+ .form-control:focus {
+ -webkit-box-shadow: none;
+ -moz-box-shadow: none;
+ box-shadow: none;
+ outline: none;
+ border-color: #2ab896; }
+
+.input-group-btn .btn {
+ border-left: 0; }
+ .input-group-btn .btn:hover {
+ border-color: transparent; }
+
+/* Indicator Icon Definition */
+.indicators-icons {
+ font-size: 20px;
+ position: absolute; }
+
+/* DASHBOARD */
+.display-box-header {
+ font-size: 14px; }
+
+/* Jstree Mood */
+/* Preload CSS */
+.loading {
+ display: inline-block;
+ border: 0 solid rgba(215, 215, 215, 0.25);
+ -webkit-border-radius: 50%;
+ -moz-border-radius: 50%;
+ -ms-border-radius: 50%;
+ border-radius: 50%; }
+
+.loading:before {
+ content: '';
+ display: block;
+ border: 0 solid transparent;
+ border-top-color: #bebebe;
+ -webkit-border-radius: 50%;
+ -moz-border-radius: 50%;
+ -ms-border-radius: 50%;
+ border-radius: 50%;
+ -webkit-animation: loading 1s ease infinite;
+ -moz-animation: loading 1s ease infinite;
+ -ms-animation: loading 1s ease infinite;
+ -o-animation: loading 1s ease infinite;
+ animation: loading 1s ease infinite; }
+
+/***************************************/
+/* LOADING */
+/***************************************/
+.loading-16 {
+ width: 12px;
+ height: 12px;
+ border-width: 2px; }
+
+.loading-16:before {
+ width: 12px;
+ height: 12px;
+ border-width: 2px;
+ margin: -2px 0 0 -2px; }
+
+.loading-24 {
+ width: 18px;
+ height: 18px;
+ border-width: 3px; }
+
+.loading-24:before {
+ width: 18px;
+ height: 18px;
+ border-width: 3px;
+ margin: -3px 0 0 -3px; }
+
+.loading-32 {
+ width: 26px;
+ height: 26px;
+ border-width: 4px; }
+
+.loading-32:before {
+ width: 26px;
+ height: 26px;
+ border-width: 4px;
+ margin: -4px 0 0 -4px; }
+
+.loading-48 {
+ width: 38px;
+ height: 38px;
+ border-width: 5px; }
+
+.loading-48:before {
+ width: 38px;
+ height: 38px;
+ border-width: 5px;
+ margin: -5px 0 0 -5px; }
+
+@-webkit-keyframes loading {
+ 100% {
+ -webkit-transform: rotate(360deg); } }
+@-moz-keyframes loading {
+ 100% {
+ -webkit-transform: rotate(360deg); } }
+@-ms-keyframes loading {
+ 100% {
+ -webkit-transform: rotate(360deg); } }
+@-o-keyframes loading {
+ 100% {
+ -webkit-transform: rotate(360deg); } }
+@keyframes loading {
+ 100% {
+ transform: rotate(360deg); } }
+/* Typo3 */
+/* Typo3 FAO Compatibility */
+body {
+ color: black;
+ background: none;
+ background-color: #f0f0f0; }
+
+a:-webkit-any-link {
+ cursor: pointer; }
+
+footer h4 {
+ color: white; }
+
+#content #maincontent .fx-sandbox {
+ padding: 0 5px;
+ font-size: 11px !important; }
+ #content #maincontent .fx-sandbox .compare-wrapper {
+ border-color: #d2d0d0; }
+ #content #maincontent .fx-sandbox div.main-internal {
+ padding: 0; }
+ #content #maincontent .fx-sandbox h1 {
+ font-size: 14px;
+ margin-bottom: 0; }
+ #content #maincontent .fx-sandbox h2 {
+ border-color: transparent;
+ margin-bottom: 0px;
+ margin-top: 10px;
+ font-size: 12px; }
+ #content #maincontent .fx-sandbox h1.flude-analysis-title {
+ color: black;
+ font-size: 18px; }
+ #content #maincontent .fx-sandbox .flude-analysis-title-results {
+ margin-top: 0;
+ color: #5191C8;
+ margin-bottom: 10px; }
+ #content #maincontent .fx-sandbox .obj-box-header {
+ height: 30px;
+ padding: 6px 15px; }
+ #content #maincontent .fx-sandbox .obj-box-header .whole-btn {
+ top: 2px;
+ color: white; }
+ #content #maincontent .fx-sandbox #flude-download-btn {
+ color: white; }
+ #content #maincontent .fx-sandbox .highcharts-legend-item text {
+ font-size: 11px !important; }
+ #content #maincontent .fx-sandbox .flude-topic-selector {
+ width: calc(100% - 250px) !important; }
-.fx-dataset-details-container {
- position: absolute;
- top: 0;
- right: 10px;
- background-color: white;
- height: 35px;
- width: calc(100% - 59px);
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- border-radius: 0;
- border-bottom-left-radius: 0;
- border-bottom-right-radius: 0;
- border: 1px solid #D2D0D0;
- padding: 3px 10px; }
- .fx-dataset-details-container .fx-dataset-details {
+/* Pages */
+/* Home */
+[data-page="home"] .breadcrumb {
+ opacity: 0; }
+
+.welcome-container {
+ position: relative; }
+ .welcome-container img {
width: 100%;
- display: inline-block;
- text-transform: uppercase;
- font-weight: 700;
- font-size: 11px;
- color: #3e657f; }
+ height: auto; }
+ .welcome-container .welcome-content {
+ position: absolute;
+ bottom: 0;
+ background-color: rgba(0, 0, 0, 0.5);
+ padding: 25px 25px 50px 25px; }
+ .welcome-container .welcome-content h1 {
+ font-size: 32px;
+ color: white; }
+ .welcome-container .welcome-content p {
+ font-size: 16px;
+ color: white; }
-.fx-widget:before {
- content: "";
- height: 1px;
- background-color: #D2D0D0;
- width: 100%;
- position: absolute;
- top: 42px;
- left: 0px; }
+#side-faostat {
+ display: none; }
-.fx-widget-chart-container {
- position: relative;
- width: 500px;
- height: 350px; }
+.factsheets {
+ margin-bottom: 15px; }
+ .factsheets h1 {
+ margin-top: 0; }
+ .factsheets .ad-home-select {
+ width: 100%; }
-.fx-icon {
- width: 35px;
- height: 35px;
+.home-topic-container {
+ text-align: center;
+ border-right: 1px solid #eeeeee;
+ padding: 0 30px;
+ margin: 25px 0; }
+ .home-topic-container h2 {
+ margin-top: 0; }
+ .home-topic-container:last-child {
+ border: none; }
+
+/* Analyze Data */
+.compare-title {
display: inline-block; }
-.fx-handle {
- cursor: move;
- position: absolute;
- top: 0;
- background-color: white;
- height: 35px;
- width: 40px;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- border-radius: 0;
- border-bottom-left-radius: 0;
- border-bottom-right-radius: 0;
- border: 1px solid #D2D0D0; }
- .fx-handle:before {
- content: '';
- position: absolute;
- height: 15px;
- width: 15px;
- background: url("../../submodules/fenix-ui-common/css/img/fenix-catalog-sprite-small.svg") no-repeat -15px 0;
- background-size: 150px 30px;
- top: 3px;
- left: 12px; }
+.analyze-compare-selectors .tab-content {
+ padding-top: 0; }
+.analyze-compare-selectors .fx-tabs .nav-tabs > li {
+ margin: 0;
+ margin-bottom: 5px; }
+.analyze-compare-selectors .first-row {
+ border-top-color: transparent; }
+.analyze-compare-selectors .col-sm-height {
+ border-bottom: 1px solid #eeeeee;
+ border-right-color: transparent; }
+ .analyze-compare-selectors .col-sm-height:nth-child(3) {
+ border-right-color: transparent; }
+.analyze-compare-selectors [data-role="clear"] {
+ margin-bottom: 15px; }
+.analyze-compare-selectors .col-year-container {
+ padding-bottom: 15px; }
-.widget-grid-container {
- padding: 8px 10px; }
+.fx-tabs .nav-tabs {
+ border-color: transparent; }
-.tab-content {
- padding-top: 10px; }
+.selector-content {
+ margin-bottom: 10px; }
+ .selector-content [data-role="filter"] {
+ margin-bottom: 7px; }
-.fx-widget-icons {
- font-size: 24px; }
+[data-selector="country-country"] .selector-content, [data-selector="country-region"] .selector-content, [data-selector="regional-aggregation"] .selector-content {
+ margin-top: 0; }
-/* Fenix - Widgets Stack Component */
-#fx-widgets-stack {
- z-index: 2 !important; }
+[data-selector="delivery"] .selector-content, [data-selector="sector"] .selector-content, [data-selector="sub-sector"] .selector-content {
+ margin-top: 10px; }
-#fx-sessionstore-base {
- overflow-x: hidden;
- position: absolute;
- width: 280px; }
+.year-select {
+ font-size: 24px;
+ position: relative;
+ top: 47px;
+ left: 10px;
+ color: #999999; }
-.fx-widgetstack-title-container {
- height: 120px; }
+.compare-collapse-btn {
+ color: #333333;
+ cursor: pointer;
+ margin-left: 15px; }
+ .compare-collapse-btn span {
+ font-size: 18px;
+ margin-left: 5px;
+ position: relative;
+ top: 3px; }
+ .compare-collapse-btn:hover {
+ color: #333333;
+ text-decoration: none; }
-/* Panel */
-.extruder {
- position: fixed;
- cursor: default;
- color: #666666; }
+.collapse-bar {
+ margin-top: 20px; }
+ .collapse-bar .toggle-wrapper {
+ margin-top: 4px; }
-.extruder .content {
- display: none; }
+.compare-selector {
+ position: relative; }
+ .compare-selector:before {
+ content: '';
+ display: block;
+ position: absolute;
+ top: -1px;
+ left: -1px;
+ width: calc(100% + 2px);
+ height: calc(100% + 2px);
+ border-style: solid;
+ border-width: 0;
+ border-color: #91cae8;
+ pointer-events: none; }
+ .compare-selector.selector-focused:before {
+ border-width: 2px; }
+
+.selector-mandatory:after {
+ content: 'MANDATORY';
+ position: relative;
+ bottom: 33px;
+ font-size: 10px;
+ color: red; }
-.extruder.right {
- height: 100%;
- overflow-x: hidden; }
- .extruder.right .text {
- width: 100% !important;
- overflow: visible !important;
- overflow-x: hidden !important; }
+/* DANI */
+.fx-result {
+ position: relative; }
+ .fx-result [data-content] {
+ display: none; }
+ .fx-result [data-content] .loading {
+ position: absolute;
+ left: 50%;
+ top: 45%;
+ -ms-transform: translate(-50%, -50%);
+ -webkit-transform: translate(-50%, -50%);
+ transform: translate(-50%, -50%); }
+ .fx-result [data-content] .status-label {
+ position: absolute;
+ left: 50%;
+ top: 50%;
+ text-align: center;
+ -ms-transform: translate(-50%, -50%);
+ -webkit-transform: translate(-50%, -50%);
+ transform: translate(-50%, -50%);
+ color: #bebebe;
+ font-size: 16px; }
+ .fx-result[data-status="ready"] [data-content="ready"] {
+ display: block; }
+ .fx-result[data-status="error"] [data-content="error"] {
+ display: block; }
+ .fx-result[data-status="loading"] [data-content="loading"] {
+ display: block; }
+ .fx-result[data-status="empty"] [data-content="empty"] {
+ display: block; }
-.extruder-content {
- border: 0 !important;
- border-left: 1px solid #D2D0D0 !important;
- background-color: rgba(255, 255, 255, 0.9) !important; }
+[data-content="ready"] .tab-content {
+ height: 380px !important; }
+[data-content="ready"]:before {
+ content: "";
+ height: 1px;
+ background-color: #D2D0D0;
+ width: 100%;
+ position: absolute;
+ top: 42px;
+ left: 0px; }
+[data-content="ready"] .tab-content {
+ margin-top: 8px; }
+ [data-content="ready"] .tab-content [data-container="table"] .gt-grid {
+ height: 290px !important; }
+ [data-content="ready"] .tab-content [data-container="table"] .gt-grid .gt-viewport {
+ height: 250px !important; }
+ [data-content="ready"] .tab-content [data-container="table"] .gt-grid .gt-viewport .gt-body-div {
+ height: 225px !important; }
+ [data-content="ready"] .tab-content .selection-info {
+ margin-top: 10px; }
-.extruder.right .ext_wrapper {
- height: 100%;
- right: 0;
- top: 51px;
- position: fixed !important; }
+.small-icons-analysis .fx-widget-icons.icojam_download_1 {
+ position: absolute;
+ top: -26px;
+ left: auto;
+ right: 15px; }
-.flap {
- display: none; }
+.fx-analysis-item {
+ padding: 22px 0 0 0;
+ margin-bottom: 25px; }
-.fx-closepanel-container {
- border-bottom: 1px solid #0f6eae;
- padding: 5px 10px; }
- .fx-closepanel-container .fx-widget-icons {
- color: #0f6eae;
- margin-right: 5px;
+.fx-dataset-details-container {
+ right: 0;
+ width: 100%; }
+ .fx-dataset-details-container .fx-widget-icons {
+ position: absolute;
+ font-size: 18px;
+ right: 6px;
+ top: 1px;
cursor: pointer; }
- .fx-closepanel-container #fx-ws-close-btn {
- text-transform: uppercase;
- color: #0f6eae;
- cursor: pointer;
- line-height: 1;
- display: inline-block;
- -ms-transform: translate(0px, -6px);
- -webkit-transform: translate(0px, -6px);
- transform: translate(0px, -6px); }
-.ext_wrapper .content .text {
- width: 100% !important; }
+/* FINE DANI*/
+[data-container="chart"] [data-role="content"] {
+ height: 100%; }
-#fx-sessionstore-title {
- padding: 5px 10px; }
+.analyze-compare-results .fx-widget:before {
+ display: none; }
-#fx-sessionstore-ul-container {
- position: relative;
- overflow-x: hidden; }
+/* Extra small devices (phones, less than 768px) */
+/* No media query since this is the default in Bootstrap */
+/* Small devices (tablets, 768px and up) */
+@media (min-width: 768px) {
+ .analyze-compare-selectors .first-row {
+ border-top: 1px solid #eeeeee; }
+ .analyze-compare-selectors .col-sm-height {
+ border-right: 1px solid #eeeeee; }
+ .analyze-compare-selectors .col-sm-height:nth-child(3) {
+ border-right-color: transparent; } }
+/* Medium devices (desktops, 992px and up) */
+/* Large devices (large desktops, 1200px and up) */
+/* Browse Data */
+#fx-filter-grid_filter-browse.container-fluid {
+ padding-left: 0;
+ padding-right: 0; }
+ #fx-filter-grid_filter-browse.container-fluid .fx-filter-grid-module {
+ padding-left: 0;
+ padding-right: 0; }
-#fx-ws-list {
- padding-left: 0px; }
+.fx-filter-range-from-holder {
+ width: 40%;
+ float: left; }
-#fx-ws-list li {
- list-style-type: none;
- padding: 16px 16px 35px 16px;
+.filter-container .fx-arrow-time {
position: relative;
- border-bottom: 1px solid #0f6eae; }
+ display: block;
+ width: 10%;
+ margin: 0 5%;
+ top: 25px;
+ height: 5px;
+ float: left; }
-.fx-sessionstore-item-title {
- text-transform: uppercase;
- font: normal normal 700 10px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
+.fx-filter-range-to-holder {
+ width: 40%;
+ float: left; }
-.fx-sessionstore-item-info {
- min-height: 50px;
- padding-left: 70px; }
+.fx-title-bar {
+ background-color: white;
+ padding-top: 10px;
+ min-height: 60px; }
-.fx-sessionstore-item-movemetodesk {
- float: left;
- text-transform: uppercase;
- font: normal normal 700 10px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
- cursor: pointer;
- margin-top: 10px;
- position: relative; }
+#fx-title {
+ padding-left: 15px; }
-.fx-sessionstore-item-removeme {
- float: right;
- text-transform: uppercase;
- font: normal normal 700 10px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
- cursor: pointer;
- margin-top: 10px;
- position: relative; }
+.fx-filter-icon {
+ padding-left: 5px; }
-/* Vendor */
-/* Fenix - Facebook Patch */
-#fb-root {
- display: none; }
+.current-sel-element:after {
+ content: ' /';
+ color: #999;
+ position: relative;
+ right: -3px; }
-/* To fill the container and nothing else */
-.fb_iframe_widget, .fb_iframe_widget span, .fb_iframe_widget span iframe[style] {
- width: 100% !important; }
+.indicator-name .name {
+ padding-left: 30px; }
-/* Fenix - Intro Js */
-.introjs-helperNumberLayer {
- background: none;
- color: white;
- display: inline-block;
- font: normal normal 500 14px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
- height: 20px;
- width: 20px;
- line-height: 20px;
- text-align: center;
- background-color: #0f6eae;
- -webkit-border-radius: 100%;
- -moz-border-radius: 100%;
- -ms-border-radius: 100%;
- border-radius: 100%;
- -ms-transform: translate(0, -50%);
- -webkit-transform: translate(0, -50%);
- transform: translate(0, -50%);
- -webkit-box-shadow: none;
- -moz-box-shadow: none;
- box-shadow: none;
- text-shadow: none;
- border: 0;
- padding: 0;
- left: -25px;
- top: 0; }
+.indicator-value {
+ font-weight: bold;
+ font-size: 18px;
+ color: #aab5b7;
+ padding-left: 0; }
-.introjs-button:hover, .introjs-button:active, .introjs-button:focus {
- text-shadow: none;
- color: #0f6eae;
- text-decoration: none; }
+.adam-entry-point-content .anchor {
+ position: relative;
+ left: 2px; }
+
+/* Fenix Common CSS */
+/*#0076ff*/
+/* Boostrap Queries */
+/* Fenix Typography */
+.truncate {
+ white-space: nowrap;
+ overflow: hidden;
+ text-overflow: ellipsis; }
+
+/* Tabs component */
+.fx-tabs .nav-tabs {
+ border: 0; }
+ .fx-tabs .nav-tabs > li > a {
+ color: #333;
+ border-color: transparent; }
+ .fx-tabs .nav-tabs > li > a:hover, .fx-tabs .nav-tabs > li > a:focus {
+ border-color: transparent;
+ background-color: transparent;
+ color: #0076ff; }
+ .fx-tabs .nav-tabs > li > a:before {
+ -webkit-transition: all 0.3s ease 0s;
+ -moz-transition: all 0.3s ease 0s;
+ -ms-transition: all 0.3s ease 0s;
+ -o-transition: all 0.3s ease 0s;
+ transition: all 0.3s ease 0s;
+ content: '';
+ position: absolute;
+ width: 100%;
+ height: 2px;
+ background-color: #0076ff;
+ left: 0;
+ bottom: 5px;
+ pointer-events: none;
+ -ms-transform: scaleX(0);
+ -webkit-transform: scaleX(0);
+ transform: scaleX(0); }
+ .fx-tabs .nav-tabs > li.active > a {
+ color: #0076ff; }
+ .fx-tabs .nav-tabs > li.active > a:before {
+ -webkit-transition: all 0.3s ease 0s;
+ -moz-transition: all 0.3s ease 0s;
+ -ms-transition: all 0.3s ease 0s;
+ -o-transition: all 0.3s ease 0s;
+ transition: all 0.3s ease 0s;
+ -ms-transform: scaleX(0.8);
+ -webkit-transform: scaleX(0.8);
+ transform: scaleX(0.8); }
+ .fx-tabs .nav-tabs > li.active > a:hover, .fx-tabs .nav-tabs > li.active > a:focus {
+ border-color: transparent;
+ background-color: transparent;
+ color: #0076ff; }
+.fx-tabs li {
+ margin: 12px 0; }
-/* Fenix - JQwidgets */
-.jqx-widget {
- font: normal normal 300 12px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
+/* Fenix - Buttons Component */
+/** avoid dotted lines when clicking on button**/
+input[type="button"] {
+ outline: none; }
-.jqx-widget-content {
- color: #666666;
- text-shadow: none;
- border-color: #D2D0D0;
- background: white; }
+button:focus {
+ outline: 0;
+ outline: none; }
-.jqx-widget-header, .jqx-grid .jqx-widget-header {
- color: #666666;
- text-shadow: none;
- border-color: transparent;
- background-color: #9dd2f7;
- background-image: -moz-linear-gradient(top, #9dd2f7, #9dd2f7);
- background-image: -ms-linear-gradient(top, #9dd2f7, #9dd2f7);
- background-image: -o-linear-gradient(top, #9dd2f7, #9dd2f7);
- background-image: -webkit-gradient(linear, center top, center bottom, from(#9dd2f7), to(#9dd2f7));
- background-image: -webkit-linear-gradient(top, #9dd2f7, #9dd2f7);
- background-image: linear-gradient(top, #9dd2f7, #9dd2f7);
- background-image: linear-gradient(to bottom, #9dd2f7, #9dd2f7);
- -moz-background-clip: padding;
- background-clip: padding-box;
- -webkit-background-clip: padding-box;
- background-repeat: no-repeat; }
+button:active {
+ outline: 0;
+ outline: none; }
-.jqx-grid-column-menubutton, .jqx-widget.jqx-grid-column-menubutton {
- border-color: transparent; }
+.btn:focus, .btn:active, .btn:active:focus {
+ outline: none; }
-.jqx-grid-cell, .jqx-widget .jqx-grid-cell {
- background-color: white;
- text-shadow: none;
- font-weight: inherit;
- font-size: 12px; }
+input[type="button"]::-moz-focus-inner {
+ border: 0; }
-.jqx-fill-state-normal {
- color: #666666;
- text-shadow: none;
+/** end of **/
+.btn-round {
+ padding: 3px;
+ height: 24px;
+ -webkit-border-radius: 50%;
+ -moz-border-radius: 50%;
+ -ms-border-radius: 50%;
+ border-radius: 50%; }
+ .btn-round:last-child:not(:first-child), .btn-round:not(:first-child) {
+ -webkit-border-radius: 50%;
+ -moz-border-radius: 50%;
+ -ms-border-radius: 50%;
+ border-radius: 50%; }
+
+/* Visualization Box btns */
+.btn-default.meta-btn {
+ background-color: #999999;
+ font-size: 11px;
+ color: white;
+ padding: 1px 5px;
border-color: transparent;
- background-color: transparent;
- background-image: -moz-linear-gradient(top, transparent, transparent);
- background-image: -ms-linear-gradient(top, transparent, transparent);
- background-image: -o-linear-gradient(top, transparent, transparent);
- background-image: -webkit-gradient(linear, center top, center bottom, from(transparent), to(transparent));
- background-image: -webkit-linear-gradient(top, transparent, transparent);
- background-image: linear-gradient(top, transparent, transparent);
- background-image: linear-gradient(to bottom, transparent, transparent);
- -moz-background-clip: padding;
- background-clip: padding-box;
- -webkit-background-clip: padding-box;
- background-repeat: no-repeat; }
+ -webkit-border-radius: 5px;
+ -moz-border-radius: 5px;
+ -ms-border-radius: 5px;
+ border-radius: 5px; }
+ .btn-default.meta-btn:hover {
+ background-color: #b3b3b3;
+ border-color: transparent; }
-.jqx-button {
- color: #666666;
- text-shadow: none;
- border-color: transparent;
- background-color: transparent;
- background-image: -moz-linear-gradient(top, transparent, transparent);
- background-image: -ms-linear-gradient(top, transparent, transparent);
- background-image: -o-linear-gradient(top, transparent, transparent);
- background-image: -webkit-gradient(linear, center top, center bottom, from(transparent), to(transparent));
- background-image: -webkit-linear-gradient(top, transparent, transparent);
- background-image: linear-gradient(top, transparent, transparent);
- background-image: linear-gradient(to bottom, transparent, transparent);
- -moz-background-clip: padding;
- background-clip: padding-box;
- -webkit-background-clip: padding-box;
- background-repeat: no-repeat; }
+/* Fenix Icons */
+.fx-icon, [data-selector-time] [data-action="previous"] span, [data-selector-time] [data-action="next"] span {
+ height: 15px;
+ width: 15px;
+ display: inline-block;
+ background-image: url("../../submodules/fenix-ui-common//css/img/fenix-catalog-sprite-small.svg");
+ background-repeat: no-repeat;
+ background-size: 150px 30px; }
-.jqx-grid-selectionarea {
- border-color: #D2D0D0;
- background-color: #dddddd; }
+.fx-icon-close {
+ background-position: 0 -15px; }
-.jqx-widget .jqx-grid-cell-sort, .jqx-widget .jqx-grid-cell-filter, .jqx-widget .jqx-grid-cell-pinned, .jqx-grid-cell-sort, .jqx-grid-cell-filter, .jqx-grid-cell-pinned {
- background-color: #999999;
- color: #666666;
- text-shadow: none; }
+/* Fenix - Js tree */
+.jstree-default .jstree-search {
+ color: #333;
+ font-weight: 300;
+ font-style: normal; }
+.jstree-default .jstree-node:not(.jstree-open) {
+ position: relative; }
+ .jstree-default .jstree-node:not(.jstree-open) .jstree-wholerow {
+ height: 100%; }
-.jqx-widget .jqx-grid-cell-alt, .jqx-widget .jqx-grid-cell-sort-alt, .jqx-widget .jqx-grid-cell-pinned-alt, .jqx-widget .jqx-grid-cell-filter-alt, .jqx-grid-cell-alt, .jqx-grid-cell-sort-alt, .jqx-grid-cell-filter-alt {
- background-color: white;
- color: #666666;
- text-shadow: none; }
+.jstree-default .jstree-themeicon {
+ display: none;
+ /* It hides folder icon */ }
-.jqx-fill-state-hover, .jqx-widget .jqx-grid-cell-hover {
- color: #666666;
- text-shadow: none;
- border-color: transparent;
- background-color: #9dd2f7;
- background-image: -moz-linear-gradient(top, #9dd2f7, #9dd2f7);
- background-image: -ms-linear-gradient(top, #9dd2f7, #9dd2f7);
- background-image: -o-linear-gradient(top, #9dd2f7, #9dd2f7);
- background-image: -webkit-gradient(linear, center top, center bottom, from(#9dd2f7), to(#9dd2f7));
- background-image: -webkit-linear-gradient(top, #9dd2f7, #9dd2f7);
- background-image: linear-gradient(top, #9dd2f7, #9dd2f7);
- background-image: linear-gradient(to bottom, #9dd2f7, #9dd2f7);
- -moz-background-clip: padding;
- background-clip: padding-box;
- -webkit-background-clip: padding-box;
- background-repeat: no-repeat; }
+.jstree-default .jstree-node,
+.jstree-default .jstree-icon {
+ background-image: url("../../submodules/fenix-ui-common//css/img/treejs-32px.svg"); }
-.jqx-fill-state-pressed, .jqx-widget .jqx-grid-cell-selected {
- color: #666666;
- text-shadow: none;
- border-color: #9dd2f7;
- background-color: #9dd2f7;
- background-image: -moz-linear-gradient(top, #9dd2f7, #9dd2f7);
- background-image: -ms-linear-gradient(top, #9dd2f7, #9dd2f7);
- background-image: -o-linear-gradient(top, #9dd2f7, #9dd2f7);
- background-image: -webkit-gradient(linear, center top, center bottom, from(#9dd2f7), to(#9dd2f7));
- background-image: -webkit-linear-gradient(top, #9dd2f7, #9dd2f7);
- background-image: linear-gradient(top, #9dd2f7, #9dd2f7);
- background-image: linear-gradient(to bottom, #9dd2f7, #9dd2f7);
- -moz-background-clip: padding;
- background-clip: padding-box;
- -webkit-background-clip: padding-box;
- background-repeat: no-repeat; }
+.jstree-default .jstree-wholerow-clicked {
+ background: none;
+ background-color: #cce4ff; }
-.jqx-switchbutton-label-on {
- color: #666666;
- text-shadow: none;
- border-color: #666666;
- background-color: #dddddd;
- background-image: -moz-linear-gradient(top, #dddddd, #dddddd);
- background-image: -ms-linear-gradient(top, #dddddd, #dddddd);
- background-image: -o-linear-gradient(top, #dddddd, #dddddd);
- background-image: -webkit-gradient(linear, center top, center bottom, from(#dddddd), to(#dddddd));
- background-image: -webkit-linear-gradient(top, #dddddd, #dddddd);
- background-image: linear-gradient(top, #dddddd, #dddddd);
- background-image: linear-gradient(to bottom, #dddddd, #dddddd);
- -moz-background-clip: padding;
- background-clip: padding-box;
- -webkit-background-clip: padding-box;
- background-repeat: no-repeat; }
+.jstree-default .jstree-wholerow-hovered {
+ background: none;
+ background-color: #e6f1ff; }
-.jqx-tabs-title-selected-top, .jqx-tabs-selection-tracker-top {
- color: #666666;
- text-shadow: none;
- border-color: #D2D0D0;
- border-bottom: 1px solid white;
- background-image: none;
- background-color: white; }
+.jstree-default .jstree-disabled.jstree-clicked {
+ background: none;
+ background-color: #cce4ff; }
-.jqx-tabs-title-selected-bottom, .jqx-tabs-selection-tracker-bottom {
- color: #666666;
- text-shadow: none;
- border-color: #D2D0D0;
- border-top: 1px solid white;
- background-image: none;
+.jstree-container-ul .jstree-anchor {
+ white-space: normal;
+ height: auto;
+ width: 90%; }
+.jstree-container-ul [role="group"].jstree-children [role='treeitem'] {
+ position: relative; }
+
+li[role="treeitem"]:nth-child(odd) {
+ background-color: #f2f2f2 !important; }
+
+ul[role="group"] {
background-color: white; }
-.jqx-splitter-splitbar-hover {
- background: #D2D0D0; }
+/* Radio Buttons */
+input[type="radio"] {
+ display: none; }
-.jqx-splitter-splitbar-vertical, .jqx-splitter-splitbar-horizontal, .jqx-slider-track-horizontal, .jqx-slider-track-vertical {
- background: #D2D0D0; }
+input[type="radio"] + label {
+ cursor: pointer;
+ margin: 0 7px;
+ font-weight: normal; }
+ input[type="radio"] + label:before {
+ content: '';
+ display: inline-block;
+ height: 15px;
+ width: 15px;
+ background-color: #bdbdbd;
+ -webkit-border-radius: 100%;
+ -moz-border-radius: 100%;
+ -ms-border-radius: 100%;
+ border-radius: 100%;
+ border: 0 solid #0076ff;
+ position: relative;
+ top: 2px;
+ left: -4px; }
-.jqx-splitter-collapse-button-horizontal, .jqx-splitter-collapse-button-vertical, .jqx-slider-rangebar {
- background: #dddddd; }
+input[type="radio"]:checked + label {
+ color: #0076ff; }
+ input[type="radio"]:checked + label:before {
+ border-width: 5px; }
-.jqx-scrollbar-state-normal {
- background-color: white;
- border-color: transparent; }
+input[type="radio"] + label:before,
+input[type="radio"]:checked + label:before {
+ -webkit-transition: all 0.3s ease 0s;
+ -moz-transition: all 0.3s ease 0s;
+ -ms-transition: all 0.3s ease 0s;
+ -o-transition: all 0.3s ease 0s;
+ transition: all 0.3s ease 0s; }
-.jqx-grid-bottomright, .jqx-panel-bottomright, .jqx-listbox-bottomright {
- background-color: white; }
+/* Checkbox Buttons */
+input[type="checkbox"] {
+ display: none; }
-.jqx-scrollbar-thumb-state-normal {
- background-color: #dddddd;
- background-image: -moz-linear-gradient(top, #dddddd, #dddddd);
- background-image: -ms-linear-gradient(top, #dddddd, #dddddd);
- background-image: -o-linear-gradient(top, #dddddd, #dddddd);
- background-image: -webkit-gradient(linear, center top, center bottom, from(#dddddd), to(#dddddd));
- background-image: -webkit-linear-gradient(top, #dddddd, #dddddd);
- background-image: linear-gradient(top, #dddddd, #dddddd);
- background-image: linear-gradient(to bottom, #dddddd, #dddddd);
- -moz-background-clip: padding;
- background-clip: padding-box;
- -webkit-background-clip: padding-box;
- background-repeat: no-repeat; }
+input[type="checkbox"] + label {
+ cursor: pointer;
+ margin: 0 7px;
+ font-weight: normal; }
+ input[type="checkbox"] + label:before {
+ content: '';
+ display: inline-block;
+ height: 15px;
+ width: 15px;
+ background-color: #bdbdbd;
+ border: 0 solid #0076ff;
+ position: relative;
+ top: 2px;
+ left: -4px; }
-.jqx-scrollbar-thumb-state-normal-horizontal {
- background-color: #dddddd;
- background-image: -moz-linear-gradient(top, #dddddd, #dddddd);
- background-image: -ms-linear-gradient(top, #dddddd, #dddddd);
- background-image: -o-linear-gradient(top, #dddddd, #dddddd);
- background-image: -webkit-gradient(linear, center top, center bottom, from(#dddddd), to(#dddddd));
- background-image: -webkit-linear-gradient(top, #dddddd, #dddddd);
- background-image: linear-gradient(top, #dddddd, #dddddd);
- background-image: linear-gradient(to bottom, #dddddd, #dddddd);
- -moz-background-clip: padding;
- background-clip: padding-box;
- -webkit-background-clip: padding-box;
- background-repeat: no-repeat; }
+input[type="checkbox"]:checked + label {
+ color: #0076ff; }
+ input[type="checkbox"]:checked + label:before {
+ border-width: 5px; }
-.jqx-scrollbar-thumb-state-hover {
- background-color: #999999;
- background-image: -moz-linear-gradient(top, #999999, #999999);
- background-image: -ms-linear-gradient(top, #999999, #999999);
- background-image: -o-linear-gradient(top, #999999, #999999);
- background-image: -webkit-gradient(linear, center top, center bottom, from(#999999), to(#999999));
- background-image: -webkit-linear-gradient(top, #999999, #999999);
- background-image: linear-gradient(top, #999999, #999999);
- background-image: linear-gradient(to bottom, #999999, #999999);
- -moz-background-clip: padding;
- background-clip: padding-box;
- -webkit-background-clip: padding-box;
- background-repeat: no-repeat; }
+input[type="checkbox"] + label:before,
+input[type="checkbox"]:checked + label:before {
+ -webkit-transition: all 0.3s ease 0s;
+ -moz-transition: all 0.3s ease 0s;
+ -ms-transition: all 0.3s ease 0s;
+ -o-transition: all 0.3s ease 0s;
+ transition: all 0.3s ease 0s; }
-.jqx-scrollbar-thumb-state-hover-horizontal {
- background-color: #dddddd;
- background-image: -moz-linear-gradient(top, #dddddd, #dddddd);
- background-image: -ms-linear-gradient(top, #dddddd, #dddddd);
- background-image: -o-linear-gradient(top, #dddddd, #dddddd);
- background-image: -webkit-gradient(linear, center top, center bottom, from(#dddddd), to(#dddddd));
- background-image: -webkit-linear-gradient(top, #dddddd, #dddddd);
- background-image: linear-gradient(top, #dddddd, #dddddd);
- background-image: linear-gradient(to bottom, #dddddd, #dddddd);
- -moz-background-clip: padding;
- background-clip: padding-box;
- -webkit-background-clip: padding-box;
- background-repeat: no-repeat; }
+/* Disabled */
+input[type="checkbox"]:disabled + label,
+input[type="radio"]:disabled + label {
+ cursor: no-drop;
+ opacity: 0.4; }
+ input[type="checkbox"]:disabled + label:before,
+ input[type="radio"]:disabled + label:before {
+ cursor: no-drop;
+ opacity: 0.4; }
+
+/* Filter */
+.fx-selector.hideSwitch .fx-selector-title {
+ margin-right: 30px;
+ /* Small devices (tablets, 768px and up) */
+ /* Medium devices (desktops, 992px and up) */
+ /* Large devices (large desktops, 1200px and up) */ }
+ @media (min-width: 992px) {
+ .fx-selector.hideSwitch .fx-selector-title {
+ margin-right: 30px; } }
+
+.fx-selector.hideRemoveButton .fx-selector-title {
+ margin-right: 30px;
+ /* Small devices (tablets, 768px and up) */
+ /* Medium devices (desktops, 992px and up) */
+ /* Large devices (large desktops, 1200px and up) */ }
+ @media (min-width: 992px) {
+ .fx-selector.hideRemoveButton .fx-selector-title {
+ margin-right: 80px; } }
+
+.fx-selector.hideSwitch.hideRemoveButton .fx-selector-title {
+ margin-right: 0;
+ /* Small devices (tablets, 768px and up) */
+ /* Medium devices (desktops, 992px and up) */
+ /* Large devices (large desktops, 1200px and up) */ }
+ @media (min-width: 992px) {
+ .fx-selector.hideSwitch.hideRemoveButton .fx-selector-title {
+ margin-right: 0; } }
+
+[data-selector], [data-semantic] {
+ /* Focused */
+ /* Mandatory */
+ /* Disabled */
+ /* Hovered */ }
+ [data-selector] .controller, [data-semantic] .controller {
+ position: absolute;
+ right: 0;
+ top: 17px; }
+ [data-selector] .controller input[type="checkbox"] + label:before, [data-semantic] .controller input[type="checkbox"] + label:before {
+ -webkit-border-radius: 50% !important;
+ -moz-border-radius: 50% !important;
+ -ms-border-radius: 50% !important;
+ border-radius: 50% !important; }
+ [data-selector] .controller .btn-round, [data-semantic] .controller .btn-round {
+ -webkit-border-radius: 50% !important;
+ -moz-border-radius: 50% !important;
+ -ms-border-radius: 50% !important;
+ border-radius: 50% !important; }
+ [data-selector] .disabled, [data-semantic] .disabled {
+ cursor: no-drop;
+ opacity: 0.4; }
+ @media screen and (max-width: 480px) {
+ [data-selector] .controller, [data-semantic] .controller {
+ opacity: 1;
+ pointer-events: auto; } }
+ @media screen and (min-width: 768px) {
+ [data-selector] .controller, [data-semantic] .controller {
+ opacity: 0;
+ pointer-events: none;
+ -webkit-transition: all 0.3s ease 0.2s;
+ -moz-transition: all 0.3s ease 0.2s;
+ -ms-transition: all 0.3s ease 0.2s;
+ -o-transition: all 0.3s ease 0.2s;
+ transition: all 0.3s ease 0.2s; }
+ [data-selector]:hover .controller, [data-semantic]:hover .controller {
+ opacity: 1;
+ pointer-events: auto; } }
+
+.selector-header {
+ padding: 10px 0;
+ position: relative; }
-.jqx-scrollbar-thumb-state-pressed {
- border-color: #dddddd;
- background-color: #dddddd;
- background-image: -moz-linear-gradient(top, #dddddd, #dddddd);
- background-image: -ms-linear-gradient(top, #dddddd, #dddddd);
- background-image: -o-linear-gradient(top, #dddddd, #dddddd);
- background-image: -webkit-gradient(linear, center top, center bottom, from(#dddddd), to(#dddddd));
- background-image: -webkit-linear-gradient(top, #dddddd, #dddddd);
- background-image: linear-gradient(top, #dddddd, #dddddd);
- background-image: linear-gradient(to bottom, #dddddd, #dddddd);
- -moz-background-clip: padding;
- background-clip: padding-box;
- -webkit-background-clip: padding-box;
- background-repeat: no-repeat; }
+.fx-selector-title {
+ margin-right: 50px;
+ /* Small devices (tablets, 768px and up) */
+ /* Medium devices (desktops, 992px and up) */
+ /* Large devices (large desktops, 1200px and up) */ }
+ @media (min-width: 992px) {
+ .fx-selector-title {
+ margin-right: 105px; } }
+
+.filter-enabled-label {
+ width: 10px;
+ font-size: 0;
+ /* Small devices (tablets, 768px and up) */
+ /* Medium devices (desktops, 992px and up) */
+ /* Large devices (large desktops, 1200px and up) */ }
+ @media (min-width: 992px) {
+ .filter-enabled-label {
+ width: auto;
+ font-size: inherit; } }
+
+.selector-footer [data-role="summary"] {
+ margin: 0; }
-.jqx-scrollbar-thumb-state-pressed-horizontal {
- background-color: #dddddd;
- background-image: -moz-linear-gradient(top, #dddddd, #dddddd);
- background-image: -ms-linear-gradient(top, #dddddd, #dddddd);
- background-image: -o-linear-gradient(top, #dddddd, #dddddd);
- background-image: -webkit-gradient(linear, center top, center bottom, from(#dddddd), to(#dddddd));
- background-image: -webkit-linear-gradient(top, #dddddd, #dddddd);
- background-image: linear-gradient(top, #dddddd, #dddddd);
- background-image: linear-gradient(to bottom, #dddddd, #dddddd);
- -moz-background-clip: padding;
- background-clip: padding-box;
- -webkit-background-clip: padding-box;
- background-repeat: no-repeat; }
+[data-code] {
+ display: inline-block;
+ cursor: pointer;
+ margin: 0 3px 3px 0;
+ padding: 1px 3px;
+ background-color: #efefef;
+ -webkit-border-radius: 3px;
+ -moz-border-radius: 3px;
+ -ms-border-radius: 3px;
+ border-radius: 3px; }
+
+.code-brk {
+ font-family: "Lucida Console", Monaco, monospace;
+ font-size: 10px;
+ color: #999999; }
-.jqx-scrollbar-button-state-normal {
- background-color: transparent;
- background-image: -moz-linear-gradient(top, transparent, transparent);
- background-image: -ms-linear-gradient(top, transparent, transparent);
- background-image: -o-linear-gradient(top, transparent, transparent);
- background-image: -webkit-gradient(linear, center top, center bottom, from(transparent), to(transparent));
- background-image: -webkit-linear-gradient(top, transparent, transparent);
- background-image: linear-gradient(top, transparent, transparent);
- background-image: linear-gradient(to bottom, transparent, transparent);
- -moz-background-clip: padding;
- background-clip: padding-box;
- -webkit-background-clip: padding-box;
- background-repeat: no-repeat; }
+/* Buttons */
+.btn-default {
+ color: #333; }
-.jqx-scrollbar-button-state-hover {
- background-color: transparent;
- background-image: -moz-linear-gradient(top, transparent, transparent);
- background-image: -ms-linear-gradient(top, transparent, transparent);
- background-image: -o-linear-gradient(top, transparent, transparent);
- background-image: -webkit-gradient(linear, center top, center bottom, from(transparent), to(transparent));
- background-image: -webkit-linear-gradient(top, transparent, transparent);
- background-image: linear-gradient(top, transparent, transparent);
- background-image: linear-gradient(to bottom, transparent, transparent);
- -moz-background-clip: padding;
- background-clip: padding-box;
- -webkit-background-clip: padding-box;
- background-repeat: no-repeat; }
+[data-role="remove"].btn-round {
+ position: relative;
+ top: -2px; }
-.jqx-scrollbar-button-state-pressed {
- background-color: transparent;
- background-image: -moz-linear-gradient(top, transparent, transparent);
- background-image: -ms-linear-gradient(top, transparent, transparent);
- background-image: -o-linear-gradient(top, transparent, transparent);
- background-image: -webkit-gradient(linear, center top, center bottom, from(transparent), to(transparent));
- background-image: -webkit-linear-gradient(top, transparent, transparent);
- background-image: linear-gradient(top, transparent, transparent);
- background-image: linear-gradient(to bottom, transparent, transparent);
- -moz-background-clip: padding;
- background-clip: padding-box;
- -webkit-background-clip: padding-box;
- background-repeat: no-repeat; }
+/* Tree */
+.tree-holder {
+ height: 150px;
+ overflow: auto; }
-.jqx-radiobutton-check-checked {
- background: #666666;
- width: 7px;
- height: 7px;
- margin-left: 2px;
- margin-top: 2px;
- border-width: 1px;
- border-style: solid; }
+.fx-tree-search {
+ margin-bottom: 5px; }
-.jqx-rc-tl {
- -moz-border-radius-topleft: 0;
- -webkit-border-radius-topleft: 0;
- border-radius-topleft: 0; }
+.fx-tree-buttons {
+ margin-bottom: 5px; }
-.jqx-rc-tr {
- -moz-border-radius-topright: 0;
- -webkit-border-radius-topright: 0;
- border-radius-topright: 0; }
+.jstree-anchor, .jstree-anchor:link, .jstree-anchor:visited, .jstree-anchor:hover, .jstree-anchor:active {
+ color: #333; }
-.jqx-rc-bl {
- -moz-border-radius-bottomleft: 0;
- -webkit-border-radius-bottomleft: 0;
- border-radius-bottomleft: 0; }
+/* Range Slider */
+.irs-bar, .irs-bar-edge, .irs-line {
+ height: 5px;
+ top: 37px; }
-.jqx-rc-br {
- -moz-border-radius-bottomright: 0;
- -webkit-border-radius-bottomright: 0;
- border-radius-bottomright: 0; }
+.irs-bar {
+ border-top: 1px solid #0076ff;
+ border-bottom: 1px solid #0076ff; }
-.jqx-rc-t {
- -moz-border-radius-topleft: 0;
- -webkit-border-top-left-radius: 0;
- border-top-left-radius: 0;
- -moz-border-radius-topright: 0;
- -webkit-border-top-right-radius: 0;
- border-top-right-radius: 0; }
+.irs-bar-edge {
+ border: 1px solid #0076ff; }
-.jqx-rc-b {
- -moz-border-radius-bottomleft: 0;
- -webkit-border-bottom-left-radius: 0;
- border-bottom-left-radius: 0;
- -moz-border-radius-bottomright: 0;
- -webkit-border-bottom-right-radius: 0;
- border-bottom-right-radius: 0; }
+.irs-bar, .irs-bar-edge {
+ background: #0076ff; }
-.jqx-rc-r {
- -moz-border-radius-topright: 0;
- -webkit-border-top-right-radius: 0;
- border-top-right-radius: 0;
- -moz-border-radius-bottomright: 0;
- -webkit-border-bottom-right-radius: 0;
- border-bottom-right-radius: 0; }
+.irs-line {
+ background: #bdbdbd;
+ border-color: transparent; }
-.jqx-rc-l {
- -moz-border-radius-topleft: 0;
- -webkit-border-top-left-radius: 0;
- border-top-left-radius: 0;
- -moz-border-radius-bottomleft: 0;
- -webkit-border-bottom-left-radius: 0;
- border-bottom-left-radius: 0; }
+.irs-slider {
+ background: white;
+ -webkit-box-shadow: none;
+ -moz-box-shadow: none;
+ box-shadow: none; }
+
+.irs-from, .irs-to, .irs-single {
+ background: transparent;
+ color: #0076ff; }
+
+/* Time */
+.time-selector-icon {
+ font-size: 20px; }
+
+[data-selector-time] .day.active {
+ background-color: #0076ff; }
+ [data-selector-time] .day.active:hover {
+ background-color: #407bbf; }
+[data-selector-time] .day.today:before {
+ border-bottom-color: #0076ff; }
+[data-selector-time] .month.active {
+ background-color: #0076ff; }
+[data-selector-time] .year.active {
+ background-color: #0076ff; }
+[data-selector-time] .fx-time-addon {
+ font-size: 24px;
+ padding: 2px 8px;
+ color: #0076ff; }
+[data-selector-time] [data-action="incrementHours"], [data-selector-time] [data-action="decrementHours"], [data-selector-time] [data-action="incrementMinutes"], [data-selector-time] [data-action="decrementMinutes"] {
+ font-size: 24px;
+ color: #0076ff; }
+[data-selector-time] [data-action="previous"] span:before, [data-selector-time] [data-action="next"] span:before {
+ content: none; }
+[data-selector-time] [data-action="next"] span {
+ background-position: -135px 0; }
+[data-selector-time] [data-action="previous"] span {
+ background-position: -135px -15px; }
+[data-selector-time] [data-action="togglePicker"] {
+ padding: 0; }
+ [data-selector-time] [data-action="togglePicker"] span {
+ font-size: 24px;
+ color: #0076ff;
+ line-height: 35px !important;
+ height: auto !important; }
+
+/* Sortable */
+.filter-sortable-list .list-item {
+ cursor: pointer;
+ margin: 3px;
+ padding: 1px 3px;
+ background-color: #efefef;
+ -webkit-border-radius: 3px;
+ -moz-border-radius: 3px;
+ -ms-border-radius: 3px;
+ border-radius: 3px; }
+
+[data-group] ul {
+ min-height: 50px;
+ padding: 6px 12px;
+ -webkit-box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.075);
+ -moz-box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.075);
+ box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.075);
+ -webkit-border-radius: 4px;
+ -moz-border-radius: 4px;
+ -ms-border-radius: 4px;
+ border-radius: 4px;
+ background-color: white;
+ background-image: none;
+ border: 1px solid #d8d8d8; }
-.jqx-radiobutton-default, .jqx-radiobutton, .jqx-radiobutton-check-checked, .jqx-radiobutton-hover, .jqx-radiobutton-check-indeterminate, .jqx-radiobutton-check-indeterminate-disabled, .jqx-slider-button {
- -moz-border-radius: 100% !important;
- -webkit-border-radius: 100% !important;
- border-radius: 100% !important; }
+/* Analysis */
+.fx-grid-item {
+ padding: 5px; }
-.jqx-rc-all, .jqx-tooltip, .jqx-tooltip-text, .jqx-tooltip-main {
- -moz-border-radius: 0;
- -webkit-border-radius: 0;
- border-radius: 0; }
+.fx-grid-item[data-size="full"] {
+ width: 100%; }
-.jqx-menu-vertical {
- background: white; }
+.fx-grid-item[data-size="half"] {
+ width: 50%; }
-.jqx-widget .jqx-grid-column-header, .jqx-widget .jqx-grid-cell, .jqx-widget .jqx-grid-group-cell, .jqx-grid-cell {
- border-color: #e5e5e5; }
+.courtesy-img {
+ width: 140px;
+ height: 129px;
+ background-image: url("../../submodules/fenix-ui-common//css/img/mascot-01-gray.svg");
+ background-size: contain;
+ background-repeat: no-repeat;
+ margin: 25px auto; }
-.jqx-tooltip, .jqx-tooltip-main {
- color: #666666;
- text-shadow: none;
- border-color: #aaa;
- background-color: #dddddd; }
+.pulse-button {
+ font-size: 20px;
+ display: inline-block;
+ color: white;
+ position: relative;
+ overflow: hidden;
+ z-index: 2;
+ width: 37px;
+ height: 37px;
+ line-height: 37px;
+ padding: 0;
+ background-color: #0076ff;
+ -webkit-border-radius: 50%;
+ -moz-border-radius: 50%;
+ -ms-border-radius: 50%;
+ border-radius: 50%;
+ cursor: pointer;
+ vertical-align: middle;
+ margin: 10px;
+ box-shadow: 0 0 0 0 rgba(0, 118, 255, 0.7);
+ -webkit-animation: pulse 1.25s infinite cubic-bezier(0.66, 0, 0, 1);
+ -moz-animation: pulse 1.25s infinite cubic-bezier(0.66, 0, 0, 1);
+ -ms-animation: pulse 1.25s infinite cubic-bezier(0.66, 0, 0, 1);
+ animation: pulse 1.25s infinite cubic-bezier(0.66, 0, 0, 1); }
+ .pulse-button span {
+ position: relative;
+ left: 1px; }
+ .pulse-button:hover, .pulse-button:focus, .pulse-button:active, .pulse-button:visited, .pulse-button.first-init {
+ color: white;
+ -webkit-animation: none;
+ -moz-animation: none;
+ -ms-animation: none;
+ animation: none; }
+
+@-webkit-keyframes pulse {
+ to {
+ box-shadow: 0 0 0 45px rgba(0, 118, 255, 0); } }
+@-moz-keyframes pulse {
+ to {
+ box-shadow: 0 0 0 45px rgba(0, 118, 255, 0); } }
+@-ms-keyframes pulse {
+ to {
+ box-shadow: 0 0 0 45px rgba(0, 118, 255, 0); } }
+@keyframes pulse {
+ to {
+ box-shadow: 0 0 0 45px rgba(0, 118, 255, 0); } }
+/* Visualization Box Style */
+.fx-box {
+ height: 450px;
+ /* Hovered */ }
+ .fx-box [data-content] {
+ display: none;
+ height: 450px;
+ position: relative; }
+ .fx-box [data-content] .loading {
+ position: absolute;
+ top: 45%; }
+ .fx-box .front-content, .fx-box .back-content {
+ height: 424px;
+ overflow: hidden; }
+ .fx-box [data-content="error"], .fx-box [data-content="loading"], .fx-box [data-content="empty"], .fx-box [data-content="huge"] {
+ border: 1px solid #e0e0e0; }
+ .fx-box .box-title {
+ margin-left: 85px;
+ margin-right: 192px; }
+ .fx-box .toolbar-cmd-left, .fx-box .toolbar-cmd-right {
+ opacity: 1;
+ pointer-events: auto; }
+ @media screen and (min-width: 768px) {
+ .fx-box .front-toolbar .toolbar-cmd-left, .fx-box .front-toolbar .toolbar-cmd-right {
+ opacity: 0;
+ pointer-events: none;
+ -webkit-transition: all 0.3s ease 0.2s;
+ -moz-transition: all 0.3s ease 0.2s;
+ -ms-transition: all 0.3s ease 0.2s;
+ -o-transition: all 0.3s ease 0.2s;
+ transition: all 0.3s ease 0.2s; }
+ .fx-box .front-toolbar .box-title {
+ margin-left: 15px;
+ margin-right: 15px;
+ -webkit-transition: all 0.3s ease 0.2s;
+ -moz-transition: all 0.3s ease 0.2s;
+ -ms-transition: all 0.3s ease 0.2s;
+ -o-transition: all 0.3s ease 0.2s;
+ transition: all 0.3s ease 0.2s; }
+ .fx-box:hover .front-toolbar .toolbar-cmd-left, .fx-box:hover .front-toolbar .toolbar-cmd-right {
+ opacity: 1;
+ pointer-events: auto; }
+ .fx-box:hover .front-toolbar .box-title {
+ margin-left: 85px;
+ margin-right: 192px; } }
+ .fx-box[data-status="ready"] [data-content="ready"] {
+ display: block; }
+ .fx-box[data-status="error"] [data-content="error"] {
+ display: block; }
+ .fx-box[data-status="loading"] [data-content="loading"] {
+ display: block; }
+ .fx-box[data-status="empty"] [data-content="empty"] {
+ display: block; }
+ .fx-box[data-status="huge"] [data-content="huge"] {
+ display: block; }
+ .fx-box [data-content="ready"] [data-section] {
+ display: none; }
+ .fx-box [data-content="ready"][data-tab="chart"] [data-section="chart"] {
+ display: block; }
+ .fx-box [data-content="ready"][data-tab="table"] [data-section="table"] {
+ display: block; }
+ .fx-box [data-content="ready"][data-tab="map"] [data-section="map"] {
+ display: block; }
+ .fx-box [data-content="ready"][data-tab="blank"] [data-section="blank"] {
+ display: block; }
+ .fx-box [data-content="ready"][data-tab="metadata"] [data-section="metadata"] {
+ display: block; }
+ .fx-box [data-content="ready"][data-tab="download"] [data-section="download"] {
+ display: block; }
-.jqx-combobox-content, .jqx-input {
- color: #666666;
- text-shadow: none;
- border-color: #D2D0D0;
- background-color: white; }
+.vb-toolbar {
+ background-color: white;
+ border-bottom: 1px solid #e0e0e0; }
+ .vb-toolbar .meta-btn {
+ margin-top: 2px; }
+ .vb-toolbar .toolbar-cmd-left {
+ width: 85px;
+ position: absolute;
+ top: 0;
+ left: 0; }
+ .vb-toolbar .toolbar-cmd-right {
+ width: 192px;
+ position: absolute;
+ top: 0;
+ right: 0;
+ text-align: right;
+ font-size: 0;
+ /* Avoid space between elements with display inline */ }
+ .vb-toolbar .toolbar-cmd-right button {
+ float: none;
+ /* Avoid 1px bug on the right in md resolution */
+ margin-left: 0 !important;
+ /* Avoid 1px bug of the bootstrap's btn-group */
+ display: inline-block; }
+ .vb-toolbar .toolbar-cmd-right button[data-action="flip"] {
+ background-color: #e0e0e0; }
+ .vb-toolbar .toolbar-cmd-right button:last-child {
+ margin-right: 0;
+ /* Remove margin from the last child of btn-group */ }
+ .vb-toolbar button {
+ border: 0;
+ background-color: transparent;
+ font-size: 16px;
+ padding: 1px 10px 0 10px;
+ -moz-border-radius-topleft: 0;
+ -webkit-border-top-left-radius: 0;
+ border-top-left-radius: 0;
+ -moz-border-radius-topright: 0;
+ -webkit-border-top-right-radius: 0;
+ border-top-right-radius: 0;
+ -moz-border-radius-bottomright: 0;
+ -webkit-border-bottom-right-radius: 0;
+ border-bottom-right-radius: 0;
+ -moz-border-radius-bottomleft: 0;
+ -webkit-border-bottom-left-radius: 0;
+ border-bottom-left-radius: 0;
+ -webkit-border-radius: 0;
+ -moz-border-radius: 0;
+ -ms-border-radius: 0;
+ border-radius: 0; }
+ .vb-toolbar button[disabled] {
+ background-color: transparent;
+ border: 0;
+ opacity: 1; }
+ .vb-toolbar button[disabled] span {
+ opacity: 0.35; }
+ .vb-toolbar button:hover {
+ border: 0;
+ border-color: transparent;
+ background-color: #e0e0e0;
+ color: #0076ff; }
+ .vb-toolbar .box-title {
+ color: #0076ff;
+ margin-top: 5px;
+ margin-bottom: 5px; }
+
+/*Flip effect */
+/* entire container, keeps perspective */
+.flip-container {
+ perspective: 1000;
+ height: 450px; }
+
+/* flip the pane when hovered*/
+.flip-container.flipped .flipper {
+ transform: rotateY(180deg); }
+
+/* flip speed goes here */
+.flipper {
+ transition: 0.6s;
+ transform-style: preserve-3d;
+ height: 100%;
+ position: relative; }
-.jqx-combobox-input {
- color: #666666;
- text-shadow: none; }
+/* hide back of pane during swap */
+.front, .back {
+ -webkit-backface-visibility: hidden;
+ backface-visibility: hidden;
+ width: 100%;
+ position: absolute;
+ top: 0;
+ left: 0;
+ border: 1px solid #e0e0e0; }
-.jqx-input-content {
- color: #666666;
- text-shadow: none;
+/* FRONT pane, placed above back */
+.front {
+ z-index: 2;
+ /* for firefox 31 */
+ transform: rotateY(0deg);
background-color: white; }
+ .front .tab-item-content[id^="metadata"] {
+ padding: 0 15px;
+ overflow-y: scroll;
+ overflow-x: hidden; }
-.jqx-fill-state-focus, .jqx-popup .jqx-fill-state-focus {
- border-color: #666666; }
+.tab-item-content-wrapper {
+ position: relative;
+ z-index: 0;
+ height: 100%; }
-.jqx-popup.jqx-listbox, .jqx-popup.jqx-calendar, .jqx-menu-dropdown, .jqx-popup.jqx-dropdownbutton-popup {
- color: #666666;
- text-shadow: none;
- border-color: #666666;
- background-color: white; }
+.tab-item-content {
+ height: 100%; }
+ .tab-item-content[id^="table"], .tab-item-content[id^="chart"] {
+ padding: 40px 15px 15px 15px; }
-/* Fenix - Js tree */
-.jstree-default .jstree-search {
- color: #666666;
- font-weight: 300;
- font-style: normal; }
+[data-section] {
+ position: relative;
+ height: 100%; }
-.jstree-default .jstree-themeicon {
- display: none;
- /* It hides folder icon */ }
+/* Z-index fix */
+.front-toolbar, .back-toolbar {
+ position: relative;
+ z-index: 1; }
+
+.back-toolbar {
+ /* COOL BACK TOOLBAR EFFECT */
+ opacity: 0.5;
+ -ms-transform: rotateY(180deg);
+ -webkit-transform: rotateY(180deg);
+ transform: rotateY(180deg);
+ pointer-events: none; }
+ .back-toolbar * {
+ pointer-events: none !important; }
+
+.front-content, .back-content {
+ position: relative;
+ z-index: 0; }
-.jstree-default .jstree-node,
-.jstree-default .jstree-icon {
- background-image: url("../../submodules/fenix-ui-common//css/img/treejs-32px.png"); }
+/* BACK, initially hidden pane */
+.back {
+ transform: rotateY(180deg);
+ background-color: #e0e0e0; }
-.jstree-default .jstree-wholerow-clicked {
- background: none;
- background-color: #9dd2f7; }
+[data-role="back-content"] {
+ height: 100%; }
-.jstree-default .jstree-wholerow-hovered {
- background: none;
- background-color: #9dd2f7; }
+.back-toolbar {
+ position: relative;
+ z-index: 1; }
-/* Packery _ Fenix */
-/* clearfix */
-#fx-ana-result-container:after {
- content: ' ';
- display: block;
- clear: both; }
+.back-content {
+ position: relative;
+ z-index: 0; }
+ .back-content .alert {
+ position: absolute;
+ width: calc(100% - 30px);
+ z-index: 2; }
+
+.process-details {
+ height: 350px;
+ overflow-x: hidden;
+ overflow-y: auto;
+ background-color: white; }
+ .process-details [data-tab="metadata"] {
+ padding: 0 15px; }
+ .process-details [data-tab="aggregations"] {
+ padding: 0 15px; }
+ .process-details [data-tab="map"] {
+ padding: 0 15px; }
+
+.show-back-sidebar {
+ position: absolute;
+ z-index: 2;
+ top: 15px;
+ left: 15px; }
+
+.sidebar-title {
+ color: #999999;
+ padding: 0 15px;
+ border-bottom: 1px solid #e0e0e0;
+ padding-bottom: 10px; }
+
+/* Filter Swiper */
+.filter-slide {
+ padding: 15px;
+ border: 1px solid transparent;
+ -webkit-transition: all 0.3s ease 0s;
+ -moz-transition: all 0.3s ease 0s;
+ -ms-transition: all 0.3s ease 0s;
+ -o-transition: all 0.3s ease 0s;
+ transition: all 0.3s ease 0s; }
+ .filter-slide [data-selector] .btn-group.controller {
+ opacity: 1; }
+ .filter-slide.swiper-slide-active {
+ /* Stylize the active filter */ }
+
+@media screen and (min-width: 480px) {
+ .fx-grid-item[data-size="full"] .filter-slide {
+ width: 50%; } }
+
+.swiper-button-prev {
+ background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'#0076ff'%2F%3E%3C%2Fsvg%3E");
+ left: 0;
+ right: auto;
+ background-size: 20px 30px; }
-.fx-analysis-item {
- width: 50%;
- height: 450px;
- padding: 22px 10px 10px 10px;
- z-index: 200;
- /* Veify correct z.index */ }
- .fx-analysis-item.fit {
- width: 100%; }
+.swiper-button-next {
+ background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'#0076ff'%2F%3E%3C%2Fsvg%3E");
+ right: 2px;
+ left: auto;
+ background-size: 20px 30px; }
-.fx-analysis-item .fx-widget .tab-content {
- height: 350px;
- overflow-y: auto;
- overflow-x: hidden; }
+.swiper-pagination-bullet-active {
+ background: #0076ff; }
-.grid-sizer {
- width: 50%; }
+.back-right-content {
+ height: 100%;
+ padding-top: 15px;
+ position: relative;
+ z-index: 0; }
-/* Leaflet */
-/* Fenix Leaflet Import */
-/* Fenix Leaflet Zoom control 0.7.3*/
-/* Base */
-/* Base style File */
-a {
- color: #ec6e00; }
+.swiper-container {
+ width: 100%;
+ height: 350px; }
-.fx-sandbox {
- /* TEMPORARY */ }
- .fx-sandbox h1.flude-analysis-title {
- color: white;
- display: inline-block; }
- .fx-sandbox h2.filter-opener-flude, .fx-sandbox h2.filter-opener-faostat {
- margin-top: 10px; }
- .fx-sandbox .flude-topic-selector {
- width: calc(100% - 250px) !important; }
- .fx-sandbox .home-logo {
- background-image: url(../../src/css/img/flude-logo.jpg);
- height: 75px;
- background-repeat: no-repeat;
- position: relative;
- left: -15px;
- max-width: 80%; }
- .fx-sandbox .compare-wrapper {
- position: absolute;
- right: 15px;
- top: 3px;
- width: 420px;
- height: 46px;
- -webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- -ms-border-radius: 5px;
- border-radius: 5px;
+.back-row {
+ position: relative;
+ height: 100%; }
+
+[data-role='back-sidebar'] {
+ z-index: 1;
+ height: 100%;
+ position: absolute; }
+ [data-role='back-sidebar'] .sidebar-content {
background-color: white;
- border: 1px solid #3883c0; }
- .fx-sandbox .compare-title {
- color: #4387bf;
+ border: 1px solid #e0e0e0;
+ height: calc(100% - 30px);
+ width: calc(100% - 30px);
+ position: absolute;
+ top: 15px;
+ left: 15px; }
+ [data-role='back-sidebar'] .sidebar-content .process-steps-container {
+ padding: 5px 15px;
+ position: absolute;
+ bottom: 0;
+ height: 360px;
+ width: 100%;
+ overflow-x: hidden;
+ overflow-y: scroll; }
+ @media screen and (min-width: 768px) {
+ [data-role='back-sidebar'] {
+ position: absolute; } }
+ @media screen and (min-width: 992px) {
+ [data-role='back-sidebar'] {
+ position: relative; } }
+ @media screen and (min-width: 1200px) {
+ [data-role='back-sidebar'] {
+ position: relative; } }
+
+.step-container {
+ padding: 5px 10px;
+ margin: 7px 0;
+ cursor: pointer;
+ background-color: #e0e0e0;
+ position: relative; }
+ .step-container .step-title {
+ font-weight: normal;
margin: 0;
+ margin-left: 25px;
+ color: #333; }
+ .step-container .step-icon {
display: inline-block;
- position: relative;
- left: 15px;
- top: 13px; }
- .fx-sandbox .toggle-wrapper {
- position: absolute;
- right: 10px;
- top: 7px; }
- .fx-sandbox input#toggle-side-faostat + label {
- display: block;
- position: relative;
- box-shadow: inset 0 0 0px 1px #d5d5d5;
- text-indent: -5000px;
- height: 30px;
- width: 50px;
- border-radius: 15px; }
- .fx-sandbox input#toggle-side-faostat + label:before {
- content: "";
position: absolute;
- display: block;
- height: 30px;
- width: 30px;
+ height: 100%;
+ width: 29px;
+ background-color: #0076ff;
top: 0;
left: 0;
- border-radius: 15px;
- background: rgba(19, 191, 17, 0);
- -moz-transition: .25s ease-in-out;
- -webkit-transition: .25s ease-in-out;
- transition: .25s ease-in-out; }
- .fx-sandbox input#toggle-side-faostat + label:after {
- content: "";
+ color: white; }
+ .step-container .step-icon:before {
+ font-size: 16px;
+ position: relative;
+ top: 4px;
+ left: 7px; }
+ .step-container.active:before {
+ content: '';
position: absolute;
+ right: 0;
+ bottom: 0;
+ z-index: 1;
+ width: 0;
+ height: 0;
+ border-style: solid;
+ border-width: 0 0 8px 8px;
+ border-color: transparent transparent #333 transparent;
+ line-height: 0px;
+ _border-color: #000000 #000000 #333 #000000;
+ _filter: progid:DXImageTransform.Microsoft.Chroma(color='#000000'); }
+
+/*********************
+ Shadows
+**********************/
+.z-depth-0 {
+ box-shadow: none !important; }
+
+.z-depth-1, .btn-floating {
+ box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12); }
+
+.z-depth-1-half, .btn-floating:hover {
+ box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15); }
+
+.z-depth-2 {
+ box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); }
+
+.z-depth-3 {
+ box-shadow: 0 12px 15px 0 rgba(0, 0, 0, 0.24), 0 17px 50px 0 rgba(0, 0, 0, 0.19); }
+
+.z-depth-4 {
+ box-shadow: 0 16px 28px 0 rgba(0, 0, 0, 0.22), 0 25px 55px 0 rgba(0, 0, 0, 0.21); }
+
+.z-depth-5 {
+ box-shadow: 0 27px 24px 0 rgba(0, 0, 0, 0.2), 0 40px 77px 0 rgba(0, 0, 0, 0.22); }
+
+.hoverable:hover {
+ transition: box-shadow .25s;
+ box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); }
+
+.btn-floating {
+ display: inline-block;
+ color: #fff;
+ position: relative;
+ overflow: hidden;
+ z-index: 2;
+ width: 37px;
+ height: 37px;
+ line-height: 37px;
+ padding: 0;
+ background-color: #0076ff;
+ -webkit-border-radius: 50%;
+ -moz-border-radius: 50%;
+ -ms-border-radius: 50%;
+ border-radius: 50%;
+ transition: .3s;
+ cursor: pointer;
+ vertical-align: middle;
+ margin: 10px; }
+
+[data-role="toolbar"] {
+ height: 424px;
+ overflow-y: scroll;
+ overflow-x: hidden;
+ z-index: 1;
+ position: absolute;
+ background-color: white;
+ padding-top: 60px;
+ top: 0;
+ left: -570px;
+ -webkit-transition: all 0.3s ease 0s;
+ -moz-transition: all 0.3s ease 0s;
+ -ms-transition: all 0.3s ease 0s;
+ -o-transition: all 0.3s ease 0s;
+ transition: all 0.3s ease 0s; }
+ [data-role="toolbar"].in {
+ left: 0; }
+
+.btn-fx-toolbar, .btn-fx-toolbar-confirm {
+ position: absolute;
+ top: 0;
+ left: 0; }
+ .btn-fx-toolbar span[class^="icojam_"], .btn-fx-toolbar-confirm span[class^="icojam_"] {
+ color: white;
+ font-size: 20px;
+ position: relative;
+ top: 3px; }
+
+.btn-fx-toolbar-confirm {
+ left: 50px;
+ background-color: white;
+ opacity: 0;
+ pointer-events: none; }
+ .btn-fx-toolbar-confirm.in {
+ opacity: 1;
+ pointer-events: auto; }
+ .btn-fx-toolbar-confirm span[class^="icojam_"] {
+ color: #333; }
+
+/* OLAP */
+.tab-item-content .gt-viewport {
+ font-family: "Lucida Console", Monaco, monospace !important;
+ font-size: 12px !important;
+ color: #333 !important; }
+
+.gt-hd-row td .gt-inner {
+ padding-top: 5px;
+ padding-bottom: 5px; }
+
+.gt-inner {
+ padding-top: 5px;
+ padding-bottom: 5px; }
+
+.gt-row-selected td {
+ background-color: #e6f1ff; }
+
+.gt-head-wrap td {
+ background-color: #f4f4f4 !important; }
+
+/* Freezed Rows */
+.fx-box .gt-freeze-div[id*="bodyDiv"] td {
+ background-color: #f4f4f4 !important; }
+
+/* Freezed Header */
+.gt-hd-split {
+ background-color: transparent !important;
+ border-right: 1px solid #bbbbbb !important;
+ padding-left: 5px !important;
+ position: relative;
+ overflow: visible; }
+ .gt-hd-split:before {
+ content: '';
display: block;
- height: 30px;
- width: 30px;
- top: 0;
- left: 0px;
- border-radius: 15px;
- background: white;
- box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2), 0 2px 4px rgba(0, 0, 0, 0.2);
- -moz-transition: .25s ease-in-out;
- -webkit-transition: .25s ease-in-out;
- transition: .25s ease-in-out; }
- .fx-sandbox input#toggle-side-faostat:checked + label:before {
- width: 50px;
- background: #13bf11;
- border-width: 0; }
- .fx-sandbox input#toggle-side-faostat:checked + label:after {
- left: 20px;
- box-shadow: inset 0 0 0 1px #13bf11, 0 2px 4px rgba(0, 0, 0, 0.2); }
- .fx-sandbox .home-back-btn {
- height: 75px;
- width: 86px;
- background-image: url(../../src/css/img/home-btn.jpg);
+ height: 100%;
position: absolute;
top: 0;
- right: 0;
- cursor: pointer; }
- .fx-sandbox .home-back-btn .return-btn {
- display: block;
- height: 100%;
- width: 100%; }
- .fx-sandbox .filter-container {
- min-height: 70px; }
- .fx-sandbox .filter-container-fs {
- min-height: 65px; }
- .fx-sandbox .obj-box-header {
- padding: 5px 15px;
- height: 34px;
- border: 1px solid #C2C2C2;
- background: #fafafa;
- box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.05);
- -moz-box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.05);
- -webkit-box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.05); }
- .fx-sandbox .obj-box-header .btn-default {
- position: absolute;
- right: 25px;
- top: 6px; }
- .fx-sandbox .obj-box-header h1 {
- color: #333;
- margin: 0; }
- .fx-sandbox .obj-box, .fx-sandbox .obj-box-radius10, .fx-sandbox .obj-box-title {
- margin-top: 0;
- position: relative;
- min-height: 155px; }
- .fx-sandbox .obj-box #flude-download, .fx-sandbox .obj-box-radius10 #flude-download, .fx-sandbox .obj-box-title #flude-download {
- width: 230px;
- position: absolute;
- right: 15px;
- top: 35px; }
- .fx-sandbox .invi {
- display: none; }
- .fx-sandbox .truncate {
- min-width: 250px;
- white-space: nowrap;
- overflow: hidden;
- text-overflow: ellipsis; }
- .fx-sandbox .upper {
- text-transform: uppercase; }
- .fx-sandbox .btn {
- -webkit-border-radius: 2;
- -moz-border-radius: 2;
- -ms-border-radius: 2;
- border-radius: 2;
- min-width: 100px;
- padding: 3px 12px;
- font-size: 12px;
- background-color: #4387bf;
- border: 1px solid #3883c0;
- color: white; }
- .fx-sandbox .btn:hover, .fx-sandbox .btn:focus, .fx-sandbox .btn:active, .fx-sandbox .btn:visited {
- background-color: #3e90d4;
- border: 1px solid #2f7dbe;
- color: white; }
- .fx-sandbox .btn.btn-default.json-editor-btn-collapse {
- color: #0f6eae !important;
- border-color: transparent !important; }
- .fx-sandbox .btn.btn-default.json-editor-btn-collapse i {
- color: #0f6eae !important; }
- .fx-sandbox .btn.btn-default.json-editor-btn-collapse i:before {
- content: 'EXPAND';
- font-size: 10px;
- color: #666666; }
- .fx-sandbox .btn-table-go, .fx-sandbox .btn-scores-go {
- background-color: #4387bf;
- color: white; }
- .fx-sandbox .btn-table-go:hover, .fx-sandbox .btn-table-go:active, .fx-sandbox .btn-table-go:visited, .fx-sandbox .btn-table-go:focus, .fx-sandbox .btn-scores-go:hover, .fx-sandbox .btn-scores-go:active, .fx-sandbox .btn-scores-go:visited, .fx-sandbox .btn-scores-go:focus {
- background-color: #4387bf;
- border-color: transparent;
- color: white; }
- .fx-sandbox .btn-reset {
- background-color: white;
- color: #666666;
- border-color: transparent; }
- .fx-sandbox .btn-reset:hover, .fx-sandbox .btn-reset:active, .fx-sandbox .btn-reset:visited, .fx-sandbox .btn-reset:focus {
- background-color: white;
- border-color: transparent;
- color: #666666; }
- .fx-sandbox .whole-btn {
- background-color: #e19a0e;
- border-color: #a4812f; }
- .fx-sandbox .whole-btn:hover, .fx-sandbox .whole-btn:focus, .fx-sandbox .whole-btn:active {
- background-color: #a4812f;
- border-color: #a4812f; }
- .fx-sandbox .fm-legend-layertitle {
- font-size: 0 !important; }
- .fx-sandbox .fm-legend-layertitle:before {
- content: 'Legend';
- font: normal normal 300 12px/normal "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
+ left: 3px;
+ width: 1px;
+ border-right: 1px solid #bbbbbb; }
-/* Components */
-/* BreadCrumbs */
-#breadcumb_container {
- height: 35px;
- overflow: hidden;
- text-overflow: ellipsis;
- white-space: nowrap; }
+.gt-freeze-div[id*="headDiv"] table {
+ border-bottom: 1px solid #d6d6d6 !important;
+ /* Suspicious */ }
+.gt-freeze-div[id*="headDiv"] td {
+ background-color: #f4f4f4 !important; }
-.breadcrumb {
- background-color: transparent;
- font-size: 12px;
- font-weight: bold;
- padding: 8px 0;
- margin-bottom: 0; }
- .breadcrumb li a {
- color: #666666;
- text-transform: uppercase; }
+.gt-row-over td {
+ border-bottom-color: #0076ff; }
-.breadcrumb > li + li:before {
- content: '|';
- color: #666666; }
+.gt-row-even {
+ background-color: white; }
-/* FAO Like Top Menu */
-.internal-fao-header {
- background-image: url(../../src/css/img/flude-header-bg.jpg);
- height: 75px; }
+/* Hide selectors */
+[data-section="table"] [data-role="toolbar"] [data-group="hidden"], [data-section="table"] [data-role="toolbar"] [data-group="aggregations"], [data-section="table"] [data-role="toolbar"] [data-group="values"], [data-section="table"] [data-role="toolbar"] [data-selector="aggregatorValue"], [data-section="chart"] [data-role="toolbar"] [data-group="hidden"], [data-section="chart"] [data-role="toolbar"] [data-group="aggregations"], [data-section="chart"] [data-role="toolbar"] [data-group="values"], [data-section="chart"] [data-role="toolbar"] [data-selector="aggregatorValue"] {
+ display: none !important; }
-/*//////////////////////////////////////////// Navbar Media queries */
-/* Ipad */
-/* Iphone */
-@media (max-width: 767px) {
- /* End of the iPhone media query*/ }
-/*Form */
-.form-control {
- -webkit-transition: none;
- -moz-transition: none;
- -ms-transition: none;
- -o-transition: none;
- transition: none;
- outline: none;
- background-color: #ededed;
- -webkit-box-shadow: none;
- -moz-box-shadow: none;
- box-shadow: none;
- border-color: transparent;
- -webkit-border-radius: 5;
- -moz-border-radius: 5;
- -ms-border-radius: 5;
- border-radius: 5;
- font-weight: 500;
- padding: 3px 12px;
- font-size: 12px;
- height: 28px; }
- .form-control:focus {
+/* Toolbar */
+.gt-toolbar-box {
+ padding-top: 5px;
+ height: 30px; }
+
+.gt-button-split {
+ width: 15px;
+ background-color: transparent; }
+
+.gt-image-button div, .gt-image-button button {
+ position: relative;
+ top: 3px; }
+
+.gt-toolbar-text {
+ margin-left: 3px; }
+
+/* Map Tab */
+[data-section="map"] .btn-fx-toolbar-confirm {
+ display: none; }
+
+.fm-icon-close {
+ display: none; }
+
+.fm-controller-box-content {
+ min-height: 50px;
+ padding: 6px 12px;
+ -webkit-box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.075);
+ -moz-box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.075);
+ box-shadow: inset 0px 1px 1px rgba(0, 0, 0, 0.075);
+ -webkit-border-radius: 4px;
+ -moz-border-radius: 4px;
+ -ms-border-radius: 4px;
+ border-radius: 4px;
+ background-color: white;
+ background-image: none;
+ border: 1px solid #d8d8d8; }
+ .fm-controller-box-content[id*="controller-baselayer-content"] {
-webkit-box-shadow: none;
-moz-box-shadow: none;
box-shadow: none;
- outline: none;
- border-color: #4387bf; }
-
-.input-group-btn .btn {
- border-left: 0; }
- .input-group-btn .btn:hover {
- border-color: transparent; }
+ border-top: none;
+ border-right: none;
+ border-bottom: none;
+ border-left: none;
+ border: none;
+ padding: 0; }
-/* Jstree Mood */
-li[role="treeitem"]:nth-child(odd) {
- background-color: #f2f2f2 !important; }
+.fm-controller-box-item {
+ cursor: pointer;
+ margin: 3px;
+ padding: 1px 3px;
+ height: 93px !important;
+ background-color: #efefef;
+ -webkit-border-radius: 3px;
+ -moz-border-radius: 3px;
+ -ms-border-radius: 3px;
+ border-radius: 3px; }
+ .fm-controller-box-item .ui-state-default, .fm-controller-box-item .ui-widget-content .ui-state-default, .fm-controller-box-item .ui-widget-header .ui-state-default {
+ top: 25px;
+ width: 27px;
+ height: 27px;
+ border: 1px solid #AAA;
+ background: #DDD;
+ background: white !important;
+ /* W3C */
+ border-radius: 27px;
+ -moz-border-radius: 27px;
+ box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
+ cursor: pointer; }
+ .fm-controller-box-item .ui-slider-handle {
+ top: -14px !important; }
+ .fm-controller-box-item .ui-widget-header {
+ background-color: #0076ff; }
-ul[role="group"] {
- background-color: white; }
+.btn-fx-status-btn span[class^="icojam_"] {
+ color: white;
+ font-size: 20px;
+ position: relative;
+ top: 3px; }
-.jstree-container-ul {
- width: calc(100% - 25px); }
+.content-message {
+ margin-top: 80px; }
-.jstree-icon.External {
- display: inline-block;
- background-image: none; }
- .jstree-icon.External:before {
- content: 'E';
- font-style: normal;
- background-color: #666666;
- display: inline-block;
- color: white;
- line-height: 15px;
- width: 15px;
- height: 15px; }
+.content-message-img {
+ width: 140px;
+ height: 129px;
+ background-size: contain;
+ background-repeat: no-repeat;
+ margin: 25px auto; }
+ .content-message-img.empty-img {
+ background-image: url("../../submodules/fenix-ui-common//css/img/mascot-empty-gray.svg"); }
+ .content-message-img.error-img {
+ background-image: url("../../submodules/fenix-ui-common//css/img/mascot-error-gray.svg"); }
+ .content-message-img.huge-img {
+ background-image: url("../../submodules/fenix-ui-common//css/img/mascot-huge-gray.svg"); }
-.jstree-disabled {
- opacity: 0.5; }
+body {
+ background-color: #f8f8f8;
+ font-family: "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif; }
-/* Override Fenix Tree */
-.jstree-default-responsive .jstree-anchor {
- white-space: normal;
- height: auto; }
+/** Venn Text Area */
+#venn-diagram-info-box textarea {
+ width: 100%;
+ height: 500px;
+ padding: 10px;
+ resize: none; }
+
+/** Table Sort Icons */
+/** Table Header */
+.gt-hd-row td .gt-inner {
+ font-weight: 600;
+ font-size: 14px;
+ text-transform: none; }
+
+/*!** Table Highlighted Columns: Comparative Advantage Only *!
+div[data-item="comp_advantage"] .gt-col-1_11-ratio, div[data-item="comp_advantage"] .gt-col-1_11-purposecode_en, div[data-item="comp_advantage"] .gt-col-1_11-year {
+ background-color:#eef6ff;
+}*/
+/** Table Cell Alignment */
+.gt-inner-left {
+ text-align: left; }
+
+/** Table Page size drop-down */
+.gt-pagesize-select {
+ width: 48px; }
+
+.big-col-width {
+ width: 246px; }
+
+.smaller-col-width {
+ width: 66px; }
+
+.small-col-width {
+ width: 96px; }
+
+.obj-box-info {
+ font-size: 12px; }
-[role='treeitem'] {
- position: relative; }
- [role='treeitem'] .jstree-wholerow {
- height: 100%; }
- [role='treeitem'] .jstree-wholerow-clicked {
- height: 100%; }
- [role='treeitem'][aria-expanded='true'] [role='group'] .jstree-ocl {
- display: none; }
- [role='treeitem'][aria-expanded='true'] [role='group'] .jstree-anchor {
- padding-left: 35px; }
- [role='treeitem'][aria-expanded='true'] [role='group'] .jstree-anchor .jstree-checkbox {
- position: absolute;
- left: 10px; }
+/*.gt-row-selected td {
+!** background-color: #e6f1ff; **!
-/* Subemenu */
-.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:focus, .navbar-default .navbar-nav > .open > a:hover {
- background-color: #f1f1f1;
- border-right-color: transparent; }
+}
-.dropdown.open .dropdown-menu {
- z-index: 2; }
-.dropdown .dropdown-menu {
- -moz-border-radius-topleft: 0;
- -webkit-border-top-left-radius: 0;
- border-top-left-radius: 0;
- -moz-border-radius-topright: 0;
- -webkit-border-top-right-radius: 0;
- border-top-right-radius: 0;
- -moz-border-radius-bottomright: 0;
- -webkit-border-bottom-right-radius: 0;
- border-bottom-right-radius: 0;
- -moz-border-radius-bottomleft: 0;
- -webkit-border-bottom-left-radius: 0;
- border-bottom-left-radius: 0;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- border-radius: 0;
- -webkit-box-shadow: none;
- -moz-box-shadow: none;
- box-shadow: none;
- border: 0;
- background-color: #f1f1f1;
- min-width: 250px;
- padding: 0; }
- .dropdown .dropdown-menu > li {
- height: 40px;
- border-bottom: 1px solid white;
- position: relative;
- cursor: pointer; }
- .dropdown .dropdown-menu > li:last-child {
- border-bottom-color: transparent; }
- .dropdown .dropdown-menu > li:hover {
- background-color: #9dd2f7; }
- .dropdown .dropdown-menu > li:hover:before {
- content: '';
- position: absolute;
- width: 5px;
- height: 100%;
- background-color: #0f6eae;
- right: 0;
- top: 0; }
- .dropdown .dropdown-menu > li > a {
- text-transform: uppercase;
- color: #666666;
- font-size: 12px;
- position: relative;
- top: 50%;
- height: 100%;
- padding-top: 12px;
- -ms-transform: translateY(-50%);
- -webkit-transform: translateY(-50%);
- transform: translateY(-50%); }
- .dropdown .dropdown-menu > li > a:hover {
- background-color: transparent; }
- .dropdown .dropdown-menu > li > a:active {
- background-color: transparent; }
- .dropdown .dropdown-menu > li > a:focus {
- background-color: transparent; }
- .dropdown .dropdown-menu > li > a:visited {
- background-color: transparent; }
+!* Freezed Rows *!
+.gt-freeze-div[id*="bodyDiv"] td {
+!** background-color: #f4f4f4 !important;**!
-/* Pages */
-/* Home */
-#side-faostat {
- display: none; }
+}*/
/*# sourceMappingURL=index.css.map */
diff --git a/dist/css/index.css.map b/dist/css/index.css.map
new file mode 100644
index 00000000..ba705f36
--- /dev/null
+++ b/dist/css/index.css.map
@@ -0,0 +1,7 @@
+{
+"version": 3,
+"mappings": "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lB,mBAAoB;EAClB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,mBAAoB;EAClB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,mBAAoB;EAClB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,mBAAoB;EAClB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,mBAAoB;EAClB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,iBAAkB;EAChB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,iBAAkB;EAChB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,mBAAoB;EAClB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;EACjB,OAAO,EAAE,OAAO;;AAElB,kBAAmB;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EACxB,OAAO,EAAE,OAAO;;AAElB,yBAA0B;EACxB,OAAO,EAAE,OAAO;;AAElB,yBAA0B;EACxB,OAAO,EAAE,OAAO;;AAElB,yBAA0B;EACxB,OAAO,EAAE,OAAO;;AAElB,uBAAwB;EACtB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO,EAAE,OAAO;;AAElB,sBAAuB;EACrB,OAAO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",
+"sources": ["index.scss","../../src/css/theme/_variables.scss","../../src/css/fx-boot/_bootstrap.scss","../../src/css/fx-boot/bootstrap/_normalize.scss","../../src/css/fx-boot/bootstrap/_print.scss","../../src/css/fx-boot/bootstrap/_glyphicons.scss","../../src/css/fx-boot/bootstrap/_scaffolding.scss","../../src/css/fx-boot/bootstrap/mixins/_vendor-prefixes.scss","../../src/css/fx-boot/bootstrap/_variables.scss","../../src/css/fx-boot/bootstrap/mixins/_tab-focus.scss","../../src/css/fx-boot/bootstrap/mixins/_image.scss","../../src/css/fx-boot/bootstrap/_type.scss","../../src/css/fx-boot/bootstrap/mixins/_text-emphasis.scss","../../src/css/fx-boot/bootstrap/mixins/_background-variant.scss","../../src/css/fx-boot/bootstrap/mixins/_clearfix.scss","../../src/css/fx-boot/bootstrap/mixins/_text-overflow.scss","../../src/css/fx-boot/bootstrap/_code.scss","../../src/css/fx-boot/bootstrap/_grid.scss","../../src/css/fx-boot/bootstrap/mixins/_grid.scss","../../src/css/fx-boot/bootstrap/mixins/_grid-framework.scss","../../src/css/fx-boot/bootstrap/_tables.scss","../../src/css/fx-boot/bootstrap/mixins/_table-row.scss","../../src/css/fx-boot/bootstrap/_forms.scss","../../src/css/fx-boot/bootstrap/mixins/_forms.scss","../../src/css/fx-boot/bootstrap/_buttons.scss","../../src/css/fx-boot/bootstrap/mixins/_buttons.scss","../../src/css/fx-boot/bootstrap/mixins/_opacity.scss","../../src/css/fx-boot/bootstrap/_component-animations.scss","../../src/css/fx-boot/bootstrap/_dropdowns.scss","../../src/css/fx-boot/bootstrap/mixins/_nav-divider.scss","../../src/css/fx-boot/bootstrap/mixins/_reset-filter.scss","../../src/css/fx-boot/bootstrap/_button-groups.scss","../../src/css/fx-boot/bootstrap/mixins/_border-radius.scss","../../src/css/fx-boot/bootstrap/_input-groups.scss","../../src/css/fx-boot/bootstrap/_navs.scss","../../src/css/fx-boot/bootstrap/_navbar.scss","../../src/css/fx-boot/bootstrap/mixins/_nav-vertical-align.scss","../../src/css/fx-boot/bootstrap/_breadcrumbs.scss","../../src/css/fx-boot/bootstrap/_pagination.scss","../../src/css/fx-boot/bootstrap/mixins/_pagination.scss","../../src/css/fx-boot/bootstrap/_pager.scss","../../src/css/fx-boot/bootstrap/_labels.scss","../../src/css/fx-boot/bootstrap/mixins/_labels.scss","../../src/css/fx-boot/bootstrap/_badges.scss","../../src/css/fx-boot/bootstrap/_jumbotron.scss","../../src/css/fx-boot/bootstrap/_thumbnails.scss","../../src/css/fx-boot/bootstrap/_alerts.scss","../../src/css/fx-boot/bootstrap/mixins/_alerts.scss","../../src/css/fx-boot/bootstrap/_progress-bars.scss","../../src/css/fx-boot/bootstrap/mixins/_gradients.scss","../../src/css/fx-boot/bootstrap/mixins/_progress-bar.scss","../../src/css/fx-boot/bootstrap/_media.scss","../../src/css/fx-boot/bootstrap/_list-group.scss","../../src/css/fx-boot/bootstrap/mixins/_list-group.scss","../../src/css/fx-boot/bootstrap/_panels.scss","../../src/css/fx-boot/bootstrap/mixins/_panels.scss","../../src/css/fx-boot/bootstrap/_responsive-embed.scss","../../src/css/fx-boot/bootstrap/_wells.scss","../../src/css/fx-boot/bootstrap/_close.scss","../../src/css/fx-boot/bootstrap/_modals.scss","../../src/css/fx-boot/bootstrap/_tooltip.scss","../../src/css/fx-boot/bootstrap/mixins/_reset-text.scss","../../src/css/fx-boot/bootstrap/_popovers.scss","../../src/css/fx-boot/bootstrap/_carousel.scss","../../src/css/fx-boot/bootstrap/_utilities.scss","../../src/css/fx-boot/bootstrap/mixins/_center-block.scss","../../src/css/fx-boot/bootstrap/mixins/_hide-text.scss","../../src/css/fx-boot/bootstrap/_responsive-utilities.scss","../../src/css/fx-boot/bootstrap/mixins/_responsive-visibility.scss","../../submodules/fenix-ui-common/css/_fenix-style-no-variables.scss","../../submodules/fenix-ui-common/css/base/_fx-fonts-import.scss","../../submodules/fenix-ui-common/css/base/fonts/eldorado/_font-eldorado-main.scss","../../submodules/fenix-ui-common/css/base/fonts/roboto/_font-roboto-main.scss","../../submodules/fenix-ui-common/css/base/fonts/font_awesome/_font-awesome-main.scss","../../submodules/fenix-ui-common/css/base/fonts/font_awesome/_variables.scss","../../submodules/fenix-ui-common/css/base/fonts/font_awesome/_path.scss","../../submodules/fenix-ui-common/css/base/fonts/font_awesome/_core.scss","../../submodules/fenix-ui-common/css/base/fonts/font_awesome/_larger.scss","../../submodules/fenix-ui-common/css/base/fonts/font_awesome/_fixed-width.scss","../../submodules/fenix-ui-common/css/base/fonts/font_awesome/_list.scss","../../submodules/fenix-ui-common/css/base/fonts/font_awesome/_bordered-pulled.scss","../../submodules/fenix-ui-common/css/base/fonts/font_awesome/_spinning.scss","../../submodules/fenix-ui-common/css/base/fonts/font_awesome/_rotated-flipped.scss","../../submodules/fenix-ui-common/css/base/fonts/font_awesome/_mixins.scss","../../submodules/fenix-ui-common/css/base/fonts/font_awesome/_stacked.scss","../../submodules/fenix-ui-common/css/base/fonts/font_awesome/_icons.scss","../../submodules/fenix-ui-common/css/base/_fx-typography.scss","../../submodules/fenix-ui-common/css/base/_fx-reset.scss","../../submodules/fenix-ui-common/css/components/_fx-components.scss","../../submodules/fenix-ui-common/css/components/_fx-buttons.scss","../../submodules/fenix-ui-common/css/utils/_fx-mixins.scss","../../submodules/fenix-ui-common/css/components/_fx-catalog.scss","../../submodules/fenix-ui-common/css/components/_fx-circle-number.scss","../../submodules/fenix-ui-common/css/components/_fx-color-reference.scss","../../submodules/fenix-ui-common/css/components/_fx-datepicker.scss","../../submodules/fenix-ui-common/css/components/_fx-dropdown.scss","../../submodules/fenix-ui-common/css/components/_fx-fieldset.scss","../../submodules/fenix-ui-common/css/components/_fx-filter.scss","../../submodules/fenix-ui-common/css/components/_fx-fixed-height.scss","../../submodules/fenix-ui-common/css/components/_fx-icons.scss","../../submodules/fenix-ui-common/css/components/_fx-inputs.scss","../../submodules/fenix-ui-common/css/components/_fx-ios-switch.scss","../../submodules/fenix-ui-common/css/components/_fx-labels.scss","../../submodules/fenix-ui-common/css/components/_fx-legend.scss","../../submodules/fenix-ui-common/css/components/_fx-metadata-viewer.scss","../../submodules/fenix-ui-common/css/components/_fx-modular-form.scss","../../submodules/fenix-ui-common/css/components/_fx-navigation.scss","../../submodules/fenix-ui-common/css/components/_fx-obj-box.scss","../../submodules/fenix-ui-common/css/components/_fx-panel.scss","../../submodules/fenix-ui-common/css/components/_fx-popover.scss","../../submodules/fenix-ui-common/css/components/_fx-radio-checkbox.scss","../../submodules/fenix-ui-common/css/components/_fx-range-slider.scss","../../submodules/fenix-ui-common/css/components/_fx-resume-bar.scss","../../submodules/fenix-ui-common/css/components/_fx-section-switcher.scss","../../submodules/fenix-ui-common/css/components/_fx-sidebar.scss","../../submodules/fenix-ui-common/css/components/_fx-simple-sidebar.scss","../../submodules/fenix-ui-common/css/components/_fx-tabs.scss","../../submodules/fenix-ui-common/css/components/_fx-topmenu.scss","../../submodules/fenix-ui-common/css/components/_fx-uploader.scss","../../submodules/fenix-ui-common/css/components/_fx-well.scss","../../submodules/fenix-ui-common/css/components/_fx-widgets.scss","../../submodules/fenix-ui-common/css/components/_fx-widgets-stack.scss","../../submodules/fenix-ui-common/css/vendor/_fx-facebook.scss","../../submodules/fenix-ui-common/css/vendor/_fx-introjs.scss","../../submodules/fenix-ui-common/css/vendor/_fx-jqwidgets.scss","../../submodules/fenix-ui-common/css/vendor/_fx-jstree.scss","../../submodules/fenix-ui-common/css/vendor/_fx-packery.scss","../../submodules/fenix-ui-common/css/leaflet/_fx-leaflet-imports.scss","../../submodules/fenix-ui-common/css/leaflet/_fx-leaflet-zoom.scss","../../src/css/theme/_default.scss","../../src/css/components/_breadcrumbs.scss","../../src/css/components/_fao-footer.scss","../../src/css/components/_fao-topmenu.scss","../../src/css/components/_form.scss","../../src/css/components/_icons.scss","../../src/css/components/_jstree.scss","../../src/css/components/_preload.scss","../../src/css/theme/_typo3-compatibility.scss","../../src/css/pages/_home.scss","../../src/css/pages/_analyze-data.scss","../../src/css/pages/_browse-data.scss","../../submodules/fenix-ui-common/css/themes/_fx-variables.scss","../../submodules/fenix-ui-filter/src/css/_filter.scss","../../submodules/fenix-ui-analysis/src/css/_analysis.scss","../../submodules/fenix-ui-visualization-box/src/css/_visualization-box.scss"],
+"names": [],
+"file": "index.css"
+}
\ No newline at end of file
diff --git a/dist/css/index.scss b/dist/css/index.scss
index 5efd4ef5..bc7b2848 100644
--- a/dist/css/index.scss
+++ b/dist/css/index.scss
@@ -1,36 +1,158 @@
/* Dist - Index */
+/* RLM - Variables */
+@import '../../src/css/theme/variables';
+
.fx-sandbox{
padding: 0 5px;
+}
- @import '../../src/css/fx-boot/bootstrap';
-}
-/* RLM - Variables */
-@import '../../src/css/theme/variables';
-/* Fenix Utils*/
-@import '../../submodules/fenix-ui-common/css/fenix-style-no-variables';
+@import '../../src/css/fx-boot/bootstrap';
+/* Fenix Utils*/
+@import '../../submodules/fenix-ui-common/css/fenix-style-no-variables';
/* Base */
@import '../../src/css/theme/default';
-
-/* Components */
+///* Components */
@import '../../src/css/components/breadcrumbs';
-//@import '../../src/css/components/fao-footer';
+@import '../../src/css/components/fao-footer';
@import '../../src/css/components/fao-topmenu';
@import '../../src/css/components/form';
+@import '../../src/css/components/icons';
@import '../../src/css/components/jstree';
-@import '../../src/css/components/submenu';
-
+@import '../../src/css/components/preload';
+//@import '../../src/css/components/submenu';
/* Typo3 */
@import '../../src/css/theme/typo3-compatibility';
-
/* Pages */
@import '../../src/css/pages/home';
+@import '../../src/css/pages/analyze-data';
+@import '../../src/css/pages/browse-data';
+
+
+
+/* Fenix Common CSS */
+@import '../../submodules/fenix-ui-common/css/themes/fx-variables';
+
+/* Boostrap Queries */
+@import '../../submodules/fenix-ui-common/css/themes/fx-bootstrap-queries';
+$fx-ui-common: '../../submodules/fenix-ui-common/';
+
+
+@import '../../submodules/fenix-ui-common/css/base/fx-typography';
+
+@import '../../submodules/fenix-ui-common/css/utils/fx-mixins';
+@import '../../submodules/fenix-ui-common/css/components/fx-tabs';
+@import '../../submodules/fenix-ui-common/css/components/fx-buttons';
+@import '../../submodules/fenix-ui-common/css/components/fx-icons';
+@import '../../submodules/fenix-ui-common/css/vendor/fx-jstree';
+@import '../../submodules/fenix-ui-common/css/components/fx-radio-checkbox';
+
+@import '../../submodules/fenix-ui-filter/src/css/filter';
+@import '../../submodules/fenix-ui-analysis/src/css/analysis';
+@import '../../submodules/fenix-ui-visualization-box/src/css/visualization-box';
+
+body {
+ background-color: $fenix-light-bg;
+ font-family: "FrutigerLTW02-45Light", Arial, Helvetica, Verdana, sans-serif;
+}
+
+
+/** Venn Text Area */
+#venn-diagram-info-box textarea {
+ width: 100%;
+ height: 500px;
+ padding: 10px;
+ resize: none;
+}
+
+/** Table Sort Icons */
+.gt-hd-icon.gt-hd-asc{
+ @extend .fa;
+ @extend .fa-caret-up;
+}
+
+.gt-hd-icon{
+ @extend .fa;
+ @extend .fa-sort;
+}
+
+
+.gt-hd-icon.gt-hd-desc{
+ @extend .fa;
+ @extend .fa-caret-down;
+}
+
+/** Table Header */
+.gt-hd-row td .gt-inner {
+ font-weight: 600;
+ font-size: 14px;
+ text-transform: none;
+}
+
+/*!** Table Highlighted Columns: Comparative Advantage Only *!
+div[data-item="comp_advantage"] .gt-col-1_11-ratio, div[data-item="comp_advantage"] .gt-col-1_11-purposecode_en, div[data-item="comp_advantage"] .gt-col-1_11-year {
+ background-color:#eef6ff;
+}*/
+
+/** Table Cell Alignment */
+.gt-inner-left {
+ text-align: left;
+}
+
+/** Table Page size drop-down */
+.gt-pagesize-select {
+ width: 48px
+}
+
+.big-col-width {
+ width: 246px;
+}
+
+.smaller-col-width {
+ width: 66px;
+
+}
+
+
+.small-col-width {
+ width: 96px;
+}
+
+.obj-box-info {
+ font-size: 12px;
+}
+
+//Table Header Row
+//.gt-freeze-div[id*="headDiv"] td {
+// background-color: #ABC8E1 !important;
+//}
+
+/*.gt-row-selected td {
+!** background-color: #e6f1ff; **!
+
+}
+
+!* Freezed Rows *!
+.gt-freeze-div[id*="bodyDiv"] td {
+!** background-color: #f4f4f4 !important;**!
+
+}*/
+
+
+
+
+
+
+
+
+
+
diff --git a/dist/fonts/bootstrap/glyphicons-halflings-regular.eot b/dist/fonts/bootstrap/glyphicons-halflings-regular.eot
new file mode 100755
index 00000000..b93a4953
Binary files /dev/null and b/dist/fonts/bootstrap/glyphicons-halflings-regular.eot differ
diff --git a/dist/fonts/bootstrap/glyphicons-halflings-regular.svg b/dist/fonts/bootstrap/glyphicons-halflings-regular.svg
new file mode 100755
index 00000000..94fb5490
--- /dev/null
+++ b/dist/fonts/bootstrap/glyphicons-halflings-regular.svg
@@ -0,0 +1,288 @@
+
+
+
\ No newline at end of file
diff --git a/dist/fonts/bootstrap/glyphicons-halflings-regular.ttf b/dist/fonts/bootstrap/glyphicons-halflings-regular.ttf
new file mode 100755
index 00000000..1413fc60
Binary files /dev/null and b/dist/fonts/bootstrap/glyphicons-halflings-regular.ttf differ
diff --git a/dist/fonts/bootstrap/glyphicons-halflings-regular.woff b/dist/fonts/bootstrap/glyphicons-halflings-regular.woff
new file mode 100755
index 00000000..9e612858
Binary files /dev/null and b/dist/fonts/bootstrap/glyphicons-halflings-regular.woff differ
diff --git a/dist/fonts/bootstrap/glyphicons-halflings-regular.woff2 b/dist/fonts/bootstrap/glyphicons-halflings-regular.woff2
new file mode 100755
index 00000000..64539b54
Binary files /dev/null and b/dist/fonts/bootstrap/glyphicons-halflings-regular.woff2 differ
diff --git a/docs/BrowseDataOverview.pdf b/docs/BrowseDataOverview.pdf
new file mode 100644
index 00000000..61c7d81a
Binary files /dev/null and b/docs/BrowseDataOverview.pdf differ
diff --git a/docs/comparative_advantage_desc.pdf b/docs/comparative_advantage_desc.pdf
new file mode 100644
index 00000000..10f6d76b
Binary files /dev/null and b/docs/comparative_advantage_desc.pdf differ
diff --git a/i18n/modules.js b/i18n/analyse-comp-advantage.js
similarity index 100%
rename from i18n/modules.js
rename to i18n/analyse-comp-advantage.js
diff --git a/i18n/analyse-compare.js b/i18n/analyse-compare.js
new file mode 100644
index 00000000..aa9c311e
--- /dev/null
+++ b/i18n/analyse-compare.js
@@ -0,0 +1,4 @@
+/*global define*/
+define({
+ "root": true
+});
\ No newline at end of file
diff --git a/i18n/analyse-modules.js b/i18n/analyse-modules.js
new file mode 100644
index 00000000..aa9c311e
--- /dev/null
+++ b/i18n/analyse-modules.js
@@ -0,0 +1,4 @@
+/*global define*/
+define({
+ "root": true
+});
\ No newline at end of file
diff --git a/i18n/analyse-partner-matrix.js b/i18n/analyse-partner-matrix.js
new file mode 100644
index 00000000..aa9c311e
--- /dev/null
+++ b/i18n/analyse-partner-matrix.js
@@ -0,0 +1,4 @@
+/*global define*/
+define({
+ "root": true
+});
\ No newline at end of file
diff --git a/i18n/analyse-priority-analysis.js b/i18n/analyse-priority-analysis.js
new file mode 100644
index 00000000..aa9c311e
--- /dev/null
+++ b/i18n/analyse-priority-analysis.js
@@ -0,0 +1,4 @@
+/*global define*/
+define({
+ "root": true
+});
\ No newline at end of file
diff --git a/i18n/analyse.js b/i18n/analyse.js
new file mode 100644
index 00000000..aa9c311e
--- /dev/null
+++ b/i18n/analyse.js
@@ -0,0 +1,4 @@
+/*global define*/
+define({
+ "root": true
+});
\ No newline at end of file
diff --git a/i18n/browse-dashboard.js b/i18n/browse-dashboard.js
new file mode 100644
index 00000000..aa9c311e
--- /dev/null
+++ b/i18n/browse-dashboard.js
@@ -0,0 +1,4 @@
+/*global define*/
+define({
+ "root": true
+});
\ No newline at end of file
diff --git a/i18n/browse-modules.js b/i18n/browse-modules.js
new file mode 100644
index 00000000..aa9c311e
--- /dev/null
+++ b/i18n/browse-modules.js
@@ -0,0 +1,4 @@
+/*global define*/
+define({
+ "root": true
+});
\ No newline at end of file
diff --git a/i18n/chart.js b/i18n/chart.js
new file mode 100644
index 00000000..aa9c311e
--- /dev/null
+++ b/i18n/chart.js
@@ -0,0 +1,4 @@
+/*global define*/
+define({
+ "root": true
+});
\ No newline at end of file
diff --git a/i18n/filter.js b/i18n/filter.js
new file mode 100644
index 00000000..aa9c311e
--- /dev/null
+++ b/i18n/filter.js
@@ -0,0 +1,4 @@
+/*global define*/
+define({
+ "root": true
+});
\ No newline at end of file
diff --git a/i18n/pivot.js b/i18n/pivot.js
new file mode 100644
index 00000000..aa9c311e
--- /dev/null
+++ b/i18n/pivot.js
@@ -0,0 +1,4 @@
+/*global define*/
+define({
+ "root": true
+});
\ No newline at end of file
diff --git a/i18n/projects.js b/i18n/projects.js
new file mode 100644
index 00000000..aa9c311e
--- /dev/null
+++ b/i18n/projects.js
@@ -0,0 +1,4 @@
+/*global define*/
+define({
+ "root": true
+});
\ No newline at end of file
diff --git a/i18n/root/analyse-comp-advantage.js b/i18n/root/analyse-comp-advantage.js
new file mode 100644
index 00000000..b55b1e81
--- /dev/null
+++ b/i18n/root/analyse-comp-advantage.js
@@ -0,0 +1,8 @@
+/*global define*/
+define({
+ text: "Change me in 118n/root/modules.js",
+ "comparative-advantage": "FAO Comparative Advantage",
+ "comp_advantage_desc_1": "The FAO Comparative Advantage is an objective output based on a series of calculations performed on data reported by resource partners to the OECD-DAC.",
+ "comp_advantage_desc_2": "Hovering over the column headers provides a general description otherwise a more detailed explanation is available",
+ "comp_advantage_desc_3": "here"
+});
\ No newline at end of file
diff --git a/i18n/root/analyse-compare.js b/i18n/root/analyse-compare.js
new file mode 100644
index 00000000..cee7c7e8
--- /dev/null
+++ b/i18n/root/analyse-compare.js
@@ -0,0 +1,68 @@
+/*global define*/
+define(function () {
+
+ 'use strict';
+
+ var RECIPIENT = "Country / Region",
+ DONOR = "Donor",
+ DELIVERY = "Channel of delivery",
+ SECTOR = "Sector",
+ SUB_SECTOR = "Sub-Sector",
+ ODA = "Official Development Assistance (ODA)",
+ YEAR_FROM = "from",
+ YEAR_TO = "to";
+
+ return {
+ "compare": "Compare",
+ "recipient": RECIPIENT,
+ "donor": DONOR,
+ "delivery": DELIVERY,
+ "sector": SECTOR,
+ "sub-sector": SUB_SECTOR,
+ "year_form": YEAR_FROM,
+ "year_to": YEAR_TO,
+
+ "collapse_btn": "Collapse / Expand this panel",
+ "compare_btn": "Compare",
+ "reset_btn": "Reset",
+ "clear_all_btn": "Clear All",
+ "search_placeholder": "Filter",
+ "download" : "Download",
+
+ "sel_heading_country": RECIPIENT,
+ "sel_heading_donor": DONOR,
+ "sel_heading_oda": ODA,
+ "sel_heading_year": "Year",
+ "sel_heading_compare_by": "Compare by",
+ "sel_heading_channel_of_delivery": DELIVERY,
+ "sel_heading_sector": SECTOR,
+ "sel_heading_sub_sector": SUB_SECTOR,
+ "sel_country_tab_countries": "Countries",
+ "sel_country_tab_regions": "Regions",
+ "sel_country_tab_regional_aggregation": "Regional Aggregation",
+
+ "expectedResult": "Expected results",
+ "compare_as": "Compare as",
+ "tab_chart": "Chart",
+ "tab_table": "Table",
+ "tab_info": "Info",
+ "result_error": "Aw snap! There was a problem loading this resource",
+ "result_empty": "No data for the current selection",
+
+ "show_advanced_options": "Show advanced options",
+
+ //info tab
+ "info_current_selection": "Current selection:",
+ "info_title_oda": ODA,
+ "info_title_recipient": RECIPIENT,
+ "info_title_donor": DONOR,
+ "info_title_delivery": DELIVERY,
+ "info_title_sector": SECTOR,
+ "info_title_sub-sector": SUB_SECTOR,
+ "info_title_year_from": YEAR_FROM,
+ "info_title_year_to": YEAR_TO,
+
+ "reload": "Reload"
+
+ }
+});
\ No newline at end of file
diff --git a/i18n/root/analyse-modules.js b/i18n/root/analyse-modules.js
new file mode 100644
index 00000000..6b21d7c2
--- /dev/null
+++ b/i18n/root/analyse-modules.js
@@ -0,0 +1,86 @@
+/*global define*/
+define({
+ title: "Analyse Data",
+ text: "Change me in 118n/root/modules.js",
+ modules:[
+ {
+ "header": {
+ "EN": "Analyse data"
+ },
+ "title": {
+ "EN": "Compare"
+ },
+ "body": {
+ "EN": "Compare past ODA spending in two or more recipient countries, by two or more selected donors, channels of delivery, sectors or subsectors in a specific time period."
+ },
+ "link": "#analyse/compare",
+ "img": "http://fenixrepo.fao.org/cdn/images/modules/crowdprices/crowdprices.png"
+ },
+ // {
+ // "header": {
+ // "EN": "Analyse data"
+ // },
+ // "title": {
+ // "EN": "Implementing Agencies"
+ // },
+ // "body": {
+ // "EN": "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus."
+ // },
+ // "link": "#analyse/agencies",
+ // "img": "http://fenixrepo.fao.org/cdn/images/modules/trade_AFG/trade_AFG.png"
+ // },
+ {
+ "header": {
+ "EN": "Analyse data"
+ },
+ "title": {
+ "EN": "Resource Partner Matrix"
+ },
+ "body": {
+ "EN": "Analyse the resource partner's spending in FAO-related sectors versus other sectors of the Official Development Assistance (ODA)."
+ },
+ "link": "#analyse/partner_matrix",
+ "img": "http://fenixrepo.fao.org/cdn/images/modules/env_AFG/environmental_AFG.png"
+ },
+ {
+ "header": {
+ "EN": "Analyse data"
+ },
+ "title": {
+ "EN": "Project Analysis"
+ },
+ "body": {
+ "EN": "View information on implemented projects based on your selection."
+ },
+ "link": "#analyse/projects",
+ "img": "http://fenixrepo.fao.org/cdn/images/modules/monitoring/kenya/timeseries/kenya_monitoring_timeseries.png"
+ },
+ {
+ "header": {
+ "EN": "Analyse data"
+ },
+ "title": {
+ "EN": "Priority Analysis"
+ },
+ "body": {
+ "EN": "Analyse common priorities between FAO, National Governments and Resource Partners by intersecting FAO's countries programming framework, UNDAF documents and donors' spending priorities."
+ },
+ "link": "#analyse/priority_analysis",
+ "img": "http://fenixrepo.fao.org/cdn/images/modules/monitoring/kenya/timeseries/kenya_monitoring_timeseries.png"
+ },
+ {
+ "header": {
+ "EN": "Analyse data"
+ },
+ "title": {
+ "EN": "FAO Comparative Advantage"
+ },
+ "body": {
+ "EN": "Analyse FAO's comparative advantage with respect to the other implementing agencies in a specific area of intervention."
+ },
+ "link": "#analyse/comp_advantage",
+ "img": "http://fenixrepo.fao.org/cdn/images/modules/monitoring/kenya/timeseries/kenya_monitoring_timeseries.png"
+ }
+
+ ]
+});
diff --git a/i18n/root/analyse-partner-matrix.js b/i18n/root/analyse-partner-matrix.js
new file mode 100644
index 00000000..5e84e524
--- /dev/null
+++ b/i18n/root/analyse-partner-matrix.js
@@ -0,0 +1,15 @@
+/*global define*/
+define({
+ text: "Change me in 118n/root/modules.js",
+ "partner-matrix": "Resource Partner Matrix",
+ "by-recipient": "By Recipient Country",
+ "by-partner": "By Resource Partner",
+ "top-partners-fao-oda": "FAO Sectors and Total ODA by top Resource Partners",
+ "top-recipients-fao-oda": "FAO Sectors and Total ODA by top Recipient Countries",
+ "tot-fao-oda": "Total ODA and Total ODA in FAO Sectors",
+ "top-channels": "Top Channels of Delivery",
+ "top-partners": "Total ODA from top Resource Partners",
+ "top-fao-partners": "Total ODA in FAO Sectors from top Resource Partners",
+ "top-recipients": "Total ODA to top Recipient Countries",
+ "top-fao-recipients": "Total ODA in FAO Sectors to top Recipient Countries"
+});
\ No newline at end of file
diff --git a/i18n/root/analyse-priority-analysis.js b/i18n/root/analyse-priority-analysis.js
new file mode 100644
index 00000000..f3c67a29
--- /dev/null
+++ b/i18n/root/analyse-priority-analysis.js
@@ -0,0 +1,20 @@
+/*global define*/
+define({
+ text: "Change me in 118n/root/modules.js",
+ "priorities-table": "Country (UNDAF) and FAO Agreed (CPF) Priorities in Agriculture and Food Security",
+ "venn-diagram": "Venn Diagram: Common Priorities between the Countries, FAO and the Resource Partners",
+ "venn-diagram-info": "Click on the Venn Diagram intersections to view the priorities and the associated funding allocation charts.",
+ "prioritiesOnlyIn": "Priorities only in",
+ "commonPrioritiesIn": "Common priorities in",
+ "and": "and",
+ "none": "None",
+ "recipient": "Countries",
+ "partner": "Partners",
+ "fao": "FAO",
+ "all": "All",
+ "top-partners": "Top Resource Partners for selected priorities",
+ "top-recipients": "Top Recipient Countries for selected priorities",
+ "top-channels": "Top Channels of Delivery for selected priorities",
+ "financing-priorities-partners": "Financing Priorities by Resource Partners for selected priorities",
+ "financing-priorities-recipients": "Financing Priorities by Recipient Countries for selected priorities"
+});
\ No newline at end of file
diff --git a/i18n/root/analyse.js b/i18n/root/analyse.js
new file mode 100644
index 00000000..43858194
--- /dev/null
+++ b/i18n/root/analyse.js
@@ -0,0 +1,11 @@
+/*global define*/
+define({
+ "title": "Analyse Data",
+ "text" : "Change me in 118n/root/analyse.js",
+ "compare": "Compare",
+ "agencies": "Implementing Agencies",
+ "partner_matrix": "Resource Partner Matrix",
+ "projects": "Project Analysis",
+ "priority_analysis": "Priority Analysis",
+ "comp_advantage": "FAO Comparative Advantage"
+});
\ No newline at end of file
diff --git a/i18n/root/browse-dashboard.js b/i18n/root/browse-dashboard.js
new file mode 100644
index 00000000..937d783c
--- /dev/null
+++ b/i18n/root/browse-dashboard.js
@@ -0,0 +1,22 @@
+/*global define*/
+define({
+ title: "Dashboard Items",
+ text: "Change me in 118n/root/modules.js",
+ "tot-oda": "Total ODA",
+ "tot-oda-sector": "Total ODA",
+ "tot-oda-subsector": "Total ODA",
+ "tot-oda-gni": "Total ODA and GNI",
+ "top-partners": "Top Resource Partners",
+ "top-partners-others": "ODA Share between Top Resource Partners and Others",
+ "top-recipients": "Top Recipients",
+ "top-recipients-others": "ODA Share between Top Recipients and Others",
+ "top-sectors": "Top Sectors",
+ "top-sectors-others": "ODA Share between Top Sectors and Others",
+ "top-subsectors": "Top Sub-Sectors",
+ "top-channels": "Top Channels of Delivery",
+ "top-implementing-channels": "Top Implementing Channels",
+ "oda-regional": "ODA Regional Distribution",
+ "country-map": "Map on ODA received",
+ "regional-map": "Regional Map on ODA received"
+
+});
\ No newline at end of file
diff --git a/i18n/root/browse-modules.js b/i18n/root/browse-modules.js
new file mode 100644
index 00000000..efc246f3
--- /dev/null
+++ b/i18n/root/browse-modules.js
@@ -0,0 +1,59 @@
+/*global define*/
+define({
+ title: "Browse by",
+ text: "Change me in 118n/root/modules.js",
+ modules:[
+ {
+ "header": {
+ "EN": "Browse by"
+ },
+ "title": {
+ "EN": "Sector"
+ },
+ "body": {
+ "EN": "Analyse past ODA spending and top resource partners and recipient countries in specific OECD-DAC sectors and subsectors, for a specific time period."
+ },
+ "link": "#browse/sector",
+ "img": "http://fenixrepo.fao.org/cdn/images/modules/monitoring/kenya/timeseries/kenya_monitoring_timeseries.png"
+ },
+ {
+ "header": {
+ "EN": "Browse by"
+ },
+ "title": {
+ "EN": "Recipient Country"
+ },
+ "body": {
+ "EN": "Learn about total ODA spending, top resource partners, channels of delivery, sectors and subsectors in the Recipient Country and for the time period of your choice."
+ },
+ "link": "#browse/country",
+ "img": "http://fenixrepo.fao.org/cdn/images/modules/crowdprices/crowdprices.png"
+ },
+ {
+ "header": {
+ "EN": "Browse by"
+ },
+ "title": {
+ "EN": "Resource Partner"
+ },
+ "body": {
+ "EN": "Find out the geographical operational outreach of the selected resource partner, and which top sectors and subsectors are the most financed through a certain channel of delivery."
+ },
+ "link": "#browse/donor",
+ "img": "http://fenixrepo.fao.org/cdn/images/modules/trade_AFG/trade_AFG.png"
+ },
+ {
+ "header": {
+ "EN": "Browse by"
+ },
+ "title": {
+ "EN": "Recipient Country and Resource Partner"
+ },
+ "body": {
+ "EN": "Analyse a Resource Partner's ODA spending in a specific recipient country and time period, in relation to the top channels of delivery, sectors and subsectors."
+ },
+ "link": "#browse/country_donor",
+ "img": "http://fenixrepo.fao.org/cdn/images/modules/env_AFG/environmental_AFG.png"
+ }
+ ]
+});
\ No newline at end of file
diff --git a/i18n/root/browse.js b/i18n/root/browse.js
index 0af179b8..973bc9a9 100644
--- a/i18n/root/browse.js
+++ b/i18n/root/browse.js
@@ -1,9 +1,15 @@
/*global define*/
define({
"title": "Browse By",
- "title_flude": "Forest resource data (FRA)",
- "filter" : "Filter Data",
- "text" : "Change me in 118n/root/analysis.js",
- "lateral_menu_flude_title" : "Topics",
- "filter_btn" : "Filter"
+ "filter_btn": "Update",
+ "source": "Source",
+ "and": "and",
+ "selections" : "Current Selections",
+ "backToTop" : "Back to Top",
+ "development_indicators": "Development Indicators",
+ "text" : "Change me in 118n/root/browse.js",
+ "sector": "By Sector",
+ "country": "By Recipient Country",
+ "donor": "By Resource Partner",
+ "country_donor": "By Recipient Country & Resource Partner"
});
\ No newline at end of file
diff --git a/i18n/root/chart.js b/i18n/root/chart.js
new file mode 100644
index 00000000..e3e41253
--- /dev/null
+++ b/i18n/root/chart.js
@@ -0,0 +1,4 @@
+/*global define*/
+define({
+ "hover_values": "Hover for values and click and drag to zoom"
+});
\ No newline at end of file
diff --git a/i18n/root/common.js b/i18n/root/common.js
index 19192a84..56c903a3 100644
--- a/i18n/root/common.js
+++ b/i18n/root/common.js
@@ -9,6 +9,7 @@ define({
"courtesy_message" : "No results",
"no_results" : "No Results",
"selector_select_all" : "Select All",
- "selector_select_none" : "Select None"
-
+ "selector_select_none" : "Select None",
+ "loading_in_progress" : "Loading in progress",
+ "completed" : "Completed"
});
\ No newline at end of file
diff --git a/i18n/root/errors.js b/i18n/root/errors.js
index 181b2028..e7bfc515 100644
--- a/i18n/root/errors.js
+++ b/i18n/root/errors.js
@@ -1,14 +1,20 @@
/*global define*/
define({
- "select_at_least_one_variable": "Please select at lease one variable",
- "select_at_least_one_geo" : "Please select at lease one country or region",
+ "select_at_least_one_variable": "Please select at lease one variable.",
+ "select_at_least_one_geo" : "Please select at lease one country or region.",
"fill_all_fields": "Please fill all the required fields.",
"request_error" : "Internet Request error. Please try again.",
"preload_resources_error" : "Impossible to load page resources.",
-
"no_input" : "Internal error: Invalid input format.",
"country_empty" : "Country can not be empty.",
"indicator_empty" : "Indicator can not be empty.",
"qualifier_empty" : "Qualifier can not be empty.",
- "year_empty" : "Year can not be empty."
+ "year_empty" : "Year can not be empty.",
+ "too_many_combinations" : "Too many combinations.",
+ "oda_missing" : "Official Development Assistance (ODA) value is missing.",
+ "year_missing" : "Year value is missing.",
+ "compare_missing" : "Missing values for 'compare' dimension.",
+ "no_compare" : "Impossible to find the 'compare' dimension.",
+ "at_least_one_more_dimension" : "Please specify values for at lease two dimensions.",
+ "missing_mandatory_field" : "Please fill all the mandatory fields."
});
\ No newline at end of file
diff --git a/i18n/root/filter.js b/i18n/root/filter.js
new file mode 100644
index 00000000..d75d6bfc
--- /dev/null
+++ b/i18n/root/filter.js
@@ -0,0 +1,17 @@
+/*global define*/
+define({
+ "filter_parentsector_code": "Sector",
+ "filter_donorcode": "Resource Partner",
+ "filter_recipientcode": "Recipient Country",
+ "filter_purposecode": "Sub Sector",
+ "filter_year": "Year",
+ "filter_channelsubcategory_code": "Channel Parent Category",
+ "filter_channelcode": "Channels of Delivery",
+ "filter_year-from": "From",
+ "filter_year-to": "To",
+ "filter_oda": "OECD CRS ODA",
+ "filter_country_groupedRow": "Table rows are grouped by Recipient Country (uncheck to enable sort on all columns)",
+ "filter_donor_groupedRow": "Table rows are grouped by Resource Partner (uncheck to enable sort on all columns)",
+ "filter_country-donor_groupedRow": "Table rows are grouped by Resource Partner (uncheck to enable sort on all columns)",
+ "filter_tooltip_oda": "The ODA data shown below is on resources that flow out of donor countries or resource partners, not necessarily the money that flows into recipient countries. The reason why these two data might not correspond is that ODA can also be spent in the donor country, for example towards debt relief and migrant crisis support. The ADAM is based on CRS dataset thus where not specifically indicated the data refers to CRS ODA."
+});
\ No newline at end of file
diff --git a/i18n/root/modules.js b/i18n/root/modules.js
deleted file mode 100644
index 7ed1c3f7..00000000
--- a/i18n/root/modules.js
+++ /dev/null
@@ -1,47 +0,0 @@
-/*global define*/
-define({
- title: "Browse Data",
- text: "Change me in 118n/root/modules.js",
- modules:[
- {
- "title": {
- "EN": "Browse Data By Country - Sector"
- },
- "body": {
- "EN": "Analysis of the trade flows at regional and national levels and for comparing the behaviors of regional and international import and export dynamics over time."
- },
- "link": "#browse/country_sector",
- "img": "http://fenixrepo.fao.org/cdn/images/modules/crowdprices/crowdprices.png"
- },
- {
- "title": {
- "EN": "Browse Data By Donor - Sector"
- },
- "body": {
- "EN": "Analysis of the trade flows at regional and national levels and for comparing the behaviors of regional and international import and export dynamics over time."
- },
- "link": "#browse/donor_sector",
- "img": "http://fenixrepo.fao.org/cdn/images/modules/trade_AFG/trade_AFG.png"
- },
- {
- "title": {
- "EN": "Browse Data By Country - Donor - Sector"
- },
- "body": {
- "EN": "Analysis of the trade flows at regional and national levels and for comparing the behaviors of regional and international import and export dynamics over time."
- },
- "link": "#browse/country_donor_sector",
- "img": "http://fenixrepo.fao.org/cdn/images/modules/env_AFG/environmental_AFG.png"
- },
- {
- "title": {
- "EN": "Browse Data By Sector"
- },
- "body": {
- "EN": "Analysis of the trade flows at regional and national levels and for comparing the behaviors of regional and international import and export dynamics over time."
- },
- "link": "#browse/sector",
- "img": "http://fenixrepo.fao.org/cdn/images/modules/monitoring/kenya/timeseries/kenya_monitoring_timeseries.png"
- }
- ]
-});
\ No newline at end of file
diff --git a/i18n/root/projects.js b/i18n/root/projects.js
new file mode 100644
index 00000000..7744e3e1
--- /dev/null
+++ b/i18n/root/projects.js
@@ -0,0 +1,12 @@
+/*global define*/
+define({
+ "title": "Projects Analysis",
+ "filter" : "Filter Data",
+ "text" : "Change me in 118n/root/projects.js",
+ "filter_btn" : "Update",
+ "compare": "Compare Data",
+ "projects": "Project Analysis ",
+ "priorities": "Priority Analysis",
+ "donor_matrix": "Donor Matrix",
+ "agencies": "Implementing Agencies"
+});
\ No newline at end of file
diff --git a/i18n/root/table.js b/i18n/root/table.js
new file mode 100644
index 00000000..ef43e556
--- /dev/null
+++ b/i18n/root/table.js
@@ -0,0 +1,5 @@
+/*global define*/
+define({
+ "results": "Results",
+ "rowsFound": "Rows Found"
+});
\ No newline at end of file
diff --git a/i18n/table.js b/i18n/table.js
new file mode 100644
index 00000000..aa9c311e
--- /dev/null
+++ b/i18n/table.js
@@ -0,0 +1,4 @@
+/*global define*/
+define({
+ "root": true
+});
\ No newline at end of file
diff --git a/images/home-image.jpg b/images/home-image.jpg
new file mode 100644
index 00000000..356e1167
Binary files /dev/null and b/images/home-image.jpg differ
diff --git a/index.html b/index.html
index 810e716a..dad3ebf0 100644
--- a/index.html
+++ b/index.html
@@ -14,7 +14,6 @@
-
@@ -28,7 +27,27 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -42,3 +61,5 @@