--- a/hdalab/js/gomina.js Mon Jan 30 18:20:59 2012 +0100
+++ b/hdalab/js/gomina.js Thu Feb 02 12:03:07 2012 +0100
@@ -201,9 +201,13 @@
}).join('')
+ '</ul><h4>Annotations</h4><div class="content-annotation" contentid="'
+ _d.id
- + '"><ul><li>'
- + (gomNs.sessiondata.annotations[_d.id] && gomNs.sessiondata.annotations[_d.id].texte ? gomNs.sessiondata.annotations[_d.id].texte.replace(/\n/gm,"</p><p>") : 'Annoter ce contenu...')
- + '</li></ul></div>';
+ + '">'
+ + ( gomNs.sessiondata.annotations[_d.id] && gomNs.sessiondata.annotations[_d.id].texte
+ ? '<ul><li>'
+ + _.escape(gomNs.sessiondata.annotations[_d.id].texte).replace(/\n/gm,"</li><li>")
+ + '</li>'
+ : ( gomNs.write_allowed ? '<ul><li>Annoter ce contenu...</li></ul>' : '' ) )
+ + '</div>';
if (gomNs.write_allowed) {
_(gomNs.sessiondata.views).each(function(_view, _k) {
if (_view.type == 'list') {
@@ -253,8 +257,8 @@
if (!gomNs.sessiondata.annotations[_id]) {
gomNs.sessiondata.annotations[_id] = {};
}
- gomNs.sessiondata.annotations[_id].texte = _.escape(this.value);
- this.parentNode.innerHTML = '<ul><li>' + (this.value.length ? gomNs.sessiondata.annotations[_id].texte.replace(/\n/gm,"</li><li>") : 'Annoter ce contenu...' ) + '</ul>';
+ gomNs.sessiondata.annotations[_id].texte = this.value;
+ this.parentNode.innerHTML = '<ul><li>' + (this.value.length ? _.escape(gomNs.sessiondata.annotations[_id].texte).replace(/\n/gm,"</li><li>") : 'Annoter ce contenu...' ) + '</ul>';
debouncedSaveChanges();
});
$(this).html(_el);
@@ -417,7 +421,10 @@
_(_curView.hiddenWidgets).each(function(_w) {
$("#chbx_" + _w).prop("checked",false);
$("#" + _w).hide();
- })
+ });
+ $("#notes").html( _curView.notes
+ ? '<ul><li>' + _.escape(_curView.notes).replace(/\n/gm,"</li><li>") + '</li></ul>'
+ : ( gomNs.write_allowed ? '<ul><li>Annoter cette vue...</li></ul>' : '' ) );
switch(_curView.type) {
case 'list':
$("#bandefiltre, .handle").hide();
@@ -432,6 +439,18 @@
}
}
+function displayViewList() {
+ $("#ongletsvues").html(gomNs.sessiondata.views.map(function(_v, _k) {
+ return '<li class="lienvue" id="view_'
+ + _k
+ + '" onclick="changeView('
+ + _k
+ + '); return false;"><a href="#">'
+ + _.escape(_v.name)
+ + '</a></li>';
+ }).join(""))
+}
+
function getInitialView() {
var _urlParam = {};
if (document.location.hash) {
@@ -461,39 +480,16 @@
if (!gomNs.sessiondata.title) {
gomNs.sessiondata.title = 'Nouvelle session';
}
- if (!gomNs.sessiondata.view) {
- gomNs.sessiondata.view = 0;
- }
if (!gomNs.sessiondata.views) {
gomNs.sessiondata.views = [];
}
if (!gomNs.sessiondata.views.length) {
- gomNs.sessiondata.views[0] = {
- type: 'filter',
- name: 'Mes résultats de recherche',
- period: [ gomNs.minYear, gomNs.maxYear ],
- tag: [],
- hiddenWidgets: [],
- };
- gomNs.sessiondata.views[1] = {
- type: 'list',
- name: 'Ma liste',
- list: [],
- hiddenWidgets: [],
- };
+ addView( 'filter', 'Mes résultats de recherche' );
+ addView( 'list', 'Ma liste' );
}
if (!gomNs.sessiondata.annotations) {
gomNs.sessiondata.annotations = {};
}
- $("#ongletsvues").html(gomNs.sessiondata.views.map(function(_v, _k) {
- return '<li class="lienvue" id="view_'
- + _k
- + '" onclick="changeView('
- + _k
- + '); return false;"><a href="#">'
- + _.escape(_v.name)
- + '</a></li>';
- }).join(""))
if (data.write_allowed) {
$("#bloc_gestvue").show();
} else {
@@ -503,11 +499,11 @@
+ ( data.write_allowed ? '' : '<span class="lectseul"> (lecture seule)</span>' ) );
gomNs.hrefinterval = setInterval(function() {
if (document.location.hash != gomNs.hash) {
- console.log("Changement de hash");
clearInterval(gomNs.hrefinterval);
getInitialView();
}
}, 500);
+ displayViewList();
showView();
});
}
@@ -518,6 +514,25 @@
debouncedSaveChanges();
}
+function addView(viewtype, viewname) {
+ var _content = {
+ type: viewtype,
+ name: viewname,
+ hiddenWidgets: [],
+ };
+ switch(viewtype) {
+ case 'filter':
+ _content.period = [ gomNs.minYear, gomNs.maxYear ];
+ _content.tag = [];
+ gomNs.sessiondata.view = gomNs.sessiondata.views.length;
+ break;
+ case 'list':
+ _content.list = [];
+ break;
+ }
+ gomNs.sessiondata.views.push(_content);
+ debouncedSaveChanges();
+}
$(document).ready(function() {
gomNs.map = new google.maps.Map(document.getElementById("map"),
@@ -600,6 +615,23 @@
$("#view_" + gomNs.sessiondata.view + " a").html(_.escape(_curView.name))
debouncedSaveChanges();
});
+ $("#notes").click(function() {
+ if (gomNs.write_allowed) {
+ if (this.children[0].tagName == 'UL') {
+ var _el = document.createElement('textarea'),
+ _curView = gomNs.sessiondata.views[gomNs.sessiondata.view];
+ _el.innerHTML = _curView.notes ? _curView.notes : '';
+ $(_el).focusout(function() {
+ _curView.notes = this.value;
+ this.parentNode.innerHTML = '<ul><li>' + (this.value.length ? _.escape(_curView.notes).replace(/\n/gm,"</li><li>") : 'Annoter cette vue...' ) + '</ul>';
+ debouncedSaveChanges();
+ });
+ $(this).html(_el);
+ _el.focus();
+ _el.select();
+ }
+ }
+ });
gomNs.disChart = d3.select("#disciplines")
.append("svg:svg")
.attr("width", 475)
@@ -618,6 +650,10 @@
});
_html + '</ul>';
$("#gestvue").append(_html);
+ $("#nouvellevue").click(function() {
+ $("#plusdevues").slideToggle();
+ return false;
+ })
$("#widgetlist input").change(function() {
var _newWL = [];
$("#widgetlist input").each(function(_k, _e) {
@@ -631,5 +667,21 @@
});
gomNs.sessiondata.views[gomNs.sessiondata.view].hiddenWidgets = _newWL;
debouncedSaveChanges();
- })
+ });
+ $("#nouv_resrech").click(function() {
+ var _txt = prompt("Comment souhaitez-vous nommer votre nouvelle vue ?","Nouveaux résultats de recherche");
+ if (_txt !== null) {
+ addView('filter', _txt);
+ displayViewList();
+ }
+ return false;
+ });
+ $("#nouv_liste").click(function() {
+ var _txt = prompt("Comment souhaitez-vous nommer votre nouvelle vue ?","Nouvelle liste");
+ if (_txt !== null) {
+ addView('list', _txt);
+ displayViewList();
+ }
+ return false;
+ });
});