metamaps--metamaps/app/views/topics/create.js.erb
2013-01-01 17:45:35 -05:00

83 lines
2.7 KiB
Text

$('#new_topic').fadeOut('fast');
$('#topic_name').data().autocomplete.term = null;
$('.ui-autocomplete').children().remove();
$('.ui-autocomplete').css('display','none');
$('#topic_name').attr('value','');
$('#topic_grabTopic').attr('value','null');
$('#topic_addSynapse').attr('value','false');
var newnode = <%= @topic.self_as_json.html_safe %>;
var x = <%= @position['x'] %>;
var y = <%= @position['y'] %>;
if (!$.isEmptyObject(Mconsole.graph.nodes)) {
Mconsole.graph.addNode(newnode);
// set the animation for everything back to normal
Mconsole.graph.eachNode( function (n) {
n.setData('dim', 25, 'start');
n.setData('dim', 25, 'end');
});
var temp = Mconsole.graph.getNode('<%= @topic.id %>');
temp.setData('dim', 1, 'start');
temp.setData('dim', 40, 'end');
if (gType == "centered") {
var tempPos = new $jit.Complex(x, y);
tempPos = tempPos.toPolar();
temp.setPos(tempPos, 'current');
temp.setPos(tempPos, 'start');
temp.setPos(tempPos, 'end');
}
else if (gType == "arranged" || gType == "chaotic") {
temp.setData('xloc',0);
temp.setData('yloc',0);
temp.setData('mappingid', '<%= @mapping.id %>');
temp.setPos(new $jit.Complex(x, y), 'current');
temp.setPos(new $jit.Complex(x, y), 'start');
temp.setPos(new $jit.Complex(x, y), 'end');
}
if ( '<%= @synapse %>' == "true" ) {
$('#synapse_topic1id').val(tempNode.id);
$('#synapse_topic2id').val(temp.id);
$('#new_synapse').fadeIn('fast');
$('#synapse_desc').focus();
Mconsole.fx.animate({
modes: ['node-property:dim'],
duration: 500,
onComplete: function() {
renderMidArrow({ x: tempNode.pos.getc().x, y: tempNode.pos.getc().y }, { x: temp.pos.getc().x, y: temp.pos.getc().y }, 13, false, Mconsole.canvas);
Mconsole.fx.plotNode(tempNode, Mconsole.canvas);
Mconsole.fx.plotNode(temp, Mconsole.canvas);
tempNode = null;
tempNode2 = null;
tempInit = false;
}
});
} else {
Mconsole.fx.plotNode(temp, Mconsole.canvas);
Mconsole.fx.animate({
modes: ['node-property:dim'],
duration: 500
});
}
} else {
json = newnode;
Mconsole.loadJSON(json);
var temp = Mconsole.graph.getNode('<%= @topic.id %>');
temp.setData('dim', 1, 'start');
temp.setData('dim', 25, 'end');
temp.setPos(new $jit.Complex(x, y), 'current');
temp.setPos(new $jit.Complex(x, y), 'start');
temp.setPos(new $jit.Complex(x, y), 'end');
Mconsole.fx.plotNode(temp, Mconsole.canvas);
Mconsole.fx.animate({
modes: ['node-property:dim'],
duration: 500
});
}