/* * @file * This javascript is returned and executed when you create a new node. */ $('#new_topic').fadeOut('fast'); $('#topic_name').typeahead('setQuery',''); $('#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'); temp.setData('whiteCircle', false); temp.setData('greenCircle', false); 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'); temp._depth = tempNode._depth + 1; } else if (gType == "arranged" || gType == "chaotic") { temp.setData('xloc',0); temp.setData('yloc',0); <% if not @mapping.nil? %> temp.setData('mappingid', <%= @mapping.id %>); <% elsif @mapping.nil? %> temp.setData('mappingid', null); <% 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'); } if ( '<%= @synapse %>' == "true" ) { $('#synapse_topic1id').val(tempNode.id); $('#synapse_topic2id').val(temp.id); $('#synapse_desc').val(""); $('#new_synapse').fadeIn('fast'); $('#synapse_desc').focus(); Mconsole.fx.animate({ modes: ['node-property:dim'], duration: 500, onComplete: function() { setTimeout(function (){ temp.setData('dim', 25, 'current'); Mconsole.plot(); }, 3000); Mconsole.fx.plotNode(tempNode, Mconsole.canvas); Mconsole.fx.plotNode(temp, Mconsole.canvas); tempNode = null; tempNode2 = null; tempInit = false; } }); } else if ( '<%= @synapse %>' == "false" ) { Mconsole.fx.plotNode(temp, Mconsole.canvas); Mconsole.fx.animate({ modes: ['node-property:dim'], duration: 500, onComplete: function() { setTimeout(function (){ temp.setData('dim', 25, 'current'); Mconsole.plot(); }, 3000); } }); } } else { json = newnode; Mconsole.loadJSON(json); var temp = Mconsole.graph.getNode('<%= @topic.id %>'); temp.setData('dim', 1, 'start'); temp.setData('dim', 25, 'end'); temp.setData('whiteCircle', false); temp.setData('greenCircle', false); if (gType == "arranged" || gType == "chaotic") { <% if not @mapping.nil? %> temp.setData('mappingid', <%= @mapping.id %>); <% elsif @mapping.nil? %> temp.setData('mappingid', null); <% 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, onComplete: function() { setTimeout(function (){ temp.setData('dim', 25, 'current'); Mconsole.plot(); }, 3000); } }); }