various corrections on save view and about text
authorymh <ymh.work@gmail.com>
Mon, 30 Mar 2015 11:35:57 +0200
changeset 590 117f1a721342
parent 589 2800849af353
child 591 c4052eb9d2b8
various corrections on save view and about text
src/hdalab/static/hdalab/css/common.css
src/hdalab/static/hdalab/js/renkan-manual-save.js
src/hdalab/templates/a_propos.html
src/hdalab/templates/renkan_edit.html
src/hdalab/templates/renkan_view.html
src/hdalab/templates/renkan_view_full.html
--- a/src/hdalab/static/hdalab/css/common.css	Sat Mar 28 04:43:10 2015 +0100
+++ b/src/hdalab/static/hdalab/css/common.css	Mon Mar 30 11:35:57 2015 +0200
@@ -4,26 +4,14 @@
 /**
  * Correct `block` display not defined in IE 8/9.
  */
-article,
-aside,
-details,
-figcaption,
-figure,
-footer,
-header,
-hgroup,
-main,
-nav,
-section,
-summary {
+article, aside, details, figcaption, figure, footer, header, hgroup,
+  main, nav, section, summary {
   display: block;
 }
 /**
  * Correct `inline-block` display not defined in IE 8/9.
  */
-audio,
-canvas,
-video {
+audio, canvas, video {
   display: inline-block;
 }
 /**
@@ -44,11 +32,9 @@
 html {
   font-family: sans-serif;
   /* 1 */
-
   -webkit-text-size-adjust: 100%;
   -ms-text-size-adjust: 100%;
   /* 2 */
-
 }
 /**
  * Remove default margin.
@@ -56,6 +42,7 @@
 body {
   margin: 0;
 }
+
 #content {
   margin: 30px auto 30px;
 }
@@ -71,8 +58,7 @@
 /**
  * Improve readability when focused and also mouse hovered in all browsers.
  */
-a:active,
-a:hover {
+a:active, a:hover {
   outline: 0;
 }
 /* ==========================================================================
@@ -91,8 +77,7 @@
 /**
  * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
  */
-b,
-strong {
+b, strong {
   font-weight: bold;
 }
 /**
@@ -119,10 +104,7 @@
 /**
  * Correct font family set oddly in Safari 5 and Chrome.
  */
-code,
-kbd,
-pre,
-samp {
+code, kbd, pre, samp {
   font-family: monospace, serif;
   font-size: 1em;
 }
@@ -147,16 +129,17 @@
 /**
  * Prevent `sub` and `sup` affecting `line-height` in all browsers.
  */
-sub,
-sup {
+sub, sup {
   font-size: 75%;
   line-height: 0;
   position: relative;
   vertical-align: baseline;
 }
+
 sup {
   top: -0.5em;
 }
+
 sub {
   bottom: -0.25em;
 }
@@ -196,6 +179,7 @@
 html {
   font-size: 62.5%;
 }
+
 body {
   color: #28292d;
   font-family: 'FranklinGothic', Arial, Helvetica, sans-serif;
@@ -203,22 +187,19 @@
 }
 /* GLOBAL
 ----------------------------------------------------------*/
-h1,
-h2,
-h3,
-h4,
-h5,
-p {
+h1, h2, h3, h4, h5, p {
   margin: 0;
 }
-ul,
-ol {
+
+ul, ol {
   margin: 0;
   padding: 0;
 }
+
 ul li {
   list-style: none;
 }
+
 a {
   color: #7cb0bd;
   text-decoration: none;
@@ -227,6 +208,7 @@
   -o-transition: background-color 0.3s ease;
   transition: background-color 0.3s ease;
 }
+
 a:hover {
   color: #4f5451;
 }
@@ -234,20 +216,37 @@
 ----------------------------------------------------------*/
 @font-face {
   font-family: 'FranklinGothic';
-  src: url('../fonts/itcfranklingothicstd-med.eot');
-  src: url('../fonts/itcfranklingothicstd-med.eot') format('embedded-opentype'), url('../fonts/itcfranklingothicstd-med.woff2') format('woff2'), url('../fonts/itcfranklingothicstd-med.woff') format('woff'), url('../fonts/itcfranklingothicstd-med.ttf') format('truetype'), url('../fonts/itcfranklingothicstd-med.svg#ITCFranklinGothicStdMedium') format('svg');
+  src: url("../fonts/itcfranklingothicstd-med.eot");
+  src: url("../fonts/itcfranklingothicstd-med.eot")
+    format('embedded-opentype'),
+    url("../fonts/itcfranklingothicstd-med.woff2") format('woff2'),
+    url("../fonts/itcfranklingothicstd-med.woff") format('woff'),
+    url("../fonts/itcfranklingothicstd-med.ttf") format('truetype'),
+    url("../fonts/itcfranklingothicstd-med.svg#ITCFranklinGothicStdMedium")
+    format('svg');
   font-weight: normal;
 }
+
 @font-face {
   font-family: 'FranklinGothic';
-  src: url('../fonts/itcfranklingothicstd-demi.eot');
-  src: url('../fonts/itcfranklingothicstd-demi.eot') format('embedded-opentype'), url('../fonts/itcfranklingothicstd-demi.woff2') format('woff2'), url('../fonts/itcfranklingothicstd-demi.woff') format('woff'), url('../fonts/itcfranklingothicstd-demi.ttf') format('truetype'), url('../fonts/itcfranklingothicstd-demi.svg#ITCFranklinGothicStdDemi') format('svg');
+  src: url("../fonts/itcfranklingothicstd-demi.eot");
+  src: url("../fonts/itcfranklingothicstd-demi.eot")
+    format('embedded-opentype'),
+    url("../fonts/itcfranklingothicstd-demi.woff2") format('woff2'),
+    url("../fonts/itcfranklingothicstd-demi.woff") format('woff'),
+    url("../fonts/itcfranklingothicstd-demi.ttf") format('truetype'),
+    url("../fonts/itcfranklingothicstd-demi.svg#ITCFranklinGothicStdDemi")
+    format('svg');
   font-weight: bold;
 }
+
 @font-face {
   font-family: 'FranklinGothic';
-  src: url('../fonts/fgb.eot');
-  src: url('../fonts/fgb.eot') format('embedded-opentype'), url('../fonts/fgb.woff2') format('woff2'), url('../fonts/fgb.woff') format('woff'), url('../fonts/fgb.ttf') format('truetype'), url('../fonts/fgb.svg#FranklinGothicBookRegular') format('svg');
+  src: url("../fonts/fgb.eot");
+  src: url("../fonts/fgb.eot") format('embedded-opentype'),
+    url("../fonts/fgb.woff2") format('woff2'), url("../fonts/fgb.woff")
+    format('woff'), url("../fonts/fgb.ttf") format('truetype'),
+    url("../fonts/fgb.svg#FranklinGothicBookRegular") format('svg');
   font-weight: 300;
 }
 /* COMMON
@@ -257,27 +256,30 @@
   margin: 0 auto;
   position: relative;
 }
-.row:before,
-.row:after {
+
+.row:before, .row:after {
   content: " ";
   display: table;
 }
+
 .row:after {
   clear: both;
 }
+
 #content .all-title {
   margin: 0px 0 15px;
 }
-#content .all-title:before,
-#content .all-title:after {
+
+#content .all-title:before, #content .all-title:after {
   content: " ";
   display: table;
 }
+
 #content .all-title:after {
   clear: both;
 }
 
-.all-title h1{
+.all-title h1 {
   font-size: 20px;
   font-size: 2rem;
   font-weight: bold;
@@ -296,7 +298,6 @@
   padding-left: 20px;
 }
 
-
 .all-title h1:before, .all-title h2:before {
   content: "/";
   font-weight: bold;
@@ -305,16 +306,40 @@
 }
 
 .description {
-	font-size: 14px;
+  font-size: 14px;
 }
+
 .description ul {
-	margin-top:20px;
-	margin-left:15px;
+  margin-top: 20px;
+  margin-left: 15px;
 }
+
 .description ul li {
-	list-style: inside;
-	margin: 5px 40px;
+  list-style: inside;
+  margin: 5px 40px;
+}
+
+.description ul li:first-child {
+  margin-top: 20px;
+}
+
+#renkan-desc-list {
+  margin-top: 0.5em;
+  margin-left: 0;
 }
-.description ul li:first-child {
-    margin-top: 20px;
+
+#renkan-desc-list li {
+  list-style-type: none;
+  text-indent: -5px;
+  margin: 5px 40px;
 }
+
+#renkan-desc-list li:first-child {
+  margin-top: 0;
+}
+
+#renkan-desc-list li:before {
+  content: "-";
+  position: relative;
+  left: -5px;
+}
\ No newline at end of file
--- a/src/hdalab/static/hdalab/js/renkan-manual-save.js	Sat Mar 28 04:43:10 2015 +0100
+++ b/src/hdalab/static/hdalab/js/renkan-manual-save.js	Mon Mar 30 11:35:57 2015 +0200
@@ -2,19 +2,19 @@
 
 Rkns.jsonIOSaveOnClick = function(_renkan, _opts) {
     var _proj = _renkan.project,
-        _saveWarn = false,
-        _onLeave = function() {
-            return "Project not saved";
-        },
-        canRemoveChangeShape = false,
-        changeShapeRemoved = false;
+    _saveWarn = false,
+    _onLeave = function() {
+        return "Project not saved";
+    },
+    canRemoveChangeShape = false,
+    changeShapeRemoved = false;
     if (typeof _opts.http_method === "undefined") {
         _opts.http_method = 'POST';
     }
     var _load = function() {
         var getdata = {},
-            rx = /id=([^&#?=]+)/,
-            matches = document.location.hash.match(rx);
+        rx = /id=([^&#?=]+)/,
+        matches = document.location.hash.match(rx);
         if (matches) {
             getdata.id = matches[1];
         }
@@ -22,24 +22,24 @@
             url: _opts.url,
             data: getdata,
             beforeSend: function(){
-            	_proj.set({loading_status:true});
+                _proj.set({loading_status:true});
             },
             success: function(_data) {
-            	if (typeof(_data.bins) != 'undefined'){
-            		_renkan.tabs.push(new Rkns[_data.bins.type].Bin(_renkan, _data.bins));
-            		delete _data.bins;
-            	}
+                if (typeof(_data.bins) != 'undefined'){
+                    _renkan.tabs.push(new Rkns[_data.bins.type].Bin(_renkan, _data.bins));
+                    delete _data.bins;
+                }
                 _proj.set(_data, {validate: true});
-				_proj.set({loading_status:false});
+                _proj.set({loading_status:false});
                 _proj.set({save_status:0});
-            	_renkan.renderer.autoScale();
-            	
-            	if(_opts.user_authenticated==true){
-            		_renkan.setCurrentUser(_opts.user_id, _opts.user_name);
-            	}
-            	canRemoveChangeShape = true;
-            	_saveWarn = false;
-            	$(window).off("beforeunload", _onLeave);
+                _renkan.renderer.fixSize(true);
+
+                if(_opts.user_authenticated==true){
+                    _renkan.setCurrentUser(_opts.user_id, _opts.user_name);
+                }
+                canRemoveChangeShape = true;
+                _saveWarn = false;
+                $(window).off("beforeunload", _onLeave);
             }
         });
     };
@@ -55,7 +55,7 @@
                 $(window).off("beforeunload", _onLeave);
                 _saveWarn = false;
                 _proj.set({save_status:0});
-                
+
                 if(data.substr(0,6)=="rk_id="){
                     _opts.url = _opts.url.split("?")[0] + "?" + data;
                 }
@@ -63,15 +63,15 @@
         });
     };
     var _changeDispositionDisable = function() {
-    	if(canRemoveChangeShape && !changeShapeRemoved){
-        	$(".renkan_help ul").addClass("disable");
-        	$(".renkan_help ul li ul").remove();
+        if(canRemoveChangeShape && !changeShapeRemoved){
+            $(".renkan_help ul").addClass("disable");
+            $(".renkan_help ul li ul").remove();
             changeShapeRemoved = true;
         }
     }
     var _checkLeave = function() {
-    	_proj.set({save_status:1});
-    	
+        _proj.set({save_status:1});
+
         var title = _proj.get("title");
         if (title && _proj.get("nodes").length) {
             $(".Rk-Save-Button").removeClass("disabled");
@@ -87,22 +87,21 @@
         }
     };
     _load();
-    _proj.on("add:nodes add:edges change", function(_model) {
-		_model.on("change remove", function(_model) {
-        	if(!(_model.changedAttributes.length == 1 && _model.hasChanged('save_status'))) {
-        		_checkLeave();
-        		_changeDispositionDisable()
-        	}
-        });
-    	if(!(_proj.changedAttributes.length == 1 && _proj.hasChanged('save_status'))) {
+    
+    var modelChanged = function(_model) {
+        if(!(_model.changedAttributes.length == 1 && _model.hasChanged('save_status'))) {
             _checkLeave();
-            if (!_proj.hasChanged('saved_at')){
-            	_changeDispositionDisable()
-            }
-    	}
+            _changeDispositionDisable()
+        }
+    };
+    
+    _proj.on("add:nodes add:edges add:views", function(_model) {
+        _model.on("change remove", modelChanged); 
     });
+    _proj.on("add:nodes add:edges add:views change", modelChanged);
+
     _proj.on("add:users", function(){
-    	_checkLeave();
+        _checkLeave();
     });
     _renkan.renderer.save = function() {
         if(_opts.user_authenticated==true){
--- a/src/hdalab/templates/a_propos.html	Sat Mar 28 04:43:10 2015 +0100
+++ b/src/hdalab/templates/a_propos.html	Mon Mar 30 11:35:57 2015 +0200
@@ -19,11 +19,11 @@
         <p>Parti d’une expérimentation en 2012, Histoire de arts’Lab donne aujourd’hui un accès complet aux 5 000 ressources du portail Histoire des arts du ministère de la Culture et de la Communication. Avec ses différents modules (géographique, temporel, thématique…), Histoire de arts’Lab offre autant de points d’entrée de recherche que de modes de représentation de l’histoire des arts.</p>
         <br>
         <p>Histoire des arts’Lab c’est aussi l’outil Renkan, qui permet de visualiser sur des cartes de connaissances, des parcours historiques dans une vingtaine de domaines artistiques ainsi que des parcours thématiques sur un artiste, une œuvre, un courant artistique, une technique… Renkan est également votre outil pour construire vos propres cartes et garder une trace de vos recherches en histoire des arts.</p>
-        <p>Le mot Renkan (連環) provient du japonais “Hyakugaku renkan (百学連環) (les cycles des cent sciences)” le titre d’une des premières encyclopédie japonaise moderne.</p>
-        <p>Le mot 連環 signifie “cycle” mais est composé de 2 kanji qui peuvent être traduits par (parmi d’autres sens):
-        <ul>
-            <li>連:  “connecter” ou “joindre”</li>
-            <li>環: “cercle”, “lien”, “anneau”</li>
+        <p>Le mot “Renkan” (“連環”) provient du japonais “Hyakugaku renkan” (“百学連環” - “les cycles des cent sciences”) le titre d’une des premières encyclopédie japonaise moderne.
+        “連環” signifie “cycle” mais est composé de 2 kanji qui peuvent être traduits par (parmi d’autres sens):
+        <ul id="renkan-desc-list">
+            <li>連&nbsp;: “connecter” ou “joindre”</li>
+            <li>環&nbsp;: “cercle”, “lien”, “anneau”</li>
         </ul>
         </p>
         <br>
--- a/src/hdalab/templates/renkan_edit.html	Sat Mar 28 04:43:10 2015 +0100
+++ b/src/hdalab/templates/renkan_edit.html	Mon Mar 30 11:35:57 2015 +0200
@@ -43,7 +43,8 @@
                     show_addedge_button:false,
                     static_url : "{% static 'renkanmanager/lib/renkan/' %}",
                     allow_image_upload : false,
-                    default_view: 1,
+                    default_view: false,
+                    save_view: true,
                     search: [
                         {
                             type: "HdaTags",
--- a/src/hdalab/templates/renkan_view.html	Sat Mar 28 04:43:10 2015 +0100
+++ b/src/hdalab/templates/renkan_view.html	Mon Mar 30 11:35:57 2015 +0200
@@ -31,8 +31,9 @@
                     editor_mode: false,
                     show_bins: false,
                     show_export_button: false,
-                    language: "fr",
-                    default_view: 1
+                    language: "{{ LANGUAGE_CODE }}",
+                    default_view: false,
+                    save_view: true
                 });
                 Rkns.jsonIO(_renkan, {
                     url: "{% url 'renkan_get_put' %}" + window.location.search
--- a/src/hdalab/templates/renkan_view_full.html	Sat Mar 28 04:43:10 2015 +0100
+++ b/src/hdalab/templates/renkan_view_full.html	Mon Mar 30 11:35:57 2015 +0200
@@ -37,6 +37,8 @@
                     show_top_bar: false,
                     show_minimap: false,
                     show_zoom: false,
+                    default_view: false,
+                    save_view: false,
                     language: "fr"
                 });
                 Rkns.jsonIO(_renkan, {