annotate show.html @ 19:3c02336869d4 draft

modified show.html
author Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
date Thu, 21 Mar 2013 20:57:33 +0900
parents cfdce8445a14
children 864c47b06e85
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 #{extends 'main.html' /}
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 #{set title:messages.get('AAEvidenceSiftingModel.userdesktops.show.title') /}
18
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
3
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
4 #{set 'moreStyles'}
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
5 <link rel="stylesheet" href="/aat/public/viewer/css/viewer_form.css">
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
6 #{/set}
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
7 #{set 'moreScripts'}
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
8 <script type="text/javascript" src="@{'/public/viewer/js/lib/jquery-ui-1.8.23-min.js'}" charset="${_response_encoding}"></script>
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
9 <script type="text/javascript" src="@{'/public/viewer/js/lib/jquery.ui.touch-punch.min.js'}" charset="${_response_encoding}"></script>
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
10 <script type="text/javascript" src="@{'/public/viewer/js/lib/jsBezier-0.4-min.js'}" charset="${_response_encoding}"></script>
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
11 <script type="text/javascript" src="@{'/public/viewer/js/1.3.15/jsPlumb-util-1.3.15-RC1.js'}" charset="${_response_encoding}"></script>
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
12 <script type="text/javascript" src="@{'/public/viewer/js/1.3.15/jsPlumb-dom-adapter-1.3.15-RC1.js'}" charset="${_response_encoding}"></script>
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
13 <script type="text/javascript" src="@{'/public/viewer/js/1.3.15/jsPlumb-1.3.15-RC1.js'}" charset="${_response_encoding}"></script>
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
14 <script type="text/javascript" src="@{'/public/viewer/js/1.3.15/jsPlumb-defaults-1.3.15-RC1.js'}" charset="${_response_encoding}"></script>
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
15 <script type="text/javascript" src="@{'/public/viewer/js/1.3.15/jsPlumb-renderers-svg-1.3.15-RC1.js'}" charset="${_response_encoding}"></script>
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
16 <script type="text/javascript" src="@{'/public/viewer/js/1.3.15/jsPlumb-renderers-canvas-1.3.15-RC1.js'}" charset="${_response_encoding}"></script>
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
17 <script type="text/javascript" src="@{'/public/viewer/js/1.3.15/jsPlumb-renderers-vml-1.3.15-RC1.js'}" charset="${_response_encoding}"></script>
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
18 <script type="text/javascript" src="@{'/public/viewer/js/1.3.15/jquery.jsPlumb-1.3.15-RC1.js'}" charset="${_response_encoding}"></script>
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
19 <script type="text/javascript" src="@{'/public/viewer/js/1.3.15/jquery.jsPlumb-1.3.15-all-min.js'}" charset="${_response_encoding}"></script>
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
20 #{/set}
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
21
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
22 <div id="page">
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 <div class="title">
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
24 &{'AAEvidenceSiftingModel.userdesktops.show.title'}&nbsp;[ ${desktop.project.name} ]
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
25 </div>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
26 <ul >
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
27 <li>&gt; <a href="@{AAEvidenceSiftingModel.UserHomes.index()}">&{'navigation.back'}</a></li>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
28 <li>&gt; <a href="@{AAEvidenceSiftingModel.Projects.show(desktop.id)}">&{'AAEvidenceSiftingModel.projects.show.title'}</a></li>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
29 </ul>
18
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
30 <script type="text/javascript">var _desktopid = ${desktop.id};function desktopid(){return _desktopid;}</script>
15
ed6b969b2fc8 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
31 <div id="traverseDisplay" style='position:fixed; width:250px; height:250px; border:solid
ed6b969b2fc8 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
32 1px; border-radius:5px; opacity:1; z-index:10; visibility:visible;'>
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
33 <div style='position:absolute; left:0; top:0; width:100%; height:100%; background:black; opacity:0.7;'></div>
13
37d68fe602c2 add 'px'
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
34 <div id="closeTraverseDisplay" style='position:absolute; right:5px; top:-3px; z-index:10; color:white;' onclick="$('#traverseDisplay').css('visibility','hidden');" onmouseover="$('#closeTraverseDisplay').css('color','yellow');" onmouseout="$('#closeTraverseDisplay').css('color','white')" >CLOSE</div>
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
35 <div style='position:absolute; width:90%; height:90%;'>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
36 <div style='position:absolute; left:5%; top:5%; width:100%; height:100%; background:white;'>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
37 <div id="traverseDisplayTitle" style='position:absolute; left:10px; top:5px; font-size:24px; width:100%; text-align:left;'>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
38 Traverse
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
39 </div>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
40 <div style='position:absolute; top:30px; width:100%; margin-left:10px;'> Direction:
19
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
41 <label style='position:relative;' ><input id="direction_in" type='radio' value='in' name='direction' checked value='in' checked />IN</label>
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
42 <label style='position:relative;'><input id="direction_out" type='radio' value='out' name='direction' value='out'/>OUT</label>
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
43 </form>
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
44 </div>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
45 <div id="traverseDisplayBody" style='position:absolute; left:20px; top:50px;'>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
46 Please click any node.
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
47 </div>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
48 </div>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
49 </div>
17
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
50 <span class='button' style='position:absolute; width:100px; left:75px; bottom:5px; opacity:1;' onclick='traverseAction();'>traverse</span>
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
51 </div>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
52
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
53 <div id="miniDisplay" style='position:fixed; width:250px; height:250px; border:solid 1px; border-radius:5px; opacity:1; z-index:10; visibility:visible;'>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
54 <div style='position:absolute; left:0; top:0; width:100%; height:100%; background:black; opacity:0.5;'></div>
13
37d68fe602c2 add 'px'
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
55 <div id="closeMiniDisplay" style='position:absolute; right:5px; top:-3px; z-index:10; color:white;' onclick="$('#miniDisplay').css('visibility','hidden');" onmouseover="$('#closeMiniDisplay').css('color','yellow');" onmouseout="$('#closeMiniDisplay').css('color','white')" >CLOSE</div>
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
56 <div style='position:absolute; width:90%; height:90%;'>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
57 <div style='position:absolute; left:5%; top:5%; width:100%; height:100%; background:white;'>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
58 <div id="miniDisplayTitle" style='position:absolute; left:10px; top:5px; font-size:24px; width:100%; text-align:left;'>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
59 </div>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
60 <div id="miniDisplayBody" style='position:absolute; left:20px; top:40px;'>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
61 Please click any node.
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
62 </div>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
63 </div>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
64 </div>
14
6b91db54a9f3 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 13
diff changeset
65 <nobr style='position:absolute; width:100%; bottom:5px;'>
17
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
66 <span class='button' id="acceptButton" style='position:absolute; width:50px; left:5px; bottom:5px; opacity:1;' value='accept' onclick="statePost($('#acceptButton'));">accept</span>
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
67 <span class='button' id="rejectButton" style='position:absolute; width:50px; left:65px; bottom:5px; opacity:1; ' value='rejecte' onclick="statePost($('#rejectButton'));">reject</span>
18
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
68 <span class='button' id="retractButton" style='position:absolute; width:50px; left:125px; bottom:5px; opacity:1; ' value='retract' onclick="statePost($('#retractButton'));">retract</span>
14
6b91db54a9f3 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 13
diff changeset
69 </nobr>
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
70 </div>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
71
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
72 <div class="graphMainCss" style="position:absolute; left:0; bottom:0; width:100%; height:75%;" id='graphMain'>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
73 <div style="position:absolute; width:0; height:0;left:0;" id='graphRoot'>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
74 </div>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
75 </div>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
76
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
77 <script type="text/javascript">
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
78 var BASE_URL = "";
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
79 if(!Array.prototype.filter){
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
80 Array.prototype.filter=function(func){
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
81 var arr=[];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
82 for(var i=0;i<this.length;i++)if(func(this[i]))arr.push(this[i]);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
83 return arr;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
84 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
85 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
86
16
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
87 var arrowConnector = {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
88 connector:"StateMachine",
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
89 // paintStyle:{lineWidth:3,strokeStyle:"#056"},
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
90 paintStyle:{lineWidth:2,strokeStyle:"#aaf"},
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
91 hoverPaintStyle:{strokeStyle:"#dbe300"},
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
92 endpoint:"Blank",
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
93 anchor:"Continuous",
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
94 overlays:[ ["PlainArrow", {location:1, width:20, length:12} ]]
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
95 };
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
96
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
97 var arrowBothConnector = {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
98 connector:"StateMachine",
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
99 paintStyle:{lineWidth:2,strokeStyle:"#aaf"},
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
100 hoverPaintStyle:{strokeStyle:"#dbe300"},
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
101 endpoint:"Blank",
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
102 };
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
103
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
104 function GraphData() {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
105 var graphData = {};
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
106 graphData.nodes = {};
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
107 graphData.edges = {};
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
108 return graphData;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
109 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
110
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
111 function Edge(fromNode, toNode, relation) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
112 var obj = {from:fromNode, to:toNode, rel:relation };
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
113 return obj;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
114 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
115
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
116 var DragHandler = {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
117 _oElem : null,
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
118 _id : null,
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
119 attach : function(oElem) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
120 oElem.onmousedown = DragHandler._dragBegin;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
121 return oElem;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
122 },
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
123 _dragBegin : function(e) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
124 var oElem = DragHandler._oElem = this;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
125 if (isNaN(parseInt(oElem.style.left))) { oElem.style.left = '0px'; }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
126 if (isNaN(parseInt(oElem.style.top))) { oElem.style.top = '0px'; }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
127 var x = parseInt(oElem.style.left);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
128 var y = parseInt(oElem.style.top);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
129 e = e ? e : window.event;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
130 oElem.mouseX = e.clientX;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
131 oElem.mouseY = e.clientY;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
132 document.onmousemove = DragHandler._drag;
15
ed6b969b2fc8 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
133 document.onmouseup = DragHandler._dragEnd;
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
134 return false;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
135 },
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
136 _drag : function(e) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
137 var oElem = DragHandler._oElem;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
138 var x = parseInt(oElem.style.left);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
139 var y = parseInt(oElem.style.top);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
140 e = e ? e : window.event;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
141 var nextX = x + (e.clientX - oElem.mouseX);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
142 var nextY = y + (e.clientY - oElem.mouseY);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
143 oElem.style.left = nextX + 'px';
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
144 oElem.style.top = nextY + 'px';
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
145 oElem.mouseX = e.clientX;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
146 oElem.mouseY = e.clientY;
15
ed6b969b2fc8 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
147 if (oElem.nodeId) {
ed6b969b2fc8 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
148 var id = oElem.nodeId;
ed6b969b2fc8 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
149 var node = GRAPH_DATA.nodes[id];
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
150 node.position.x = nextX;
15
ed6b969b2fc8 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
151 node.position.y = nextY;
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
152 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
153 return false;
18
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
154 },
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
155 _dragEnd : function() {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
156 var oElem = DragHandler._oElem;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
157 document.onmousemove = null;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
158 document.onmouseup = null;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
159 DragHandler._oElem = null;
17
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
160 if (oElem.nodeId) {
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
161 var x = parseInt(oElem.style.left);
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
162 var y = parseInt(oElem.style.top);
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
163 nodePositionPost(oElem.nodeId, x, y);
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
164 }
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
165 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
166
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
167 };
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
168
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
169 function writeMiniDisplay(title,str) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
170 $('#miniDisplayBody')[0].innerHTML = str;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
171 if(title) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
172 $('#miniDisplayTitle')[0].innerHTML = title;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
173 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
174 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
175
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
176 function writeJSONDataToMiniDisplay(jsonObj) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
177 var str = "";
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
178 for (var key in jsonObj.property) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
179 if (key != 'edgeInfo' ) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
180 str = str + key + ": "+ jsonObj.property[key] + "<br>";
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
181 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
182 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
183 writeMiniDisplay(jsonObj.property.title, str);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
184 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
185
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
186 function getTraverseDivTemplate(kind, inNum, outNum) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
187 return "<div><label id='traverseLabel'><input type='checkbox' checked value='"+kind+"'/>"+kind+"</label><br>in:"+inNum+" out:"+outNum+"</div>";
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
188 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
189
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
190 function createTraverseView(info) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
191 var viewHtml = "";
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
192 for (var kind in info) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
193 var data = info[kind];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
194 var inNum = 0;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
195 var outNum = 0;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
196 if (data['in']) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
197 inNum = data['in'];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
198 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
199 if (data['out']) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
200 outNum = data['out'];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
201 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
202 viewHtml = viewHtml + getTraverseDivTemplate(kind, inNum, outNum);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
203 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
204 return viewHtml;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
205 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
206
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
207 function createEdgeInfoView(node) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
208 var id = node.property.id;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
209 var edgeInfo = node.property.edgeInfo;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
210 var str = "";
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
211 var info = {};
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
212 for (var i=0; i<edgeInfo.length; i++) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
213 var kind = edgeInfo[i].kind;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
214 var dir = edgeInfo[i].direction;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
215 var num = edgeInfo[i].num;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
216 info[kind] = {};
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
217 info[kind][dir] = num;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
218 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
219 var viewHTML = createTraverseView(info);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
220 edgeInfo.viewHtml = viewHTML;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
221 $('#traverseDisplayBody')[0].innerHTML = viewHTML;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
222 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
223
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
224 function init() {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
225 jsPlumb.importDefaults({
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
226 Connector : [ "Straight", { curviness:50 } ],
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
227 PaintStyle : { strokeStyle:"gray", lineWidth:2 },
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
228 EndpointStyle : {},
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
229 Anchors: ["BottomCenter","TopCenter"],
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
230 });
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
231 var rootDiv = $('#graphMain');
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
232 var rootLeft = rootDiv.offset().left;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
233 var rootTop = rootDiv.offset().top;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
234 $('#traverseDisplay').css( {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
235 left: rootLeft,
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
236 top: rootTop
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
237 });
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
238 var heightStr = $('#traverseDisplay').css('height').split('px')[0];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
239 var height = parseInt(heightStr);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
240 $('#miniDisplay').css( {
16
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
241 left: rootLeft + 'px',
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
242 top: rootTop + height + 50 + 'px'
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
243 });
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
244 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
245
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
246 function showMiniDisplay(node) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
247 $("#miniDisplay").css("visibility", "visible");
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
248 writeJSONDataToMiniDisplay(node);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
249 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
250
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
251 function showTraverseDisplay(node) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
252 this.id = node.property.id;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
253 if (!node.property.edgeInfo) { console.log("not found node.edgeInfo "); return; }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
254 if (!node.property.edgeInfo.viewHtml) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
255 createEdgeInfoView(node);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
256 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
257 $('#traverseDisplayBody')[0].innerHTML = node.property.edgeInfo.viewHtml;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
258 $("#traverseDisplay").css("visibility", "visible");
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
259 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
260
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
261 var nodeNum = 0;
16
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
262 var OFFSET = 300;
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
263 var miniD = $('#miniDisplay')[0].style;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
264 var offsetLeft = parseInt(miniD.width.split('px')[0]);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
265 var offsetTop = parseInt(miniD.height.split('px')[0]);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
266 function calcNewNodePosition() {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
267 var position = {};
16
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
268 position = {x: offsetLeft+OFFSET, y: nodeNum*OFFSET + offsetTop / 3};
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
269 nodeNum++;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
270 return position;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
271 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
272
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
273 /*
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
274 *
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
275 */
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
276 function clickNodeDiv(id) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
277 var graphData = GRAPH_DATA;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
278 var node = graphData.nodes[id];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
279 var rels = {evidence:1,
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
280 dependency:1,
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
281 derived:1,
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
282 version:1,
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
283 agreement:1};
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
284 showRelationNodes(graphData, node, rels);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
285 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
286
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
287 function addEdgeInfo(id, kind, direction) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
288 var nodes = GRAPH_DATA.nodes;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
289 var edges = GRAPH_DATA.edges;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
290
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
291 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
292
12
549962a324ac modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 11
diff changeset
293 function showEdgesAndNodes(graphData,jsonData,kind) {
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
294 var nodes = graphData.nodes;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
295 var jsonNodes = jsonData.nodes;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
296 for (var i=0; i<jsonNodes.length; i++) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
297 var id = jsonNodes[i].id;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
298 updateNode(nodes[id]);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
299 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
300 var edges = graphData.edges;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
301 var jsonEdges = jsonData.edges;
12
549962a324ac modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 11
diff changeset
302 for (var i=0; i<jsonEdges.length; i++) {
549962a324ac modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 11
diff changeset
303 var edge = edges[jsonEdges[i].id];
549962a324ac modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 11
diff changeset
304 edge.property.kind = kind;
549962a324ac modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 11
diff changeset
305 showEdge(graphData, edge);
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
306 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
307 showAllEdge(graphData);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
308 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
309
18
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
310 function getEvidence(id, kind, direction, edgeInfoId) {
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
311 $.ajax({
19
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
312 url:"/aat/aaevidencesiftingmodel.userdesktops/get?desktopid="+desktopid() + "&id="+id+"&kind="+kind+"&direction="+direction+"&edgeinfoid="+edgeInfoId,
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
313 success:function(o) { console.log(this.url); parseJSONGraphData(GRAPH_DATA, o); recursiveCalcPosition(GRAPH_DATA, GRAPH_DATA.nodes[id]); showEdgesAndNodes(GRAPH_DATA, o, kind);},
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
314 type:"GET", cache:true,
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
315 error:function(o) { console.log("getEvidence error : ", o); }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
316 });
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
317 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
318
17
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
319 function postToServer(parameter) {
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
320 $.ajax({
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
321 url:"/aat/aaevidencesiftingmodel.userdesktops/update?"+parameter,
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
322 success:function(o) {console.log("success postToServer URL:"+this.url); },
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
323 type:"POST", cache:true,
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
324 error:function(o) { console.log("post error : ", o); }
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
325 });
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
326 }
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
327
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
328 function statePost(buttonEle) {
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
329 var id = this.id;
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
330 var state = buttonEle.html();
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
331 postToServer("id="+id+"&state="+state);
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
332 }
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
333
18
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
334 function nodePositionPost(id, coordX, coordY) {
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
335 postToServer("id="+id+"&coordX="+coordX+"&coordY="+coordY);
17
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
336 }
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
337
02b5c7fe5d08 implemented post function for state change and node position
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 16
diff changeset
338 function traverseAction() {
19
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
339 var inDirChecked = $('#direction_in').is(':checked');
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
340 var outDirChecked = $('#direction_out').is(':checked');
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
341 var labelTags = $('[id=traverseLabel]');
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
342 var kinds = [];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
343 for (var i=0;i<labelTags.length; i++ ) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
344 var inputTag = labelTags[i].children[0];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
345 if (inputTag.checked) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
346 kinds.push(inputTag.value);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
347 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
348 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
349 var id = this.id;
18
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
350 var edgeInfoArray = GRAPH_DATA.nodes[id].property.edgeInfo;
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
351 var edgeInfos = {};
19
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
352 for (var i=0; i<edgeInfoArray.length; i++) {
18
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
353 var edgeInfo = edgeInfoArray[i];
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
354 var kind = edgeInfo.kind;
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
355 edgeInfos[kind] = {};
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
356 edgeInfos[kind][edgeInfo.direction] = edgeInfo;
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
357 }
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
358 for (var i=0; i<kinds.length; i++) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
359 var kind = kinds[i];
18
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
360 var edgeInfo = edgeInfos[kind];
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
361 if (inDirChecked && edgeInfo.in) getEvidence(id, kind, "in", edgeInfo.in.id);
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
362 if (outDirChecked && edgeInfo.out ) getEvidence(id, kind, "out", edgeInfo.out.id);
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
363 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
364 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
365
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
366 function createNodeDiv(node) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
367 node.view = $("<div class='graphNode'/>");
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
368 node.view.click(function(){ clickNodeDiv(node.property.id) });
19
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
369 if(!node.position) {
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
370 node.position = calcNewNodePosition();
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
371 }
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
372 node.view.hover();
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
373 var div = $("<div class='graphNodeContent' />")[0];
15
ed6b969b2fc8 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
374 div.id = node.property.id;
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
375 div.innerHTML = node.property.title;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
376 node.view[0].appendChild(div);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
377 return node;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
378 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
379
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
380 function updateNodeElement(node) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
381 var created = false;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
382 if(!node.view) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
383 created = true;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
384 createNodeDiv(node);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
385 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
386 var div = node.view;
15
ed6b969b2fc8 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
387 node.view[0].nodeId = node.property.id;
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
388 // div.text(node.property.title);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
389 div.click(function(){showMiniDisplay(node); showTraverseDisplay(node);});
15
ed6b969b2fc8 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
390 DragHandler.attach($(node.view)[0]);
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
391 var kindBackground = {agree:"#aaf", rejected:"#fff"};
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
392 var kindBorder = {agree:"#66a", rejected:"#a66"};
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
393 div.css("background", kindBackground[node.kind]||"white");
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
394 div.css("border-color", kindBorder[node.kind] ||"#58f");
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
395 div.css({
19
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
396 left: node.position.x + 'px',
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
397 top: node.position.y + 'px'
15
ed6b969b2fc8 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 14
diff changeset
398 });
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
399 return created;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
400 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
401
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
402
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
403 function updateNode(node) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
404 if(updateNodeElement(node)) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
405 var fc = $('#graphRoot')[0].firstChild;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
406 if(fc) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
407 $('#graphRoot')[0].insertBefore(node.view[0], fc);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
408 } else {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
409 $('#graphRoot').append(node.view);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
410 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
411 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
412 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
413
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
414 var ViewParam = {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
415 offsetTop:100,
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
416 offsetBottom:100,
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
417 offsetLeft:100,
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
418 offsetRight:100,
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
419 nodeWidth:120,
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
420 nodeHeight:60,
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
421 intervalX:140,
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
422 intervalY:120
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
423 };
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
424
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
425 function parseJSONGraphData(memory ,jsonObj) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
426 var nodes = jsonObj.nodes;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
427 for (var i=0; i<nodes.length; i++) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
428 var node = nodes[i];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
429 if (memory.nodes[node.id]) continue;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
430 memory.nodes[node.id] = {};
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
431 memory.nodes[node.id].in = [];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
432 memory.nodes[node.id].out = [];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
433 memory.nodes[node.id].both = [];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
434 memory.nodes[node.id].property = node;
19
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
435 if (node.coordX) {
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
436 memory.nodes[node.id].position = {};
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
437 memory.nodes[node.id].position.x = node.coordX;
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
438 memory.nodes[node.id].position.y = node.coordY;
3c02336869d4 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 18
diff changeset
439 }
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
440 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
441 if (!jsonObj.edges) return memory;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
442 var edges = jsonObj.edges;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
443 for (var i=0; i<edges.length; i++) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
444 var edge = edges[i];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
445 var edgeId = edge.id;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
446 if (memory.edges[edgeId]) continue;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
447 memory.edges[edgeId] = {};
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
448 memory.edges[edgeId].property = edge;
12
549962a324ac modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 11
diff changeset
449 memory.edges[edgeId].visible = false;
16
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
450 memory.nodes[edge.from].out.push(edgeId);
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
451 memory.nodes[edge.to].in.push(edgeId);
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
452 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
453 return memory;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
454 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
455
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
456 function showEdge(graphData, edge) {
16
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
457 function connectEdge(fromNode, toNode, kind) {
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
458 var c;
16
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
459 c = jsPlumb.connect({source:fromNode.view[0], target:toNode.view[0]}, arrowConnector);
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
460 // jsPlumb.select({source:fromNode.view[0]}).removeAllOverlays();
12
549962a324ac modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 11
diff changeset
461 c.setLabel({label:"<span style='color:#129; font-size:1.5em;'>"+kind+"</span>",cssStyle:""});
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
462 return c;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
463 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
464 if (edge.visible) return;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
465 var fromNode = graphData.nodes[edge.property.from];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
466 var toNode = graphData.nodes[edge.property.to];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
467 if (!fromNode.view && !toNode.view) return;
12
549962a324ac modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 11
diff changeset
468 var kind = edge.property.kind;
16
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
469 connectEdge(fromNode, toNode, kind);
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
470 edge.visible = true;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
471 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
472
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
473 function createNodeFromEdge(graphData, edge, baseNode) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
474 if(edge.visible) return;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
475 var fromNode = graphData.nodes[edge.property.from];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
476 if (!fromNode.view) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
477 updateNode(fromNode);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
478 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
479 var toNode = graphData.nodes[edge.property.to];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
480 if (!toNode.view) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
481 updateNode(toNode);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
482 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
483 showEdge(graphData, edge);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
484 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
485
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
486 function getRelationEdgeIds(node) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
487 var edgeIds = [];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
488 for (var i=0; i<node.in.length; i++) edgeIds.push(node.in[i]);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
489 for (var i=0; i<node.out.length; i++) edgeIds.push(node.out[i]);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
490 for (var i=0; i<node.both.length; i++) edgeIds.push(node.both[i]);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
491 return edgeIds;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
492 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
493
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
494 function getRelationNodeIds(graphData, node) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
495 var nodes = graphData.nodes;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
496 var edges = graphData.edges;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
497 var nodeIds = [];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
498 for (var i=0; i<node.in.length; i++) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
499 var edgeId = node.in[i];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
500 nodeIds.push(edges[edgeId].property.from);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
501 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
502 for (var i=0; i<node.out.length; i++) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
503 var edgeId = node.out[i];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
504 nodeIds.push(edges[edgeId].property.to);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
505 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
506 for (var i=0; i<node.both.length; i++) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
507 var edgeId = node.both[i];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
508 var fromId = edges[edgeId].property.from;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
509 var toId = edges[edgeId].property.to;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
510 if (fromId == node.property.id) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
511 nodeIds.push(toId);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
512 } else {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
513 nodeIds.push(fromId);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
514 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
515 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
516 return nodeIds;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
517 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
518
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
519 /*
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
520 * This function output all NODE that are related [node]
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
521 */
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
522 function updateRelationNodes(graphData, node) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
523 var id = node.property.id;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
524 var edges = graphData.edges;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
525 var edgeIds = getRelationEdgeIds(node);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
526 for (var i=0; i<edgeIds.length; i++ ) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
527 createNodeFromEdge(graphData, edges[edgeIds[i]]);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
528 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
529 jsPlumb.removeAllEndpoints();
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
530 jsPlumb.draggable($('.graphNode'));
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
531 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
532
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
533 /*
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
534 * rels = {dependency:1, evidence:1};
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
535 * showRelationNodes(graphData, node, rels);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
536 */
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
537 function showRelationNodes(graphData, node, rels) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
538 var id = node.property.id;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
539 var edges = graphData.edges;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
540 var edgeIds = getRelationEdgeIds(node);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
541 for (var i=0; i<edgeIds.length; i++) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
542 var edge = edges[edgeIds[i]];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
543 if (rels[edge.property.rel]) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
544 createNodeFromEdge(graphData, edges[edgeIds[i]]);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
545 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
546 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
547 jsPlumb.removeAllEndpoints();
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
548 jsPlumb.draggable($('.graphNode'));
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
549 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
550
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
551 var BASE_THETA = -30;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
552 var BASE_ANGLE = 180;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
553 var BASE_DISTANCE = 180;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
554 function calcChildNodePosition(parent, num) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
555 var pX = parent.position.x;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
556 var pY = parent.position.y;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
557 var deg = BASE_ANGLE - num * BASE_THETA;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
558 var theta = deg * (Math.PI / 180);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
559 var cX = pX - (BASE_DISTANCE * Math.cos(theta));
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
560 var cY = pY - (BASE_DISTANCE * Math.sin(theta));
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
561 return {x:cX, y:cY};
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
562 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
563
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
564 function showAllEdge(graphData) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
565 var edges = graphData.edges;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
566 for (var id in edges) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
567 showEdge(graphData, edges[id]);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
568 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
569 jsPlumb.removeAllEndpoints();
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
570 jsPlumb.draggable($('.graphNode'));
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
571 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
572
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
573 var EDGE_LIST = {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
574 evidence:'evidence',
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
575 dependency:'dependency',
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
576 version:'version',
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
577 derived:'derived',
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
578 agreement:'agreement'
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
579 };
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
580
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
581 function recursiveCalcPosition(graphData, parentNode) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
582 if (!parentNode.position) updateNode(parentNode);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
583 childNodeIds = getRelationNodeIds(graphData, parentNode);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
584 /* calcration of childNode position */
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
585 var numCalcChild = 0;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
586 var childArray = {};
16
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
587 for (var i=0; i<childNodeIds.length; i++) {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
588 var id = childNodeIds[i];
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
589 var childNode = graphData.nodes[id];
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
590 if (childNode.position) {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
591 numCalcChild++;
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
592 }
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
593 }
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
594 for (var i=0; i<childNodeIds.length; i++) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
595 var id = childNodeIds[i];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
596 var childNode = graphData.nodes[id];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
597 childArray[id] = childNode;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
598 if (!childNode.position) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
599 childNode.position = calcChildNodePosition(parentNode, numCalcChild);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
600 numCalcChild++;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
601 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
602 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
603 /* calcration of grandchildNode position */
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
604 for (var id in childArray) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
605 var childNode = childArray[id];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
606 var grandChildIds = getRelationNodeIds(graphData, childNode);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
607 for (var i=0; i<grandChildIds.length; i++) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
608 var gId = grandChildIds[i];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
609 var grandChild = graphData.nodes[gId];
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
610 if (!grandChild.position) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
611 recursiveCalcPosition(graphData, childNode);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
612 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
613 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
614 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
615 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
616
16
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
617 function createNodeElement(node) {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
618 var created = false;
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
619 if(!node.view) {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
620 created = true;
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
621 createNodeDiv(node);
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
622 }
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
623 var div = node.view;
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
624 node.view[0].nodeId = node.property.id;
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
625 // div.text(node.property.title);
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
626 div.click(function(){showMiniDisplay(node); showTraverseDisplay(node);});
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
627 DragHandler.attach($(node.view)[0]);
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
628 var kindBackground = {agree:"#aaf", rejected:"#fff"};
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
629 var kindBorder = {agree:"#66a", rejected:"#a66"};
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
630 div.css("background", kindBackground[node.kind]||"white");
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
631 div.css("border-color", kindBorder[node.kind] ||"#58f");
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
632 div.css({
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
633 left: node.position.x,
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
634 top: node.position.y
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
635 });
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
636 return created;
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
637 }
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
638
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
639
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
640 function showNode(node) {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
641 if(createNodeElement(node)) {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
642 var fc = $('#graphRoot')[0].firstChild;
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
643 if(fc) {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
644 $('#graphRoot')[0].insertBefore(node.view[0], fc);
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
645 } else {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
646 $('#graphRoot').append(node.view);
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
647 }
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
648 }
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
649 }
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
650
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
651 var GRAPH_DATA = new GraphData();
18
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
652
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
653 function startUserDesktopUI() {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
654 function showFirstEvidenceList(graphData) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
655 var nodes = graphData.nodes;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
656 for (var id in nodes) {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
657 updateNode(nodes[id]);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
658 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
659 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
660 var gData = GRAPH_DATA;
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
661 showFirstEvidenceList(gData);
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
662 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
663
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
664 function start() {
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
665 init();
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
666 $.ajax({
18
cfdce8445a14 modified show.html for post edgeInfoId
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 17
diff changeset
667 url:"/aat/aaevidencesiftingmodel.userdesktops/get?desktopid="+desktopid(),
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
668 success:function(o) { parseJSONGraphData(GRAPH_DATA, o); startUserDesktopUI();},
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
669 type:"GET", cache:false,
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
670 error:function(o) { console.log("first get error : ",o); }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
671 });
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
672 }
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
673
16
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
674 function addLoadEvent(func) {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
675 var oldonload = window.onload;
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
676 if (typeof window.onload != 'function') {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
677 window.onload = func;
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
678 } else {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
679 window.onload = function() {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
680 if (oldonload) {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
681 oldonload();
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
682 }
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
683 func();
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
684 }
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
685 }
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
686 }
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
687
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
688 addLoadEvent(function() {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
689 beginScript();
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
690 });
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
691
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
692 function beginScript() {
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
693 DragHandler.attach($('#miniDisplay')[0]);
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
694 DragHandler.attach($('#traverseDisplay')[0]);
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
695 start();
16
1af36503e849 modified show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 15
diff changeset
696 }
11
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
697
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
698 </script>
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
699
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
700
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
701
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
702
8c4171f77fcc add show.html
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
703