civio/quienmanda.es

View on GitHub

Showing 375 of 375 total issues

Identical blocks of code found in 2 locations. Consider refactoring.
Open

(function( global, factory ) {

    if ( typeof module === "object" && typeof module.exports === "object" ) {
        // For CommonJS and CommonJS-like environments where a proper `window`
        // is present, execute the factory and get jQuery.
Severity: Major
Found in extras/trips/dist/js/qm-trips.js and 1 other location - About 1 yr to fix
extras/trips/src/js/jquery-2.2.4.js on lines 15..9814

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 65491.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Identical blocks of code found in 2 locations. Consider refactoring.
Open

(function( global, factory ) {

    if ( typeof module === "object" && typeof module.exports === "object" ) {
        // For CommonJS and CommonJS-like environments where a proper `window`
        // is present, execute the factory and get jQuery.
Severity: Major
Found in extras/trips/src/js/jquery-2.2.4.js and 1 other location - About 1 yr to fix
extras/trips/dist/js/qm-trips.js on lines 15..9814

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 65491.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 3 locations. Consider refactoring.
Open

if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(t){"use strict";var e=t.fn.jquery.split(" ")[0].split(".");if(e[0]<2&&e[1]<9||1==e[0]&&9==e[1]&&e[2]<1||e[0]>2)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 3")}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var i=t(this),n=i.data("bs.tooltip"),s="object"==typeof e&&e;(n||!/destroy|hide/.test(e))&&(n||i.data("bs.tooltip",n=new o(this,s)),"string"==typeof e&&n[e]())})}var o=function(t,e){this.type=null,this.options=null,this.enabled=null,this.timeout=null,this.hoverState=null,this.$element=null,this.inState=null,this.init("tooltip",t,e)};o.VERSION="3.3.6",o.TRANSITION_DURATION=150,o.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},o.prototype.init=function(e,o,i){if(this.enabled=!0,this.type=e,this.$element=t(o),this.options=this.getOptions(i),this.$viewport=this.options.viewport&&t(t.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var n=this.options.trigger.split(" "),s=n.length;s--;){var r=n[s];if("click"==r)this.$element.on("click."+this.type,this.options.selector,t.proxy(this.toggle,this));else if("manual"!=r){var p="hover"==r?"mouseenter":"focusin",a="hover"==r?"mouseleave":"focusout";this.$element.on(p+"."+this.type,this.options.selector,t.proxy(this.enter,this)),this.$element.on(a+"."+this.type,this.options.selector,t.proxy(this.leave,this))}}this.options.selector?this._options=t.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},o.prototype.getDefaults=function(){return o.DEFAULTS},o.prototype.getOptions=function(e){return e=t.extend({},this.getDefaults(),this.$element.data(),e),e.delay&&"number"==typeof e.delay&&(e.delay={show:e.delay,hide:e.delay}),e},o.prototype.getDelegateOptions=function(){var e={},o=this.getDefaults();return this._options&&t.each(this._options,function(t,i){o[t]!=i&&(e[t]=i)}),e},o.prototype.enter=function(e){var o=e instanceof this.constructor?e:t(e.currentTarget).data("bs."+this.type);return o||(o=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,o)),e instanceof t.Event&&(o.inState["focusin"==e.type?"focus":"hover"]=!0),o.tip().hasClass("in")||"in"==o.hoverState?void(o.hoverState="in"):(clearTimeout(o.timeout),o.hoverState="in",o.options.delay&&o.options.delay.show?void(o.timeout=setTimeout(function(){"in"==o.hoverState&&o.show()},o.options.delay.show)):o.show())},o.prototype.isInStateTrue=function(){for(var t in this.inState)if(this.inState[t])return!0;return!1},o.prototype.leave=function(e){var o=e instanceof this.constructor?e:t(e.currentTarget).data("bs."+this.type);return o||(o=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,o)),e instanceof t.Event&&(o.inState["focusout"==e.type?"focus":"hover"]=!1),o.isInStateTrue()?void 0:(clearTimeout(o.timeout),o.hoverState="out",o.options.delay&&o.options.delay.hide?void(o.timeout=setTimeout(function(){"out"==o.hoverState&&o.hide()},o.options.delay.hide)):o.hide())},o.prototype.show=function(){var e=t.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(e);var i=t.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(e.isDefaultPrevented()||!i)return;var n=this,s=this.tip(),r=this.getUID(this.type);this.setContent(),s.attr("id",r),this.$element.attr("aria-describedby",r),this.options.animation&&s.addClass("fade");var p="function"==typeof this.options.placement?this.options.placement.call(this,s[0],this.$element[0]):this.options.placement,a=/\s?auto?\s?/i,l=a.test(p);l&&(p=p.replace(a,"")||"top"),s.detach().css({top:0,left:0,display:"block"}).addClass(p).data("bs."+this.type,this),this.options.container?s.appendTo(this.options.container):s.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var h=this.getPosition(),f=s[0].offsetWidth,c=s[0].offsetHeight;if(l){var u=p,d=this.getPosition(this.$viewport);p="bottom"==p&&h.bottom+c>d.bottom?"top":"top"==p&&h.top-c<d.top?"bottom":"right"==p&&h.right+f>d.width?"left":"left"==p&&h.left-f<d.left?"right":p,s.removeClass(u).addClass(p)}var v=this.getCalculatedOffset(p,h,f,c);this.applyPlacement(v,p);var g=function(){var t=n.hoverState;n.$element.trigger("shown.bs."+n.type),n.hoverState=null,"out"==t&&n.leave(n)};t.support.transition&&this.$tip.hasClass("fade")?s.one("bsTransitionEnd",g).emulateTransitionEnd(o.TRANSITION_DURATION):g()}},o.prototype.applyPlacement=function(e,o){var i=this.tip(),n=i[0].offsetWidth,s=i[0].offsetHeight,r=parseInt(i.css("margin-top"),10),p=parseInt(i.css("margin-left"),10);isNaN(r)&&(r=0),isNaN(p)&&(p=0),e.top+=r,e.left+=p,t.offset.setOffset(i[0],t.extend({using:function(t){i.css({top:Math.round(t.top),left:Math.round(t.left)})}},e),0),i.addClass("in");var a=i[0].offsetWidth,l=i[0].offsetHeight;"top"==o&&l!=s&&(e.top=e.top+s-l);var h=this.getViewportAdjustedDelta(o,e,a,l);h.left?e.left+=h.left:e.top+=h.top;var f=/top|bottom/.test(o),c=f?2*h.left-n+a:2*h.top-s+l,u=f?"offsetWidth":"offsetHeight";i.offset(e),this.replaceArrow(c,i[0][u],f)},o.prototype.replaceArrow=function(t,e,o){this.arrow().css(o?"left":"top",50*(1-t/e)+"%").css(o?"top":"left","")},o.prototype.setContent=function(){var t=this.tip(),e=this.getTitle();t.find(".tooltip-inner")[this.options.html?"html":"text"](e),t.removeClass("fade in top bottom left right")},o.prototype.hide=function(e){function i(){"in"!=n.hoverState&&s.detach(),n.$element.removeAttr("aria-describedby").trigger("hidden.bs."+n.type),e&&e()}var n=this,s=t(this.$tip),r=t.Event("hide.bs."+this.type);return this.$element.trigger(r),r.isDefaultPrevented()?void 0:(s.removeClass("in"),t.support.transition&&s.hasClass("fade")?s.one("bsTransitionEnd",i).emulateTransitionEnd(o.TRANSITION_DURATION):i(),this.hoverState=null,this)},o.prototype.fixTitle=function(){var t=this.$element;(t.attr("title")||"string"!=typeof t.attr("data-original-title"))&&t.attr("data-original-title",t.attr("title")||"").attr("title","")},o.prototype.hasContent=function(){return this.getTitle()},o.prototype.getPosition=function(e){e=e||this.$element;var o=e[0],i="BODY"==o.tagName,n=o.getBoundingClientRect();null==n.width&&(n=t.extend({},n,{width:n.right-n.left,height:n.bottom-n.top}));var s=i?{top:0,left:0}:e.offset(),r={scroll:i?document.documentElement.scrollTop||document.body.scrollTop:e.scrollTop()},p=i?{width:t(window).width(),height:t(window).height()}:null;return t.extend({},n,r,p,s)},o.prototype.getCalculatedOffset=function(t,e,o,i){return"bottom"==t?{top:e.top+e.height,left:e.left+e.width/2-o/2}:"top"==t?{top:e.top-i,left:e.left+e.width/2-o/2}:"left"==t?{top:e.top+e.height/2-i/2,left:e.left-o}:{top:e.top+e.height/2-i/2,left:e.left+e.width}},o.prototype.getViewportAdjustedDelta=function(t,e,o,i){var n={top:0,left:0};if(!this.$viewport)return n;var s=this.options.viewport&&this.options.viewport.padding||0,r=this.getPosition(this.$viewport);if(/right|left/.test(t)){var p=e.top-s-r.scroll,a=e.top+s-r.scroll+i;p<r.top?n.top=r.top-p:a>r.top+r.height&&(n.top=r.top+r.height-a)}else{var l=e.left-s,h=e.left+s+o;l<r.left?n.left=r.left-l:h>r.right&&(n.left=r.left+r.width-h)}return n},o.prototype.getTitle=function(){var t,e=this.$element,o=this.options;return t=e.attr("data-original-title")||("function"==typeof o.title?o.title.call(e[0]):o.title)},o.prototype.getUID=function(t){do t+=~~(1e6*Math.random());while(document.getElementById(t));return t},o.prototype.tip=function(){if(!this.$tip&&(this.$tip=t(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},o.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},o.prototype.enable=function(){this.enabled=!0},o.prototype.disable=function(){this.enabled=!1},o.prototype.toggleEnabled=function(){this.enabled=!this.enabled},o.prototype.toggle=function(e){var o=this;e&&(o=t(e.currentTarget).data("bs."+this.type),o||(o=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,o))),e?(o.inState.click=!o.inState.click,o.isInStateTrue()?o.enter(o):o.leave(o)):o.tip().hasClass("in")?o.leave(o):o.enter(o)},o.prototype.destroy=function(){var t=this;clearTimeout(this.timeout),this.hide(function(){t.$element.off("."+t.type).removeData("bs."+t.type),t.$tip&&t.$tip.detach(),t.$tip=null,t.$arrow=null,t.$viewport=null})};var i=t.fn.tooltip;t.fn.tooltip=e,t.fn.tooltip.Constructor=o,t.fn.tooltip.noConflict=function(){return t.fn.tooltip=i,this}}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var i=t(this),n=i.data("bs.popover"),s="object"==typeof e&&e;(n||!/destroy|hide/.test(e))&&(n||i.data("bs.popover",n=new o(this,s)),"string"==typeof e&&n[e]())})}var o=function(t,e){this.init("popover",t,e)};if(!t.fn.tooltip)throw new Error("Popover requires tooltip.js");o.VERSION="3.3.6",o.DEFAULTS=t.extend({},t.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'}),o.prototype=t.extend({},t.fn.tooltip.Constructor.prototype),o.prototype.constructor=o,o.prototype.getDefaults=function(){return o.DEFAULTS},o.prototype.setContent=function(){var t=this.tip(),e=this.getTitle(),o=this.getContent();t.find(".popover-title")[this.options.html?"html":"text"](e),t.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof o?"html":"append":"text"](o),t.removeClass("fade top bottom left right in"),t.find(".popover-title").html()||t.find(".popover-title").hide()},o.prototype.hasContent=function(){return this.getTitle()||this.getContent()},o.prototype.getContent=function(){var t=this.$element,e=this.options;return t.attr("data-content")||("function"==typeof e.content?e.content.call(t[0]):e.content)},o.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var i=t.fn.popover;t.fn.popover=e,t.fn.popover.Constructor=o,t.fn.popover.noConflict=function(){return t.fn.popover=i,this}}(jQuery);;jQuery(document).ready(function($) {
Severity: Major
Found in extras/ambassadors/dist/js/qm-ambassadors.js and 2 other locations - About 1 mo to fix
extras/trips/dist/js/qm-trips.js on lines 9815..9815
public/extras/ambassadors/js/qm-ambassadors.js on lines 1..1

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 6229.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 3 locations. Consider refactoring.
Open

if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(t){"use strict";var e=t.fn.jquery.split(" ")[0].split(".");if(e[0]<2&&e[1]<9||1==e[0]&&9==e[1]&&e[2]<1||e[0]>2)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 3")}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var i=t(this),n=i.data("bs.tooltip"),s="object"==typeof e&&e;(n||!/destroy|hide/.test(e))&&(n||i.data("bs.tooltip",n=new o(this,s)),"string"==typeof e&&n[e]())})}var o=function(t,e){this.type=null,this.options=null,this.enabled=null,this.timeout=null,this.hoverState=null,this.$element=null,this.inState=null,this.init("tooltip",t,e)};o.VERSION="3.3.6",o.TRANSITION_DURATION=150,o.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},o.prototype.init=function(e,o,i){if(this.enabled=!0,this.type=e,this.$element=t(o),this.options=this.getOptions(i),this.$viewport=this.options.viewport&&t(t.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var n=this.options.trigger.split(" "),s=n.length;s--;){var r=n[s];if("click"==r)this.$element.on("click."+this.type,this.options.selector,t.proxy(this.toggle,this));else if("manual"!=r){var p="hover"==r?"mouseenter":"focusin",a="hover"==r?"mouseleave":"focusout";this.$element.on(p+"."+this.type,this.options.selector,t.proxy(this.enter,this)),this.$element.on(a+"."+this.type,this.options.selector,t.proxy(this.leave,this))}}this.options.selector?this._options=t.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},o.prototype.getDefaults=function(){return o.DEFAULTS},o.prototype.getOptions=function(e){return e=t.extend({},this.getDefaults(),this.$element.data(),e),e.delay&&"number"==typeof e.delay&&(e.delay={show:e.delay,hide:e.delay}),e},o.prototype.getDelegateOptions=function(){var e={},o=this.getDefaults();return this._options&&t.each(this._options,function(t,i){o[t]!=i&&(e[t]=i)}),e},o.prototype.enter=function(e){var o=e instanceof this.constructor?e:t(e.currentTarget).data("bs."+this.type);return o||(o=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,o)),e instanceof t.Event&&(o.inState["focusin"==e.type?"focus":"hover"]=!0),o.tip().hasClass("in")||"in"==o.hoverState?void(o.hoverState="in"):(clearTimeout(o.timeout),o.hoverState="in",o.options.delay&&o.options.delay.show?void(o.timeout=setTimeout(function(){"in"==o.hoverState&&o.show()},o.options.delay.show)):o.show())},o.prototype.isInStateTrue=function(){for(var t in this.inState)if(this.inState[t])return!0;return!1},o.prototype.leave=function(e){var o=e instanceof this.constructor?e:t(e.currentTarget).data("bs."+this.type);return o||(o=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,o)),e instanceof t.Event&&(o.inState["focusout"==e.type?"focus":"hover"]=!1),o.isInStateTrue()?void 0:(clearTimeout(o.timeout),o.hoverState="out",o.options.delay&&o.options.delay.hide?void(o.timeout=setTimeout(function(){"out"==o.hoverState&&o.hide()},o.options.delay.hide)):o.hide())},o.prototype.show=function(){var e=t.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(e);var i=t.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(e.isDefaultPrevented()||!i)return;var n=this,s=this.tip(),r=this.getUID(this.type);this.setContent(),s.attr("id",r),this.$element.attr("aria-describedby",r),this.options.animation&&s.addClass("fade");var p="function"==typeof this.options.placement?this.options.placement.call(this,s[0],this.$element[0]):this.options.placement,a=/\s?auto?\s?/i,l=a.test(p);l&&(p=p.replace(a,"")||"top"),s.detach().css({top:0,left:0,display:"block"}).addClass(p).data("bs."+this.type,this),this.options.container?s.appendTo(this.options.container):s.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var h=this.getPosition(),f=s[0].offsetWidth,c=s[0].offsetHeight;if(l){var u=p,d=this.getPosition(this.$viewport);p="bottom"==p&&h.bottom+c>d.bottom?"top":"top"==p&&h.top-c<d.top?"bottom":"right"==p&&h.right+f>d.width?"left":"left"==p&&h.left-f<d.left?"right":p,s.removeClass(u).addClass(p)}var v=this.getCalculatedOffset(p,h,f,c);this.applyPlacement(v,p);var g=function(){var t=n.hoverState;n.$element.trigger("shown.bs."+n.type),n.hoverState=null,"out"==t&&n.leave(n)};t.support.transition&&this.$tip.hasClass("fade")?s.one("bsTransitionEnd",g).emulateTransitionEnd(o.TRANSITION_DURATION):g()}},o.prototype.applyPlacement=function(e,o){var i=this.tip(),n=i[0].offsetWidth,s=i[0].offsetHeight,r=parseInt(i.css("margin-top"),10),p=parseInt(i.css("margin-left"),10);isNaN(r)&&(r=0),isNaN(p)&&(p=0),e.top+=r,e.left+=p,t.offset.setOffset(i[0],t.extend({using:function(t){i.css({top:Math.round(t.top),left:Math.round(t.left)})}},e),0),i.addClass("in");var a=i[0].offsetWidth,l=i[0].offsetHeight;"top"==o&&l!=s&&(e.top=e.top+s-l);var h=this.getViewportAdjustedDelta(o,e,a,l);h.left?e.left+=h.left:e.top+=h.top;var f=/top|bottom/.test(o),c=f?2*h.left-n+a:2*h.top-s+l,u=f?"offsetWidth":"offsetHeight";i.offset(e),this.replaceArrow(c,i[0][u],f)},o.prototype.replaceArrow=function(t,e,o){this.arrow().css(o?"left":"top",50*(1-t/e)+"%").css(o?"top":"left","")},o.prototype.setContent=function(){var t=this.tip(),e=this.getTitle();t.find(".tooltip-inner")[this.options.html?"html":"text"](e),t.removeClass("fade in top bottom left right")},o.prototype.hide=function(e){function i(){"in"!=n.hoverState&&s.detach(),n.$element.removeAttr("aria-describedby").trigger("hidden.bs."+n.type),e&&e()}var n=this,s=t(this.$tip),r=t.Event("hide.bs."+this.type);return this.$element.trigger(r),r.isDefaultPrevented()?void 0:(s.removeClass("in"),t.support.transition&&s.hasClass("fade")?s.one("bsTransitionEnd",i).emulateTransitionEnd(o.TRANSITION_DURATION):i(),this.hoverState=null,this)},o.prototype.fixTitle=function(){var t=this.$element;(t.attr("title")||"string"!=typeof t.attr("data-original-title"))&&t.attr("data-original-title",t.attr("title")||"").attr("title","")},o.prototype.hasContent=function(){return this.getTitle()},o.prototype.getPosition=function(e){e=e||this.$element;var o=e[0],i="BODY"==o.tagName,n=o.getBoundingClientRect();null==n.width&&(n=t.extend({},n,{width:n.right-n.left,height:n.bottom-n.top}));var s=i?{top:0,left:0}:e.offset(),r={scroll:i?document.documentElement.scrollTop||document.body.scrollTop:e.scrollTop()},p=i?{width:t(window).width(),height:t(window).height()}:null;return t.extend({},n,r,p,s)},o.prototype.getCalculatedOffset=function(t,e,o,i){return"bottom"==t?{top:e.top+e.height,left:e.left+e.width/2-o/2}:"top"==t?{top:e.top-i,left:e.left+e.width/2-o/2}:"left"==t?{top:e.top+e.height/2-i/2,left:e.left-o}:{top:e.top+e.height/2-i/2,left:e.left+e.width}},o.prototype.getViewportAdjustedDelta=function(t,e,o,i){var n={top:0,left:0};if(!this.$viewport)return n;var s=this.options.viewport&&this.options.viewport.padding||0,r=this.getPosition(this.$viewport);if(/right|left/.test(t)){var p=e.top-s-r.scroll,a=e.top+s-r.scroll+i;p<r.top?n.top=r.top-p:a>r.top+r.height&&(n.top=r.top+r.height-a)}else{var l=e.left-s,h=e.left+s+o;l<r.left?n.left=r.left-l:h>r.right&&(n.left=r.left+r.width-h)}return n},o.prototype.getTitle=function(){var t,e=this.$element,o=this.options;return t=e.attr("data-original-title")||("function"==typeof o.title?o.title.call(e[0]):o.title)},o.prototype.getUID=function(t){do t+=~~(1e6*Math.random());while(document.getElementById(t));return t},o.prototype.tip=function(){if(!this.$tip&&(this.$tip=t(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},o.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},o.prototype.enable=function(){this.enabled=!0},o.prototype.disable=function(){this.enabled=!1},o.prototype.toggleEnabled=function(){this.enabled=!this.enabled},o.prototype.toggle=function(e){var o=this;e&&(o=t(e.currentTarget).data("bs."+this.type),o||(o=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,o))),e?(o.inState.click=!o.inState.click,o.isInStateTrue()?o.enter(o):o.leave(o)):o.tip().hasClass("in")?o.leave(o):o.enter(o)},o.prototype.destroy=function(){var t=this;clearTimeout(this.timeout),this.hide(function(){t.$element.off("."+t.type).removeData("bs."+t.type),t.$tip&&t.$tip.detach(),t.$tip=null,t.$arrow=null,t.$viewport=null})};var i=t.fn.tooltip;t.fn.tooltip=e,t.fn.tooltip.Constructor=o,t.fn.tooltip.noConflict=function(){return t.fn.tooltip=i,this}}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var i=t(this),n=i.data("bs.popover"),s="object"==typeof e&&e;(n||!/destroy|hide/.test(e))&&(n||i.data("bs.popover",n=new o(this,s)),"string"==typeof e&&n[e]())})}var o=function(t,e){this.init("popover",t,e)};if(!t.fn.tooltip)throw new Error("Popover requires tooltip.js");o.VERSION="3.3.6",o.DEFAULTS=t.extend({},t.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'}),o.prototype=t.extend({},t.fn.tooltip.Constructor.prototype),o.prototype.constructor=o,o.prototype.getDefaults=function(){return o.DEFAULTS},o.prototype.setContent=function(){var t=this.tip(),e=this.getTitle(),o=this.getContent();t.find(".popover-title")[this.options.html?"html":"text"](e),t.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof o?"html":"append":"text"](o),t.removeClass("fade top bottom left right in"),t.find(".popover-title").html()||t.find(".popover-title").hide()},o.prototype.hasContent=function(){return this.getTitle()||this.getContent()},o.prototype.getContent=function(){var t=this.$element,e=this.options;return t.attr("data-content")||("function"==typeof e.content?e.content.call(t[0]):e.content)},o.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var i=t.fn.popover;t.fn.popover=e,t.fn.popover.Constructor=o,t.fn.popover.noConflict=function(){return t.fn.popover=i,this}}(jQuery);;jQuery(document).ready(function($) {
Severity: Major
Found in public/extras/ambassadors/js/qm-ambassadors.js and 2 other locations - About 1 mo to fix
extras/ambassadors/dist/js/qm-ambassadors.js on lines 1..1
extras/trips/dist/js/qm-trips.js on lines 9815..9815

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 6229.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 3 locations. Consider refactoring.
Open

;if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(t){"use strict";var e=t.fn.jquery.split(" ")[0].split(".");if(e[0]<2&&e[1]<9||1==e[0]&&9==e[1]&&e[2]<1||e[0]>2)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 3")}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var i=t(this),n=i.data("bs.tooltip"),s="object"==typeof e&&e;(n||!/destroy|hide/.test(e))&&(n||i.data("bs.tooltip",n=new o(this,s)),"string"==typeof e&&n[e]())})}var o=function(t,e){this.type=null,this.options=null,this.enabled=null,this.timeout=null,this.hoverState=null,this.$element=null,this.inState=null,this.init("tooltip",t,e)};o.VERSION="3.3.6",o.TRANSITION_DURATION=150,o.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},o.prototype.init=function(e,o,i){if(this.enabled=!0,this.type=e,this.$element=t(o),this.options=this.getOptions(i),this.$viewport=this.options.viewport&&t(t.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var n=this.options.trigger.split(" "),s=n.length;s--;){var r=n[s];if("click"==r)this.$element.on("click."+this.type,this.options.selector,t.proxy(this.toggle,this));else if("manual"!=r){var p="hover"==r?"mouseenter":"focusin",a="hover"==r?"mouseleave":"focusout";this.$element.on(p+"."+this.type,this.options.selector,t.proxy(this.enter,this)),this.$element.on(a+"."+this.type,this.options.selector,t.proxy(this.leave,this))}}this.options.selector?this._options=t.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},o.prototype.getDefaults=function(){return o.DEFAULTS},o.prototype.getOptions=function(e){return e=t.extend({},this.getDefaults(),this.$element.data(),e),e.delay&&"number"==typeof e.delay&&(e.delay={show:e.delay,hide:e.delay}),e},o.prototype.getDelegateOptions=function(){var e={},o=this.getDefaults();return this._options&&t.each(this._options,function(t,i){o[t]!=i&&(e[t]=i)}),e},o.prototype.enter=function(e){var o=e instanceof this.constructor?e:t(e.currentTarget).data("bs."+this.type);return o||(o=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,o)),e instanceof t.Event&&(o.inState["focusin"==e.type?"focus":"hover"]=!0),o.tip().hasClass("in")||"in"==o.hoverState?void(o.hoverState="in"):(clearTimeout(o.timeout),o.hoverState="in",o.options.delay&&o.options.delay.show?void(o.timeout=setTimeout(function(){"in"==o.hoverState&&o.show()},o.options.delay.show)):o.show())},o.prototype.isInStateTrue=function(){for(var t in this.inState)if(this.inState[t])return!0;return!1},o.prototype.leave=function(e){var o=e instanceof this.constructor?e:t(e.currentTarget).data("bs."+this.type);return o||(o=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,o)),e instanceof t.Event&&(o.inState["focusout"==e.type?"focus":"hover"]=!1),o.isInStateTrue()?void 0:(clearTimeout(o.timeout),o.hoverState="out",o.options.delay&&o.options.delay.hide?void(o.timeout=setTimeout(function(){"out"==o.hoverState&&o.hide()},o.options.delay.hide)):o.hide())},o.prototype.show=function(){var e=t.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(e);var i=t.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(e.isDefaultPrevented()||!i)return;var n=this,s=this.tip(),r=this.getUID(this.type);this.setContent(),s.attr("id",r),this.$element.attr("aria-describedby",r),this.options.animation&&s.addClass("fade");var p="function"==typeof this.options.placement?this.options.placement.call(this,s[0],this.$element[0]):this.options.placement,a=/\s?auto?\s?/i,l=a.test(p);l&&(p=p.replace(a,"")||"top"),s.detach().css({top:0,left:0,display:"block"}).addClass(p).data("bs."+this.type,this),this.options.container?s.appendTo(this.options.container):s.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var h=this.getPosition(),f=s[0].offsetWidth,c=s[0].offsetHeight;if(l){var u=p,d=this.getPosition(this.$viewport);p="bottom"==p&&h.bottom+c>d.bottom?"top":"top"==p&&h.top-c<d.top?"bottom":"right"==p&&h.right+f>d.width?"left":"left"==p&&h.left-f<d.left?"right":p,s.removeClass(u).addClass(p)}var v=this.getCalculatedOffset(p,h,f,c);this.applyPlacement(v,p);var g=function(){var t=n.hoverState;n.$element.trigger("shown.bs."+n.type),n.hoverState=null,"out"==t&&n.leave(n)};t.support.transition&&this.$tip.hasClass("fade")?s.one("bsTransitionEnd",g).emulateTransitionEnd(o.TRANSITION_DURATION):g()}},o.prototype.applyPlacement=function(e,o){var i=this.tip(),n=i[0].offsetWidth,s=i[0].offsetHeight,r=parseInt(i.css("margin-top"),10),p=parseInt(i.css("margin-left"),10);isNaN(r)&&(r=0),isNaN(p)&&(p=0),e.top+=r,e.left+=p,t.offset.setOffset(i[0],t.extend({using:function(t){i.css({top:Math.round(t.top),left:Math.round(t.left)})}},e),0),i.addClass("in");var a=i[0].offsetWidth,l=i[0].offsetHeight;"top"==o&&l!=s&&(e.top=e.top+s-l);var h=this.getViewportAdjustedDelta(o,e,a,l);h.left?e.left+=h.left:e.top+=h.top;var f=/top|bottom/.test(o),c=f?2*h.left-n+a:2*h.top-s+l,u=f?"offsetWidth":"offsetHeight";i.offset(e),this.replaceArrow(c,i[0][u],f)},o.prototype.replaceArrow=function(t,e,o){this.arrow().css(o?"left":"top",50*(1-t/e)+"%").css(o?"top":"left","")},o.prototype.setContent=function(){var t=this.tip(),e=this.getTitle();t.find(".tooltip-inner")[this.options.html?"html":"text"](e),t.removeClass("fade in top bottom left right")},o.prototype.hide=function(e){function i(){"in"!=n.hoverState&&s.detach(),n.$element.removeAttr("aria-describedby").trigger("hidden.bs."+n.type),e&&e()}var n=this,s=t(this.$tip),r=t.Event("hide.bs."+this.type);return this.$element.trigger(r),r.isDefaultPrevented()?void 0:(s.removeClass("in"),t.support.transition&&s.hasClass("fade")?s.one("bsTransitionEnd",i).emulateTransitionEnd(o.TRANSITION_DURATION):i(),this.hoverState=null,this)},o.prototype.fixTitle=function(){var t=this.$element;(t.attr("title")||"string"!=typeof t.attr("data-original-title"))&&t.attr("data-original-title",t.attr("title")||"").attr("title","")},o.prototype.hasContent=function(){return this.getTitle()},o.prototype.getPosition=function(e){e=e||this.$element;var o=e[0],i="BODY"==o.tagName,n=o.getBoundingClientRect();null==n.width&&(n=t.extend({},n,{width:n.right-n.left,height:n.bottom-n.top}));var s=i?{top:0,left:0}:e.offset(),r={scroll:i?document.documentElement.scrollTop||document.body.scrollTop:e.scrollTop()},p=i?{width:t(window).width(),height:t(window).height()}:null;return t.extend({},n,r,p,s)},o.prototype.getCalculatedOffset=function(t,e,o,i){return"bottom"==t?{top:e.top+e.height,left:e.left+e.width/2-o/2}:"top"==t?{top:e.top-i,left:e.left+e.width/2-o/2}:"left"==t?{top:e.top+e.height/2-i/2,left:e.left-o}:{top:e.top+e.height/2-i/2,left:e.left+e.width}},o.prototype.getViewportAdjustedDelta=function(t,e,o,i){var n={top:0,left:0};if(!this.$viewport)return n;var s=this.options.viewport&&this.options.viewport.padding||0,r=this.getPosition(this.$viewport);if(/right|left/.test(t)){var p=e.top-s-r.scroll,a=e.top+s-r.scroll+i;p<r.top?n.top=r.top-p:a>r.top+r.height&&(n.top=r.top+r.height-a)}else{var l=e.left-s,h=e.left+s+o;l<r.left?n.left=r.left-l:h>r.right&&(n.left=r.left+r.width-h)}return n},o.prototype.getTitle=function(){var t,e=this.$element,o=this.options;return t=e.attr("data-original-title")||("function"==typeof o.title?o.title.call(e[0]):o.title)},o.prototype.getUID=function(t){do t+=~~(1e6*Math.random());while(document.getElementById(t));return t},o.prototype.tip=function(){if(!this.$tip&&(this.$tip=t(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},o.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},o.prototype.enable=function(){this.enabled=!0},o.prototype.disable=function(){this.enabled=!1},o.prototype.toggleEnabled=function(){this.enabled=!this.enabled},o.prototype.toggle=function(e){var o=this;e&&(o=t(e.currentTarget).data("bs."+this.type),o||(o=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,o))),e?(o.inState.click=!o.inState.click,o.isInStateTrue()?o.enter(o):o.leave(o)):o.tip().hasClass("in")?o.leave(o):o.enter(o)},o.prototype.destroy=function(){var t=this;clearTimeout(this.timeout),this.hide(function(){t.$element.off("."+t.type).removeData("bs."+t.type),t.$tip&&t.$tip.detach(),t.$tip=null,t.$arrow=null,t.$viewport=null})};var i=t.fn.tooltip;t.fn.tooltip=e,t.fn.tooltip.Constructor=o,t.fn.tooltip.noConflict=function(){return t.fn.tooltip=i,this}}(jQuery),+function(t){"use strict";function e(e){return this.each(function(){var i=t(this),n=i.data("bs.popover"),s="object"==typeof e&&e;(n||!/destroy|hide/.test(e))&&(n||i.data("bs.popover",n=new o(this,s)),"string"==typeof e&&n[e]())})}var o=function(t,e){this.init("popover",t,e)};if(!t.fn.tooltip)throw new Error("Popover requires tooltip.js");o.VERSION="3.3.6",o.DEFAULTS=t.extend({},t.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'}),o.prototype=t.extend({},t.fn.tooltip.Constructor.prototype),o.prototype.constructor=o,o.prototype.getDefaults=function(){return o.DEFAULTS},o.prototype.setContent=function(){var t=this.tip(),e=this.getTitle(),o=this.getContent();t.find(".popover-title")[this.options.html?"html":"text"](e),t.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof o?"html":"append":"text"](o),t.removeClass("fade top bottom left right in"),t.find(".popover-title").html()||t.find(".popover-title").hide()},o.prototype.hasContent=function(){return this.getTitle()||this.getContent()},o.prototype.getContent=function(){var t=this.$element,e=this.options;return t.attr("data-content")||("function"==typeof e.content?e.content.call(t[0]):e.content)},o.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var i=t.fn.popover;t.fn.popover=e,t.fn.popover.Constructor=o,t.fn.popover.noConflict=function(){return t.fn.popover=i,this}}(jQuery);;jQuery(document).ready(function($) {
Severity: Major
Found in extras/trips/dist/js/qm-trips.js and 2 other locations - About 1 mo to fix
extras/ambassadors/dist/js/qm-ambassadors.js on lines 1..1
public/extras/ambassadors/js/qm-ambassadors.js on lines 1..1

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 6229.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

File qm-trips.js has 6545 lines of code (exceeds 250 allowed). Consider refactoring.
Open

/*!
 * jQuery JavaScript Library v2.2.4
 * http://jquery.com/
 *
 * Includes Sizzle.js
Severity: Major
Found in extras/trips/dist/js/qm-trips.js - About 2 wks to fix

    File jquery-2.2.4.js has 6373 lines of code (exceeds 250 allowed). Consider refactoring.
    Open

    /*!
     * jQuery JavaScript Library v2.2.4
     * http://jquery.com/
     *
     * Includes Sizzle.js
    Severity: Major
    Found in extras/trips/src/js/jquery-2.2.4.js - About 2 wks to fix

      Identical blocks of code found in 3 locations. Consider refactoring.
      Open

      jQuery(document).ready(function($) {
        var default_img, qm_data, setupVisualization;
        qm_data = [
          {
            name: 'Rajoy',
      Severity: Major
      Found in extras/ambassadors/src/js/qm-ambassadors.js and 2 other locations - About 1 wk to fix
      extras/ambassadors/dist/js/qm-ambassadors.js on lines 1..286
      public/extras/ambassadors/js/qm-ambassadors.js on lines 1..286

      Duplicated Code

      Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

      Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

      When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

      Tuning

      This issue has a mass of 1662.

      We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

      The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

      If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

      See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

      Refactorings

      Further Reading

      Function Sizzle has 1387 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

      (function( window ) {
      
      var i,
          support,
          Expr,
      Severity: Major
      Found in extras/trips/src/js/jquery-2.2.4.js - About 6 days to fix

        Function Sizzle has 1387 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

        (function( window ) {
        
        var i,
            support,
            Expr,
        Severity: Major
        Found in extras/trips/dist/js/qm-trips.js - About 6 days to fix

          File packery.pkgd.js has 2209 lines of code (exceeds 250 allowed). Consider refactoring.
          Open

          /*!
           * Packery PACKAGED v1.3.2
           * bin-packing layout library
           * http://packery.metafizzy.co
           *
          Severity: Major
          Found in app/assets/javascripts/packery.pkgd.js - About 6 days to fix

            Function NetworkGraph has 504 lines of code (exceeds 25 allowed). Consider refactoring.
            Open

            function NetworkGraph(selector, infobox, undoBtn, redoBtn, historyParams) {
            
              var _this = this;
            
              // Basic D3.js SVG container setup
            Severity: Major
            Found in app/assets/javascripts/viz/network-graph.js - About 2 days to fix

              Function outlayerDefinition has 501 lines of code (exceeds 25 allowed). Consider refactoring.
              Open

              function outlayerDefinition( eventie, docReady, EventEmitter, getSize, matchesSelector, Item ) {
              
              // -------------------------- Outlayer -------------------------- //
              
              // globally unique identifiers
              Severity: Major
              Found in app/assets/javascripts/packery.pkgd.js - About 2 days to fix

                Function outlayerItemDefinition has 297 lines of code (exceeds 25 allowed). Consider refactoring.
                Open

                function outlayerItemDefinition( EventEmitter, getSize, getStyleProperty ) {
                
                // -------------------------- CSS3 support -------------------------- //
                
                var transitionProperty = getStyleProperty('transition');
                Severity: Major
                Found in app/assets/javascripts/packery.pkgd.js - About 1 day to fix

                  Function NetworkGraph has a Cognitive Complexity of 70 (exceeds 5 allowed). Consider refactoring.
                  Open

                  function NetworkGraph(selector, infobox, undoBtn, redoBtn, historyParams) {
                  
                    var _this = this;
                  
                    // Basic D3.js SVG container setup
                  Severity: Minor
                  Found in app/assets/javascripts/viz/network-graph.js - About 1 day to fix

                  Cognitive Complexity

                  Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                  A method's cognitive complexity is based on a few simple rules:

                  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                  • Code is considered more complex for each "break in the linear flow of the code"
                  • Code is considered more complex when "flow breaking structures are nested"

                  Further reading

                  Similar blocks of code found in 24 locations. Consider refactoring.
                  Open

                    qm_trips_data = [["Marruecos", 2013, "José Manuel Soria", "Ministros", "Ministro de Industria, Energía y Turismo", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/130/icon_perfil.JPG", "Ana Pastor", "Ministros", "Ministra de Fomento", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/127/icon_origin_6257019943.jpg", "Jorge Fernández Díaz", "Ministros", "Ministro del Interior", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/126/icon_8971886864_c22a915017_o.jpg", "Rafael Catalá", "Ministros", "Ministro de Justicia", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/14152/icon_Captura_de_pantalla_2016-06-01_a_las_22.48.50.png", "José Manuel García-Margallo", "Ministros", "Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/123/icon_perfil.jpg", "José Pedro Pérez Llorca", "Exministros", "Exministro de Asuntos Exteriores", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/12063/icon_3942_1.jpg", "Marcelino Oreja", "Exministros", "Exministro de Asuntos Exteriores", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/6902/icon_marcelino.jpg", "Javier Solana", "Exministros", "Exministro de Asuntos Exteriores", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/11901/icon_800px-Javier_Solana__2007_.jpg", "Carlos Westendorp", "Exministros", "Exministro de Asuntos Exteriores", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/14154/icon_Captura_de_pantalla_2016-06-02_a_las_11.41.27.png", "Abel Matutes", "Exministros", "Exministro de Asuntos Exteriores", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/7798/icon_matutes_exteriores.png", "Josep Piqué", "Exministros", "Exministro de Asuntos Exteriores", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/6946/icon_Piqu_.jpg", "Ana Palacio", "Exministros", "Exministra de Asuntos Exteriores", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/12506/icon_Ana_Palacio.jpg", "Miguel Ángel Moratinos", "Exministros", "Exministro de Asuntos Exteriores y Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/11110/icon_moratinos.jpg", "Trinidad Jiménez", "Exministros", "Exministra de Asuntos Exteriores y Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/13013/icon_200px-Trinidad_Jim_nez_2.jpg", "Carlos Espinosa de los Monteros", "Altos cargos", "Alto Comisionado Del Gobierno para La Marca España", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/6502/icon_Carlos_Espinosa_de_los_Monteros.jpg", "", "Casa Real", "Director de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "Rafael Spottorno", "Casa Real", "Jefe de la Casa de Su Majestad El Rey", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/12971/icon_casa1rey1-a.jpg", "", "Casa Real", "Jefe De Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Segundo Jefe de Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Altos cargos", "Directora de Comunicación del Ministerio de Fomento", "MAEC", "", "", "Altos cargos", "Asesor del Ministro de Industria, Energía y Turismo", "MAEC", "", "", "Altos cargos", "Asesor del Ministro de Industria, Energía y Turismo", "MAEC", "", "", "Altos cargos", "Secretaria General de Transportes", "MAEC", "", "", "Altos cargos", "Jefe de Área de Protocolo", "MAEC", "", "", "Altos cargos", "Jefe de Gabinete del Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "", "", "Altos cargos", "Director General para el Magreb, África, Mediterráneo y Oriente Próximo", "MAEC", "", "", "Altos cargos", "Director General de Relaciones Económicas Internacionales", "MAEC", "", "", "Altos cargos", "Secretario de Estado de Asuntos Exteriores", "MAEC", "", "", "Altos cargos", "Vocal Asesor del Gabinete del Secretario de Estado de Asuntos Exteriores", "MAEC", "", "", "Altos cargos", "Introductor de Embajadores", "MAEC", "", "", "Altos cargos", "Jefe de Área de Viaje y Visitas Oficiales del Ministerio de Asuntos Exteriores", "MAEC", "", "", "Altos cargos", "Asesor de la Dirección General de Medios y Diplomacia Pública", "MAEC", "", "", "Altos cargos", "Vocal Asesor del Gabinete del Ministro", "MAEC", "", "", "Altos cargos", "Director General de Relaciones Internacionales y Extranjería del Ministerio del Interior", "MAEC", "", "", "Altos cargos", "Directora de Comunicación del Ministerio de Justicia", "MAEC", "", "", "Altos cargos", "Director General de Cooperación Jurídica Internacional y Relaciones con las Confesiones del Ministerio de Justicia", "MAEC", "", "", "Altos cargos", "Subdirectora General de Promoción Exterior Educativa del Ministerio de Educación,  Cultura y Deporte", "MAEC", "", "", "Altos cargos", "Director de la Agencia Nacional de Evaluación de la Calidad y Acreditación (ANECA) del Ministerio de Educación, Cultura y Deporte", "MAEC", "", "", "Altos cargos", "Director General de Política Universitaria del Ministerio de Educación, Cultura y Deporte ", "MAEC", "", "", "Altos cargos", "Director General de Comercio e Inversiones del Ministerio de Economía y Competitividad", "MAEC", "", "", "Altos cargos", "Director de Gabinete del Ministro del Interior", "MAEC", "", "", "Altos cargos", "Embajador de España en el Reino de Marruecos", "MAEC", "", "", "Altos cargos", "Secretario General de Universidaes", "MAEC", "", "", "Altos cargos", "Director Adjunto de la Oficina del Alto Comisionado del Gobierno para la Marca España", "MAEC", "", "", "Altos cargos", "Director Del Instituto Cervantes", "MAEC", "", "", "Altos cargos", "Director del Gabinete de Dirección del Instituto Cervantes", "MAEC", "", "", "Altos cargos", "Presidente del Consejo de Administración del Patrimonio Nacional", "MAEC", "", "", "", "", "", ""], ["Russia (Moscú)", 2012, "Esther Alcocer Koplowitz", "Empresarios", "Presidenta de FCC", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/10028/icon_Esther_Alcocer_Koplowitz__Presidenta_FCC__Foto_Prensa_FCC.jpg", "José María Baztarrica", "Empresarios", "Presidente de CAF", "MAEC", "", "Carlos de Palacio", "Empresarios", "Presidente de TALGO", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/10305/icon_138264_PremioFalcone2.jpg", "Enrique José Vedeguer", "Empresarios", "Presidente de ADIF", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/11138/icon_EnriqueVerdeguer_EconomiaIndustriayComercio.jpg", "Juan Miguel Villar Mir", "Empresarios", "Presidente de OHL", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/7800/icon_rosell.jpg", "Javier Monzón", "Empresarios", "Presidente de INDRA", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/6619/icon_indraJavierMonzo_n.jpg", "José Lladó", "Empresarios", "Presidente de Técnicas Reunidas", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/10152/icon_JoseLlado2.jpg", "", "Empresarios", "Consejero Delegado de IBERDROLA INGENIERIA", "MAEC", "", "José Fernando Sánchez-Junco", "Empresarios", "Presidente de MAXAM", "MAEC", "", "Antonio Brufau", "Empresarios", "Presidente de REPSOL", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/6134/icon_Antonio_Brufau.jpg", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["India", 2012, "José Manuel Soria", "Ministros", "Ministro de Industria, Energía y Turismo", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/130/icon_perfil.JPG", "Ana Pastor", "Ministros", "Ministra de Fomento", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/127/icon_origin_6257019943.jpg", "Pedro Morenés", "Ministros", "Ministro de Defensa", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/125/icon_ministro-Morenes.jpg", "José Manuel García-Margallo", "Ministros", "Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/123/icon_perfil.jpg", "Manuel Manrique Cecilia", "Empresarios", "Consejero Ejecutivo de Sacyr", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/6652/icon_manrique.jpg", "José Antonio Vera", "Empresarios", "Presidente de Agencia EFE", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/12935/icon_LA_RAZON_361260_062nac07fot1.jpg", "Regino Moranchel", "Empresarios", "Vicepresidente Ejecutivo y Consejero Delegado de INDRA", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/6930/icon__dsc4183.jpg", "José Manuel Revuelta", "Empresarios", "Presidente de Navantia", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/14158/icon_Captura_de_pantalla_2016-06-02_a_las_16.05.43.png", "", "Empresarios", "Consejero Delegado de ASSIGNIA", "MAEC", "", "Carlos de Gomar Roca", "Empresarios", "Presidente de ROCA", "MAEC", "", "Luis Delso Heras", "Empresarios", "Presidente del Grupo ISOLUX Corsan", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/14140/icon_Captura_de_pantalla_2016-01-22_a_las_11.21.48.png", "", "Empresarios", "Ferrovial (sin especificar)", "MAEC", "", "José Terceiro", "Empresarios", "Vicepresidente Ejecutivo Abengoa", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/10087/icon_2012-06-22_IMG_2012-06-15_02.05.13__8730524.jpg", "José María Baztarrica", "Empresarios", "Presidente de CAF", "MAEC", "", "Juan Miguel Villar Mir", "Empresarios", "Presidente de OHL", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/7800/icon_rosell.jpg", "Francisco José Riberas", "Empresarios", "Presidente de Gestamp", "MAEC", "", "Manuel Teruel", "Empresarios", "Presidente del Consejo Superior de Cámaras", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/11291/icon_teruel-baja.jpg", "Arturo Fernández", "Empresarios", "Vicepresidente Primero de la CEOE", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/327/icon_arturo-fernandez-dentro.jpg", "Jaime García-Legaz", "Altos cargos", "Secretario De Estado De Comercio", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/12360/icon_InteriorGarciaLegazRecurso_MINECO2.jpg", "Carlos Espinosa de los Monteros", "Altos cargos", "Alto Comisionado Del Gobierno para La Marca España", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/6502/icon_Carlos_Espinosa_de_los_Monteros.jpg", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Rusia (San Petersburgo)", 2011, "Miguel Sebastián", "Ministros", "Ministro de Industria, Energía y Turismo", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/9184/icon_perfil.jpg", "Trinidad Jiménez", "Ministros", "Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/13013/icon_200px-Trinidad_Jim_nez_2.jpg", "Ángeles González Sinde", "Ministros", "Ministro de Cultura", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/11295/icon_sinde.jpg", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Paraguay", 2011, "", "Casa Real", "Ayudante de Campo de la Casa de S.M. El Rey", "MAEC", "", "", "Casa Real", "Ayudante de Campo de la Casa de S.M. El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto de Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto del Centro de Comunicaciones de la Casa de S.M. El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto del Centro de Comunicaciones de la Casa de S.M. El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto del Servicio de Seguridad de la Casa de Su Majestad El Rey", "MAEC", "", "Rafael Spottorno", "Casa Real", "Jefe de la Casa de Su Majestad El Rey", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/12971/icon_casa1rey1-a.jpg", "", "Casa Real", "Jefe de la Secretaría de Su Majestad La Reina", "MAEC", "", "", "Casa Real", "Jefe de los Servicios Médicos de la Casa de S.M. El Rey", "MAEC", "", "", "Casa Real", "Jefe de Protocolo de la Casa de S.M. El Rey", "MAEC", "", "", "Casa Real", "Jefe del Área de Viajes y Transportes de la Casa de S.M. El Rey", "MAEC", "", "", "Casa Real", "Jefe del Servicio de Seguridad de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Relaciones Medios de Comunicación de la Casa de S.M. El Rey", "MAEC", "", "", "Casa Real", "Jefe Unidad de Apoyo de la Dirección General de Coop. América Latina", "MAEC", "", "", "Casa Real", "Secretario General de la Casa de S.M. El Rey", "MAEC", "", "", "Altos cargos", "Embajador en misión Especial para las Cumbres Iberoamericanas", "MAEC", "", "", "Altos cargos", "Director General del Gabinete de la Ministra de Asuntos Exteriores ", "MAEC", "", "", "Altos cargos", "Directora del Gabinete de Secretario de Estado de Cooperación", "MAEC", "", "", "Altos cargos", "Introductor de Embajadores", "MAEC", "", "", "Altos cargos", "Secretaria de Estado de Cooperación Internacional", "MAEC", "", "", "Altos cargos", "Secretario de Estado de Asuntos Exteriores e Iberoamérica", "MAEC", "", "", "Altos cargos", "Segundo Introductor de Embajadores", "MAEC", "", "", "Altos cargos", "Director General de Cooperación América Latina y Caribe", "MAEC", "", "", "Altos cargos", "Vocal Asesor Director General para Iberoamérica", "MAEC", "", "", "Altos cargos", "Vocal Asesora De Asuntos Interamericanos", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Suiza", 2011, "Trinidad Jiménez", "Ministros", "Ministra de Asuntos Exteriores y de Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/13013/icon_200px-Trinidad_Jim_nez_2.jpg", "", "Altos cargos", "Asesora Comunicación Exterior Gabinete de la Sra. Ministra ", "MAEC", "", "", "Altos cargos", "Director Adjunto del Gabinete de la Sra. Ministra ", "MAEC", "", "", "Altos cargos", "Introductor de Embajadores", "MAEC", "", "", "Altos cargos", "Director General de Política Exterior, Europa y Seguridad", "MAEC", "", "", "Altos cargos", "Director General de Relaciones Económicas Internacionales y Asuntos Energéticos", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Kuwait", 2011, "Trinidad Jiménez", "Ministros", "Ministra de Asuntos Exteriores y de Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/13013/icon_200px-Trinidad_Jim_nez_2.jpg", "Cristina Garmendia", "Ministros", "Ministra de Ciencia e Innovación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/9190/icon_1212789602_850215_0000000000_sumario_normal.jpg", "", "Altos cargos", "Introductor de Embajadores", "MAEC", "", "", "Altos cargos", "Secretario de Estado para la Unión Europea", "MAEC", "", "", "Altos cargos", "Director de Gabinete Ministra de Ciencia e Innovación", "MAEC", "", "", "Altos cargos", "Director General de Relaciones Económicas Internacionales Asuntos Energéticos", "MAEC", "", "", "Altos cargos", "Director de Gabinete SEUE ", "MAEC", "", "", "Altos cargos", "Director General Cooperación Internacional y Relaciones Internacionales ", "MAEC", "", "", "Altos cargos", "Secretario General de Innovación", "MAEC", "", "", "Altos cargos", "Subdirector General de Países de la Unión Europea", "MAEC", "", "", "Altos cargos", "Vocal Asesora Gabinete MAEC", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Alemania (Berlín)", 2011, "Trinidad Jiménez", "Ministros", "Ministra de Asuntos Exteriores y de Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/13013/icon_200px-Trinidad_Jim_nez_2.jpg", "Cristina Garmendia", "Ministros", "Ministra de Ciencia e Innovación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/9190/icon_1212789602_850215_0000000000_sumario_normal.jpg", "", "Altos cargos", "Introductor de Embajadores", "MAEC", "", "", "Altos cargos", "Secretario de Estado para la Unión Europea", "MAEC", "", "", "Altos cargos", "Director de Gabinete Ministra de Ciencia e Innovación", "MAEC", "", "", "Altos cargos", "Director General de Relaciones Económicas Internacionales Asuntos Energéticos", "MAEC", "", "", "Altos cargos", "Director de Gabinete SEUE ", "MAEC", "", "", "Altos cargos", "Director General Cooperación Internacional y Relaciones Internacionales ", "MAEC", "", "", "Altos cargos", "Secretario General de Innovación", "MAEC", "", "", "Altos cargos", "Subdirector General de Países de la Unión Europea", "MAEC", "", "", "Altos cargos", "Vocal Asesora Gabinete MAEC", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Argentina", 2010, "", "Altos cargos", "Secretario de Estado para Iberoamérica", "MAEC", "", "", "Altos cargos", "Embajador Representante Permanente ante Naciones Unidas", "MAEC", "", "", "Altos cargos", "Director General de Iberoamérica", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Chile", 2010, "", "Altos cargos", "Secretario de Estado para Iberoamérica", "MAEC", "", "", "Altos cargos", "Directora del Instituto Cervantes", "MAEC", "", "", "Altos cargos", "Introductor de Embajadores", "MAEC", "", "", "Altos cargos", "Subdirector General para Países del Mercosur y Chile", "MAEC", "", "", "Altos cargos", "Director de Relaciones Culturales y Científicas", "MAEC", "", "", "Altos cargos", "Vocal Asesora del Secretario de Estado para Iberoamérica", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Líbano", 2015, "", "Casa Real", "Consejero Diplomático de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Director de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto de Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto del Servicio de Seguridad de la Casa de Su Majestad El Rey", "MAEC", "", "Jaime Alfonsín Alfonso", "Casa Real", "Jefe de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe De Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe del Cuarto Militar de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe del Servicio de Seguridad de la Casa de Su Majestad El Rey", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Etiopía", 2015, "", "Casa Real", "Consejero Diplomático de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Director de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto de Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto del Servicio de Seguridad de la Casa de Su Majestad El Rey", "MAEC", "", "Jaime Alfonsín Alfonso", "Casa Real", "Jefe de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe De Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe del Servicio de Seguridad de la Casa de Su Majestad El Rey", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["México", 2015, "", "Casa Real", "Director de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto de Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto del Servicio de Seguridad de la Casa de Su Majestad El Rey", "MAEC", "", "Jaime Alfonsín Alfonso", "Casa Real", "Jefe de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe de la Secretaría de Su Majestad La Reina", "MAEC", "", "", "Casa Real", "Jefe De Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe del Cuarto Militar de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe del Servicio de Seguridad de la Casa de Su Majestad El Rey", "MAEC", "", "", "Altos cargos", "Embajador de España en los Estados Unidos Mexicanos", "MAEC", "", "José Manuel García-Margallo", "Ministros", "Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/123/icon_perfil.jpg", "", "Altos cargos", "Asesor de Prensa del Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "", "", "Altos cargos", "Asesor del Gabinete del Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "", "", "Altos cargos", "Director del Gabinete del Ministro De Asuntos Exteriores Y De Cooperación", "MAEC", "", "", "Altos cargos", "Director General de Relaciones Económicas Internacionales", "MAEC", "", "", "Altos cargos", "Director General para Iberoamérica", "MAEC", "", "", "Altos cargos", "Introductor de Embajadores", "MAEC", "", "", "Altos cargos", "Jefe de Área de Viaje y Visitas Oficiales del Ministerio de Asuntos Exteriores", "MAEC", "", "Jaime García-Legaz", "Altos cargos", "Secretario De Estado De Comercio", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/12360/icon_InteriorGarciaLegazRecurso_MINECO2.jpg", "Carlos Espinosa de los Monteros", "Altos cargos", "Alto Comisionado Del Gobierno para La Marca España", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/6502/icon_Carlos_Espinosa_de_los_Monteros.jpg", "", "Altos cargos", "Director Del Instituto Cervantes", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Bélgica", 2015, "", "Casa Real", "Consejero Diplomático de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Director de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto del Servicio de Seguridad de la Casa de Su Majestad El Rey", "MAEC", "", "Jaime Alfonsín Alfonso", "Casa Real", "Jefe de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe De Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe del Servicio de Seguridad de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Segundo Jefe de Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "José Manuel García-Margallo", "Ministros", "Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/123/icon_perfil.jpg", "", "Altos cargos", "Asesora del Gabinete del Ministro", "MAEC", "", "", "Altos cargos", "Introductor de Embajadores", "MAEC", "", "", "Altos cargos", "Jefe de Área de Protocolo", "MAEC", "", "", "Altos cargos", "Secretario de Estado para la Unión Europea", "MAEC", "", "", "Altos cargos", "Director de Coordinación Políticas Comunes Asuntos Generales", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Francia", 2015, "", "Casa Real", "Director de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto de Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "Jaime Alfonsín Alfonso", "Casa Real", "Jefe de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe de la Secretaría de S.M. El Rey Juan Carlos I", "MAEC", "", "", "Casa Real", "Jefe de la Secretaría de Su Majestad La Reina", "MAEC", "", "", "Casa Real", "Jefe De Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe del Servicio de Seguridad de la Casa de Su Majestad El Rey", "MAEC", "", "", "Altos cargos", "Embajador de España en Francia", "MAEC", "", "José Manuel García-Margallo", "Ministros", "Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/123/icon_perfil.jpg", "", "Altos cargos", "Consejero en el Gabinete del Sr. Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "", "", "Altos cargos", "Director General de Relaciones Económicas Internacionales", "MAEC", "", "", "Altos cargos", "Directora General de Relaciones Bilterales con Países de la UE, Países Candidatos y Países del Espacio Económico Europeo", "MAEC", "", "", "Altos cargos", "Jefe de Protocolo del Ministerio de Asuntos Exteriores y de Cooperación", "MAEC", "", "", "Altos cargos", "Protocolo Ministerio de Asuntos Exteriores y de Cooperación", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Estrasburgo", 2015, "José Manuel García-Margallo", "Ministros", "Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/123/icon_perfil.jpg", "", "Casa Real", "Consejero Diplomático de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Director de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto de Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "Jaime Alfonsín Alfonso", "Casa Real", "Jefe de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe De Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Altos cargos", "Embajador‐Representante Permanente de España ante el Consejo de Europa ", "MAEC", "", "", "Altos cargos", "Embajador‐Representante Permanente de España ante la Unión Europea ", "MAEC", "", "", "Altos cargos", "Introductor de Embajadores", "MAEC", "", "", "Altos cargos", "Jefe de Protocolo del Ministerio de Asuntos Exteriores y de Cooperación", "MAEC", "", "", "Altos cargos", "Consejero de Asuntos Parlamentarios de la Representación Permanente de España ante la Unión Europea", "MAEC", "", "", "Altos cargos", "Director General de Políticas Comunes y Asuntos Generales de la Unión Europea", "MAEC", "", "", "Altos cargos", "Vocal Asesor de la Dirección General de Medios y Diplomacia Pública", "MAEC", "", "", "Altos cargos", "Vocal Asesor del Gabinete del Ministro", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["EEUU", 2015, "José Manuel García-Margallo", "Ministros", "Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/123/icon_perfil.jpg", "", "Casa Real", "Consejero Diplomático de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Director de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto de Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe Adjunto del Servicio de Seguridad de la Casa de Su Majestad El Rey", "MAEC", "", "Jaime Alfonsín Alfonso", "Casa Real", "Jefe de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe de la Secretaría de Su Majestad La Reina", "MAEC", "", "", "Casa Real", "Jefe De Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Altos cargos", "Director del Gabinete del Ministro De Asuntos Exteriores Y De Cooperación", "MAEC", "", "", "Altos cargos", "Director General de Medios y Diplomacia Pública", "MAEC", "", "", "Altos cargos", "Director General para América del Norte, Asia y Pacífico", "MAEC", "", "", "Altos cargos", "Segundo Introductor de Embajadores", "MAEC", "", "Carlos Espinosa de los Monteros", "Altos cargos", "Alto Comisionado Del Gobierno para La Marca España", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/6502/icon_Carlos_Espinosa_de_los_Monteros.jpg", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Portugal", 2014, "", "Casa Real", "Consejero Diplomático de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Director de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "Jaime Alfonsín Alfonso", "Casa Real", "Jefe de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe de la Secretaría de Su Majestad La Reina", "MAEC", "", "", "Casa Real", "Jefe De Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe del Servicio de Seguridad de la Casa de Su Majestad El Rey", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["EEUU", 2014, "Isabel Barreiro", "Familiares", "Esposa del Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/14150/icon_Captura_de_pantalla_2016-05-19_a_las_13.07.31.png", "José Manuel García-Margallo", "Ministros", "Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/123/icon_perfil.jpg", "", "Altos cargos", "Embajadora en Misión Especial para la Alianza de Civilizaciones", "MAEC", "", "", "Altos cargos", "Embajaor en Misión Especial Candidaturas Españolas", "MAEC", "", "", "Altos cargos", "Asesor de Prensa Dirección General de Medios y Diplomacia Pública", "MAEC", "", "", "Altos cargos", "Asesor del Gabinete del Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "", "", "Altos cargos", "Director del Gabinete del Ministro De Asuntos Exteriores Y De Cooperación", "MAEC", "", "", "Altos cargos", "Director General de Magreb, África, Mediterráneo y Oriente Próximo", "MAEC", "", "", "Altos cargos", "Director General de Relaciones Económicas Internacionales", "MAEC", "", "", "Altos cargos", "Director General para Iberoamérica", "MAEC", "", "", "Altos cargos", "Directora de Gabinete Secretario de Estado de Asuntos Exteriores", "MAEC", "", "", "Altos cargos", "Introductor de Embajadores", "MAEC", "", "", "Altos cargos", "Jefe de Área de Viaje y Visitas Oficiales del Ministerio de Asuntos Exteriores", "MAEC", "", "", "Altos cargos", "Secretario de Estado de Asuntos Exteriores", "MAEC", "", "", "Altos cargos", "Secretario General de Cooperación Internacional", "MAEC", "", "", "Altos cargos", "Consejero Técnico Subdirección General de Naciones Unidas", "MAEC", "", "", "Altos cargos", "Director Gabinete Secretaría General Cooperación Internacional para el Desarrollo", "MAEC", "", "", "Altos cargos", "Director General de Política Exterior y Asuntos Multilaterales, Globales y de Seguridad", "MAEC", "", "", "Altos cargos", "Secretario de Estado de Cooperación Internacional y para Iberoamérica", "MAEC", "", "", "Altos cargos", "Subdirector de Naciones Unidas", "MAEC", "", "", "Altos cargos", "Subdirector General Adjunto de la Oficina de Información Diplomática", "MAEC", "", "", "Altos cargos", "Subdirectora General Adjunta de Naciones Unidas", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Emiratos, Omán y Bahrein", 2014, "Ana Pastor", "Ministros", "Ministra de Fomento", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/127/icon_origin_6257019943.jpg", "José Manuel García-Margallo", "Ministros", "Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/123/icon_perfil.jpg", "Pedro Morenés", "Ministros", "Ministro de Defensa", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/125/icon_ministro-Morenes.jpg", "José Manuel Soria", "Ministros", "Ministro de Industria, Energía y Turismo", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/130/icon_perfil.JPG", "Santiago Bergareche", "Empresarios", "Copresidente de Cepsa", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/9058/icon_Santiago_Bergareche.jpg", "Esther Alcocer Koplowitz", "Empresarios", "Presidenta de FCC", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/10028/icon_Esther_Alcocer_Koplowitz__Presidenta_FCC__Foto_Prensa_FCC.jpg", "Florentino Pérez", "Empresarios", "Presidente de ACS", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/6620/icon_origin_9124982862.jpg", "Domingo Ureña", "Empresarios", "Presidente de Airbus", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/11184/icon_EC_Domingo_Ure_a_Raso_225x169.jpg", "José Manuel Rodríguez-Villa", "Empresarios", "Presidente de Alcandara Consultants S.L. ", "MAEC", "", "Jacinto Rey González", "Empresarios", "Presidente de Constructora Sanjosé", "MAEC", "", "Javier Monzón", "Empresarios", "Presidente de INDRA", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/6619/icon_indraJavierMonzo_n.jpg", "Jesús Silva Fernández", "Empresarios", "Presidente de Ineco", "MAEC", "", "José Manuel Revuelta", "Empresarios", "Presidente de Navantia", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/14158/icon_Captura_de_pantalla_2016-06-02_a_las_16.05.43.png", "Jorge Sendagorta", "Empresarios", "Presidente de Sener", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/12960/icon_1.jpg", "José Lladó", "Empresarios", "Presidente de Técnicas Reunidas", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/10152/icon_JoseLlado2.jpg", "Pablo Bueno Sainz", "Empresarios", "Presidente Ejecutivo y Consejero Delegado de Typsa", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/14159/icon_Captura_de_pantalla_2016-06-02_a_las_16.49.24.png", "Enrique Sendagorta", "Empresarios", "Presidente Torresol Energy Invest (Sener)", "MAEC", "", "Manuel Alabart", "Empresarios", "Vicepresidente de Técnicas Reunidas Internacional", "MAEC", "", "José Terceiro", "Empresarios", "Vicepresidente Ejecutivo Abengoa", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/10087/icon_2012-06-22_IMG_2012-06-15_02.05.13__8730524.jpg", "", "Casa Real", "Director de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "Rafael Spottorno", "Casa Real", "Jefe de la Casa de Su Majestad El Rey", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/12971/icon_casa1rey1-a.jpg", "", "Casa Real", "Jefe De Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Segundo Jefe de Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Empresarios", "Consejero Delegado de Cepsa", "MAEC", "", "", "Altos cargos", "Director General de Magreb, África, Mediterráneo y Oriente Próximo", "MAEC", "", "", "Altos cargos", "Director General de Relaciones Económicas Internacionales", "MAEC", "", "", "Altos cargos", "Directora General de la Oficina de Información Diplomática", "MAEC", "", "", "Altos cargos", "Introductor de Embajadores", "MAEC", "", "", "Altos cargos", "Jefe de Área del Introductor de Embajadores", "MAEC", "", "", "Altos cargos", "Jefe de Gabinete del Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "", "", "Altos cargos", "Asesor de Asuntos Internacionales del Ministro de Defensa", "MAEC", "", "", "Altos cargos", "Asesor del Ministro de Defensa", "MAEC", "", "Jaime García-Legaz", "Altos cargos", "Secretario De Estado De Comercio", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/12360/icon_InteriorGarciaLegazRecurso_MINECO2.jpg", "", "Altos cargos", "Directora de Gabinete de la Ministra de Fomento", "MAEC", "", "", "Altos cargos", "Asesor del Ministro de Industria, Energía y Turismo", "MAEC", "", "", "Altos cargos", "Directora del Gabinete del Ministro de Industria, Energía y Turismo", "MAEC", "", "", "Altos cargos", "Secretario de Estado de Infraestructuras, Transporte y Vivienda", "MAEC", "", "", "Altos cargos", "Embajador de España en los Emiratos Árabes Unidos", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Alemania", 2014, "", "Casa Real", "Consejero Diplomático de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Director de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "Rafael Spottorno", "Casa Real", "Jefe de la Casa de Su Majestad El Rey", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/12971/icon_casa1rey1-a.jpg", "", "Casa Real", "Jefe de la Secretaría de Su Majestad La Reina", "MAEC", "", "", "Casa Real", "Jefe De Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe del Servicio de Seguridad de la Casa de Su Majestad El Rey", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Luxemburgo y Bélgica", 2014, "", "Casa Real", "Consejero Diplomático de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Director de Comunicación de la Casa de Su Majestad El Rey", "MAEC", "", "Jaime Alfonsín Alfonso", "Casa Real", "Jefe de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe de la Secretaría de Su Majestad La Reina", "MAEC", "", "", "Casa Real", "Jefe De Protocolo de la Casa de Su Majestad El Rey", "MAEC", "", "", "Casa Real", "Jefe del Servicio de Seguridad de la Casa de Su Majestad El Rey", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["México (Veracruz)", 2014, "José Manuel García-Margallo", "Ministros", "Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/123/icon_perfil.jpg", "", "Altos cargos", "Adjunto de Protocolo", "MAEC", "", "", "Altos cargos", "Asesor del Gabinete del Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "", "", "Altos cargos", "Director del Gabinete del Ministro De Asuntos Exteriores Y De Cooperación", "MAEC", "", "", "Altos cargos", "Director General de Relaciones Económicas Internacionales", "MAEC", "", "", "Altos cargos", "Directora General de la Oficina de Información Diplomática", "MAEC", "", "", "Altos cargos", "Directora General de Medios y Diplomacia Pública", "MAEC", "", "", "Altos cargos", "Introductor de Embajadores", "MAEC", "", "", "Altos cargos", "Adjunto de Protocolo", "MAEC", "", "", "Altos cargos", "Asesor del Gabinete del Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "", "", "Altos cargos", "Director del Gabinete del Ministro De Asuntos Exteriores Y De Cooperación", "MAEC", "", "", "Altos cargos", "Director General de Relaciones Económicas Internacionales", "MAEC", "", "", "Altos cargos", "Directora General de la Oficina de Información Diplomática", "MAEC", "", "", "Altos cargos", "Directora General de Medios y Diplomacia Pública", "MAEC", "", "", "Altos cargos", "Introductor de Embajadores", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], ["Panamá", 2014, "José Manuel García-Margallo", "Ministros", "Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "https://quienmanda.s3.amazonaws.com/uploads/avatar/123/icon_perfil.jpg", "", "Altos cargos", "Embajador en misión Especial para las Cumbres Iberoamericanas", "MAEC", "", "", "Altos cargos", "Asesor del Director General de Medios y Diplomacia Pública", "MAEC", "", "", "Altos cargos", "Director del Gabinete del Ministro De Asuntos Exteriores Y De Cooperación", "MAEC", "", "", "Altos cargos", "Director General de Relaciones Económicas Internacionales", "MAEC", "", "", "Altos cargos", "Director General para Iberoamérica", "MAEC", "", "", "Altos cargos", "Directora General de la Oficina de Información Diplomática", "MAEC", "", "", "Altos cargos", "Directora General de Medios y Diplomacia Pública", "MAEC", "", "", "Altos cargos", "Introductor de Embajadores", "MAEC", "", "", "Altos cargos", "Jefe de Área de Viaje y Visitas Oficiales del Ministerio de Asuntos Exteriores", "MAEC", "", "", "Altos cargos", "Jefe Departamento América Latina en Agencia Española para la Cooperación Internacional", "MAEC", "", "", "Altos cargos", "Secretario General de Cooperación Internacional", "MAEC", "", "", "Altos cargos", "Director Casa América", "MAEC", "", "", "Altos cargos", "Secretario de Estado de Cooperación Internacional y para Iberoamérica", "MAEC", "", "", "Altos cargos", "Asesor del Gabinete del Ministro de Asuntos Exteriores y de Cooperación", "MAEC", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""]];
                  Severity: Major
                  Found in extras/trips/dist/js/qm-trips.js and 23 other locations - About 1 day to fix
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817
                  extras/trips/dist/js/qm-trips.js on lines 9817..9817

                  Duplicated Code

                  Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                  Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                  When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                  Tuning

                  This issue has a mass of 249.

                  We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                  The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                  If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                  See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                  Refactorings

                  Further Reading

                  Function packeryDefinition has 259 lines of code (exceeds 25 allowed). Consider refactoring.
                  Open

                  function packeryDefinition( classie, getSize, Outlayer, Rect, Packer, Item ) {
                  
                  // ----- Rect ----- //
                  
                  // allow for pixel rounding errors IE8-IE11 & Firefox; #227
                  Severity: Major
                  Found in app/assets/javascripts/packery.pkgd.js - About 1 day to fix

                    Similar blocks of code found in 2 locations. Consider refactoring.
                    Open

                      proto.manipulateListeners = function manipulateListeners(remove, evt, listeners) {
                        var i;
                        var value;
                        var single = remove ? this.removeListener : this.addListener;
                        var multiple = remove ? this.removeListeners : this.addListeners;
                    Severity: Major
                    Found in app/assets/javascripts/jquery.imagesloaded.js and 1 other location - About 1 day to fix
                    app/assets/javascripts/packery.pkgd.js on lines 982..1014

                    Duplicated Code

                    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                    Tuning

                    This issue has a mass of 235.

                    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                    Refactorings

                    Further Reading

                    Similar blocks of code found in 2 locations. Consider refactoring.
                    Open

                        proto.manipulateListeners = function manipulateListeners(remove, evt, listeners) {
                            var i;
                            var value;
                            var single = remove ? this.removeListener : this.addListener;
                            var multiple = remove ? this.removeListeners : this.addListeners;
                    Severity: Major
                    Found in app/assets/javascripts/packery.pkgd.js and 1 other location - About 1 day to fix
                    app/assets/javascripts/jquery.imagesloaded.js on lines 265..297

                    Duplicated Code

                    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                    Tuning

                    This issue has a mass of 235.

                    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                    Refactorings

                    Further Reading

                    Function ajax has 249 lines of code (exceeds 25 allowed). Consider refactoring.
                    Open

                        ajax: function( url, options ) {
                    
                            // If url is an object, simulate pre-1.5 signature
                            if ( typeof url === "object" ) {
                                options = url;
                    Severity: Major
                    Found in extras/trips/dist/js/qm-trips.js - About 1 day to fix
                      Severity
                      Category
                      Status
                      Source
                      Language