diff --git a/app/assets/javascripts/lib/cloudcarousel.js b/app/assets/javascripts/lib/cloudcarousel.js
index 31a9aa7a..db7633c7 100644
--- a/app/assets/javascripts/lib/cloudcarousel.js
+++ b/app/assets/javascripts/lib/cloudcarousel.js
@@ -208,7 +208,7 @@ jQuery.browser = browser;
{
$(options.titleBox).html( ($(event.target).attr('title') ));
// METAMAPS CODE
- Metamaps.Create.newTopic.metacode = $(event.target).attr('title');
+ Metamaps.Create.newTopic.metacode = $(event.target).attr('data-id');
// NOT METAMAPS CODE
var idx = $(event.target).data('itemIndex');
var frontIndex = event.data.frontIndex;
@@ -246,7 +246,7 @@ jQuery.browser = browser;
{
if ( items[this.frontIndex] === undefined ) { return; } // Images might not have loaded yet.
// METAMAPS CODE
- Metamaps.Create.newTopic.metacode = $(items[this.frontIndex].image).attr('title');
+ Metamaps.Create.newTopic.metacode = $(items[this.frontIndex].image).attr('data-id');
//$('img.cloudcarousel').css({"background":"none", "width":"","height":""});
//$(items[this.frontIndex].image).css({"width":"45px","height":"45px"});
// NOT METAMAPS CODE
diff --git a/app/assets/javascripts/src/Metamaps.js b/app/assets/javascripts/src/Metamaps.js
index 5c4bd5da..88059d31 100644
--- a/app/assets/javascripts/src/Metamaps.js
+++ b/app/assets/javascripts/src/Metamaps.js
@@ -410,37 +410,39 @@ Metamaps.Create = {
return false;
}
- var codesToSwitchTo;
+ var codesToSwitchToIds;
+ var metacodeModels = new Metamaps.Backbone.MetacodeCollection();
Metamaps.Create.selectedMetacodeSetIndex = index;
Metamaps.Create.selectedMetacodeSet = "metacodeset-" + set;
if (!custom) {
- codesToSwitchTo = $('#metacodeSwitchTabs' + set).attr('data-metacodes').split(',');
+ codesToSwitchToIds = $('#metacodeSwitchTabs' + set).attr('data-metacodes').split(',');
$('.customMetacodeList li').addClass('toggledOff');
Metamaps.Create.selectedMetacodes = [];
Metamaps.Create.selectedMetacodeNames = [];
Metamaps.Create.newSelectedMetacodes = [];
Metamaps.Create.newSelectedMetacodeNames = [];
}
- if (custom) {
+ else if (custom) {
// uses .slice to avoid setting the two arrays to the same actual array
Metamaps.Create.selectedMetacodes = Metamaps.Create.newSelectedMetacodes.slice(0);
Metamaps.Create.selectedMetacodeNames = Metamaps.Create.newSelectedMetacodeNames.slice(0);
- codesToSwitchTo = Metamaps.Create.selectedMetacodeNames.slice(0);
+ codesToSwitchToIds = Metamaps.Create.selectedMetacodes.slice(0);
}
// sort by name
- codesToSwitchTo.sort();
- codesToSwitchTo.reverse();
+ for (var i = 0; i < codesToSwitchToIds.length; i++) {
+ metacodeModels.add( Metamaps.Metacodes.get(codesToSwitchToIds[i]) );
+ };
+ metacodeModels.sort();
$('#metacodeImg, #metacodeImgTitle').empty();
$('#metacodeImg').removeData('cloudcarousel');
var newMetacodes = "";
- var metacode;
- for (var i = 0; i < codesToSwitchTo.length; i++) {
- metacode = Metamaps.Metacodes.findWhere({ name: codesToSwitchTo[i] });
- newMetacodes += '';
- };
+ metacodeModels.each(function(metacode){
+ newMetacodes += '
';
+ });
+
$('#metacodeImg').empty().append(newMetacodes).CloudCarousel({
titleBox: $('#metacodeImgTitle'),
yRadius: 40,
@@ -772,13 +774,11 @@ Metamaps.TopicCard = {
var metacodeLiClick = function () {
selectingMetacode = false;
- var metacodeName = $(this).find('.mSelectName').text();
- var metacode = Metamaps.Metacodes.findWhere({
- name: metacodeName
- });
- $('.CardOnGraph').find('.metacodeTitle').html(metacodeName)
+ var metacodeId = parseInt($(this).attr('data-id'));
+ var metacode = Metamaps.Metacodes.get(metacodeId);
+ $('.CardOnGraph').find('.metacodeTitle').html(metacode.get('name'))
.append('