Commit 6ca4a6cb authored by Clément Damiens's avatar Clément Damiens
Browse files

Merged branch development into terla

parents e1257614 1354b72c
......@@ -1388,7 +1388,8 @@ var smallMenu = {
},
//content Loader can go into a block
//smallMenu.open("Recherche","blockUI")
open : function (content,type) {
//smallMenu.open("Recherche","bootbox")
open : function (content,type,color) {
//alert("small menu open");
//add somewhere in page
if(!smallMenu.inBlockUI){
......@@ -1398,6 +1399,8 @@ var smallMenu = {
else {
//this uses blockUI
if(type == "blockUI"){
colorCSS = (color == "black") ? 'rgba(0,0,0,0.70)' : 'rgba(256,256,256,0.85)';
colorCSS = (color == "black") ? '#fff' : '#000';
$.blockUI({
//title : 'Welcome to your page',
message : (content) ? content : "<div class='blockContent'></div>",
......@@ -1407,11 +1410,10 @@ var smallMenu = {
//margin : "50px",
//width:"80%",
// padding: '15px',
backgroundColor: 'rgba(0,0,0,0.70)',
//backgroundColor: 'rgba(256,256,256,0.85)',
backgroundColor: colorCSS,
// '-webkit-border-radius': '10px',
// '-moz-border-radius': '10px',
color: '#fff' ,
color: colorText ,
// "cursor": "pointer"
}//,overlayCSS: { backgroundColor: '#fff'}
});
......@@ -2815,6 +2817,10 @@ var uploadObj = {
var dyFObj = {
elementObj : null,
elementData : null,
subElementObj : null,
subElementData : null,
activeElem : null,
activeModal : null,
//rules to show hide submit btn, used anwhere on blur and can be
//completed by specific rules on dynForm Obj
//ex : dyFObj.elementObj.dynForm.jsonSchema.canSubmitIf
......@@ -2926,6 +2932,7 @@ var dyFObj = {
},
saveElement : function ( formId,collection,ctrl,saveUrl,afterSave ) {
//alert("saveElement");
mylog.warn("---------------- saveElement",formId,collection,ctrl,saveUrl,afterSave );
formData = $(formId).serializeFormJSON();
mylog.log("before",formData);
......@@ -3062,13 +3069,15 @@ var dyFObj = {
},
//entry point function for opening dynForms
openForm : function (type, afterLoad,data) {
openForm : function (type, afterLoad,data,isSub) {
//mylog.clear();
$.unblockUI();
$("#openModal").modal("hide");
mylog.warn("--------------- Open Form ",type, afterLoad,data);
mylog.dir(data);
uploadObj.contentKey="profil";
dyFObj.activeElem = (isSub) ? "subElementObj" : "elementObj";
dyFObj.activeModal = (isSub) ? "#openModal" : "#ajax-modal";
/*if(type=="addPhoto")
uploadObj.contentKey="slider";*/
//BOUBOULE ICI ACTIVER LEVENEMENT
......@@ -3099,14 +3108,14 @@ var dyFObj = {
mylog.warn("------------ getDynFormObj",type, callback,afterLoad, data );
if(typeof type == "object"){
mylog.log(" object directly Loaded : ", type);
dyFObj.elementObj = type;
dyFObj[dyFObj.activeElem] = type;
if( notNull(type.col) ) uploadObj.type = type.col;
callback(type, afterLoad, data);
}else if( jsonHelper.notNull( "typeObj."+type+".dynForm" , "object") ){
mylog.log(" typeObj Loaded : ", type);
dyFObj.elementObj = dyFInputs.get(type);
dyFObj[dyFObj.activeElem] = dyFInputs.get(type);
if( notNull(dyFInputs.get(type).col) ) uploadObj.type = dyFInputs.get(type).col;
callback( dyFObj.elementObj, afterLoad, data );
callback( dyFObj[dyFObj.activeElem], afterLoad, data );
}else {
//TODO : pouvoir surchargé le dossier dynform dans le theme
//via themeObj.dynForm.folder overload
......@@ -3119,7 +3128,7 @@ var dyFObj = {
mylog.dir(dynForm);
//typeObj[type].dynForm = dynForm;
dyFInputs.get(type).dynForm = dynForm;
dyFObj.elementObj = dyFInputs.get(type);
dyFObj[dyFObj.activeElem] = dyFInputs.get(type);
if( notNull(dyFInputs.get(type).col) ) uploadObj.type = dyFInputs.get(type).col;
callback( afterLoad, data );
});
......@@ -3128,73 +3137,89 @@ var dyFObj = {
//prepare information for the modal panel
//and launches the build process
starBuild : function (afterLoad, data) {
mylog.warn("------------ starBuild",dyFObj.elementObj, afterLoad, data);
mylog.dir(dyFObj.elementObj);
$("#ajax-modal .modal-header").removeClass("bgEvent bgOrga bgProject bgPerson bgDDA");//.addClass(dyFObj.elementObj.bgClass);
$("#ajax-modal-modal-title").html("<i class='fa fa-refresh fa-spin'></i> Chargement en cours. Merci de patienter.");
$("#ajax-modal-modal-title").removeClass("text-dark text-green text-azure text-purple text-orange text-blue text-turq");
mylog.warn("------------ starBuild",dyFObj[dyFObj.activeElem], afterLoad, data,dyFObj.activeModal );
mylog.dir(dyFObj[dyFObj.activeElem]);
$(dyFObj.activeModal+" .modal-header").removeClass("bgEvent bgOrga bgProject bgPerson bgDDA");//.addClass(dyFObj[elem].bgClass);
$(dyFObj.activeModal+" #ajax-modal-modal-title").html("<i class='fa fa-refresh fa-spin'></i> Chargement en cours. Merci de patienter.");
$(dyFObj.activeModal+" #ajax-modal-modal-title").removeClass("text-dark text-green text-azure text-purple text-orange text-blue text-turq");
$("#ajax-modal-modal-body").html( "<div class='row bg-white'>"+
$(dyFObj.activeModal+" #ajax-modal-modal-body").html( "<div class='row bg-white'>"+
"<div class='col-sm-10 col-sm-offset-1'>"+
"<div class='space20'></div>"+
//"<h1 id='proposerloiFormLabel' >Faire une proposition</h1>"+
"<form id='ajaxFormModal' enctype='multipart/form-data'></form>"+
"</div>"+
"</div>");
$('#ajax-modal .modal-footer').hide();
$('#ajax-modal').modal("show");
$(dyFObj.activeModal+' .modal-footer').hide();
$(dyFObj.activeModal).modal("show");
dyFInputs.init();
afterLoad = ( notNull(afterLoad) ) ? afterLoad : null;
data = ( notNull(data) ) ? data : {};
dyFObj.buildDynForm(afterLoad, data);
if(typeof dyFObj.elementObj.titleClass != "undefined")
dyFObj.buildDynForm(afterLoad, data,dyFObj[dyFObj.activeElem],dyFObj.activeModal+" #ajaxFormModal");
if(typeof dyFObj[dyFObj.activeElem].titleClass != "undefined")
$("#ajax-modal .modal-header").removeClass("bg-dark bg-purple bg-red bg-azure bg-green bg-green-poi bg-orange bg-yellow bg-blue bg-turq bg-url")
.addClass(dyFObj.elementObj.titleClass);
.addClass(dyFObj[dyFObj.activeElem].titleClass);
$(dyFObj.activeModal+" #ajax-modal-modal-title").html((typeof dyFObj[dyFObj.activeElem].title != "undefined") ? dyFObj[dyFObj.activeElem].title : "");
},
buildDynForm : function (afterLoad,data) {
mylog.warn("--------------- buildDynForm", dyFObj.elementObj, afterLoad,data);
/*subDynForm : function(type, afterLoad,data) {
smallMenu.open();
$("#openModal div.modal-content div.container")..html( "<div class='row bg-white'>"+
"<div class='col-sm-10 col-sm-offset-1'>"+
"<div class='space20'></div>"+
//"<h1 id='proposerloiFormLabel' >Faire une proposition</h1>"+
"<form id='subFormModal' enctype='multipart/form-data'></form>"+
"</div>"+
"</div>");
dyFObj.buildDynForm(afterLoad, data,dyFObj.subElementObj,"#openModal #subFormModal");
},*/
buildDynForm : function (afterLoad,data,obj,formId) {
mylog.warn("--------------- buildDynForm", dyFObj[dyFObj.activeElem], afterLoad,data);
if(userId)
{
var form = $.dynForm({
formId : "#ajax-modal-modal-body #ajaxFormModal",
formObj : dyFObj.elementObj.dynForm,
formId : formId,
formObj : dyFObj[dyFObj.activeElem].dynForm,
formValues : data,
beforeBuild : function () {
if( jsonHelper.notNull( "dyFObj.elementObj.dynForm.jsonSchema.beforeBuild","function") )
dyFObj.elementObj.dynForm.jsonSchema.beforeBuild();
if( jsonHelper.notNull( "dyFObj."+dyFObj.activeElem+".dynForm.jsonSchema.beforeBuild","function") )
dyFObj[dyFObj.activeElem].dynForm.jsonSchema.beforeBuild();
},
onLoad : function () {
if( jsonHelper.notNull("themeObj.dynForm.onLoadPanel","function") ){
themeObj.dynForm.onLoadPanel(dyFObj.elementObj);
themeObj.dynForm.onLoadPanel(dyFObj[dyFObj.activeElem]);
} else {
$("#ajax-modal-modal-title").html("<i class='fa fa-"+dyFObj.elementObj.dynForm.jsonSchema.icon+"'></i> "+dyFObj.elementObj.dynForm.jsonSchema.title);
//alert(afterLoad+"|"+typeof dyFObj.elementObj.dynForm.jsonSchema.onLoads[afterLoad]);
$("#ajax-modal-modal-title").html("<i class='fa fa-"+dyFObj[dyFObj.activeElem].dynForm.jsonSchema.icon+"'></i> "+dyFObj[dyFObj.activeElem].dynForm.jsonSchema.title);
//alert(afterLoad+"|"+typeof dyFObj[dyFObj.activeElem].dynForm.jsonSchema.onLoads[afterLoad]);
}
if( jsonHelper.notNull( "dyFObj.elementObj.dynForm.jsonSchema.onLoads."+afterLoad, "function") )
dyFObj.elementObj.dynForm.jsonSchema.onLoads[afterLoad](data);
if( jsonHelper.notNull( "dyFObj."+dyFObj.activeElem+".dynForm.jsonSchema.onLoads."+afterLoad, "function") )
dyFObj[dyFObj.activeElem].dynForm.jsonSchema.onLoads[afterLoad](data);
//incase we need a second global post process
if( jsonHelper.notNull( "dyFObj.elementObj.dynForm.jsonSchema.onLoads.onload", "function") )
dyFObj.elementObj.dynForm.jsonSchema.onLoads.onload(data);
if( jsonHelper.notNull( "dyFObj."+dyFObj.activeElem+".dynForm.jsonSchema.onLoads.onload", "function") )
dyFObj[dyFObj.activeElem].dynForm.jsonSchema.onLoads.onload(data);
bindLBHLinks();
},
onSave : function(){
if( typeof dyFObj.elementObj.dynForm.jsonSchema.beforeSave == "function")
dyFObj.elementObj.dynForm.jsonSchema.beforeSave();
var afterSave = ( typeof dyFObj.elementObj.dynForm.jsonSchema.afterSave == "function") ? dyFObj.elementObj.dynForm.jsonSchema.afterSave : null;
mylog.log("onSave", dyFObj.elementObj.saveUrl);
if( dyFObj.elementObj.save )
dyFObj.elementObj.save("#ajaxFormModal");
if( dyFObj.elementObj.dynForm.jsonSchema.save )
dyFObj.elementObj.dynForm.jsonSchema.save();
else if(dyFObj.elementObj.saveUrl)
dyFObj.saveElement( "#ajaxFormModal", dyFObj.elementObj.col, dyFObj.elementObj.ctrl, dyFObj.elementObj.saveUrl, afterSave );
if( typeof dyFObj[dyFObj.activeElem].dynForm.jsonSchema.beforeSave == "function")
dyFObj[dyFObj.activeElem].dynForm.jsonSchema.beforeSave();
var afterSave = ( typeof dyFObj[dyFObj.activeElem].dynForm.jsonSchema.afterSave == "function") ? dyFObj[dyFObj.activeElem].dynForm.jsonSchema.afterSave : null;
mylog.log("onSave ", dyFObj.activeElem, dyFObj[dyFObj.activeElem].saveUrl, dyFObj[dyFObj.activeElem].save);
if( dyFObj[dyFObj.activeElem].save )
dyFObj[dyFObj.activeElem].save(dyFObj.activeModal+" #ajaxFormModal");
if( dyFObj[dyFObj.activeElem].dynForm.jsonSchema.save )
dyFObj[dyFObj.activeElem].dynForm.jsonSchema.save(); //use this for subDynForms
else if(dyFObj[dyFObj.activeElem].saveUrl)
dyFObj.saveElement( "#ajaxFormModal", dyFObj[dyFObj.activeElem].col, dyFObj[dyFObj.activeElem].ctrl, dyFObj[dyFObj.activeElem].saveUrl, afterSave );
else
dyFObj.saveElement( "#ajaxFormModal", dyFObj.elementObj.col, dyFObj.elementObj.ctrl, null, afterSave );
dyFObj.saveElement( "#ajaxFormModal", dyFObj[dyFObj.activeElem].col, dyFObj[dyFObj.activeElem].ctrl, null, afterSave );
return false;
}
});
......@@ -3809,7 +3834,7 @@ var dyFInputs = {
"<a href='javascript:;' data-index='"+index+"' data-indexLoc='"+dyFInputs.locationObj.countLocation+"' "+
"class='deleteLocDynForm locationEl"+dyFInputs.locationObj.countLocation+" btn btn-sm btn-danger pull-right'> "+
"<i class='fa fa-times'></i> "+tradDynForm["clear"]+
"<i class='fa fa-times'></i> "+tradDynForm.clear+
"</a>"+
"<a href='javascript:dyFInputs.locationObj.setAsCenter("+dyFInputs.locationObj.countLocation+")' data-index='"+index+"'"+
......@@ -3828,7 +3853,7 @@ var dyFInputs = {
"<a href='javascript:dyFInputs.locationObj.removeLocation("+dyFInputs.locationObj.countLocation+", "+boolCenter+")' "+
"class='removeLocalityBtn locationEl"+dyFInputs.locationObj.countLocation+" btn btn-sm btn-danger pull-right'> "+
"<i class='fa fa-times'></i> "+tradDynForm["clear"]+
"<i class='fa fa-times'></i> "+tradDynForm.clear+
"</a>"+
"<a href='javascript:dyFInputs.locationObj.setAsCenter("+dyFInputs.locationObj.countLocation+")' "+
......@@ -4455,13 +4480,7 @@ var typeObj = {
dda : { label: "DISCUSS DECIDE ACT" ,key:"#dda",icon:"gavel fa-2x text-red"},
chat : { label: "CHAT" ,key:"#chat",icon:"comments fa-2x text-red"},
}},
screens : { color:"pink",icon:"desktop",titleClass : "bg-phink",title : tradDynForm.screenList,
sections : {
person : { label: trad["Invite your contacts"],key:"person",icon:"user"},
organization : { label: trad.organization,key:"organization",icon:"group"},
event : { label: trad.event,key:"event",icon:"calendar"},
project : { label: trad.project ,key:"project",icon:"lightbulb-o"},
}},
filter : { color:"azure",icon:"list",titleClass : "bg-turq",title : "Nouveau Filtre"}
};
var documents = {
......
......@@ -4,8 +4,43 @@ function initDateHeaderPage(params){
$(".header-banner").html(str);
}
function getCroppingModal(){
function pushListRoles(links){
//Members
if(typeof links.members != "undefined"){
$.each(links.members, function(e,v){
if(typeof v.roles != "undefined"){
$.each(v.roles, function(i,data){
if(data != "" && !rolesList.includes(data)){
rolesList.push(data);
}
});
}
});
}
//Contributors
if(typeof links.contributors != "undefined"){
$.each(links.contributors, function(e,v){
if(typeof v.roles != "undefined"){
$.each(v.roles, function(i,data){
if(data != "" && !rolesList.includes(data)){
rolesList.push(data);
}
});
}
});
}
//Attendees
if(typeof links.attendees != "undefined"){
$.each(links.attendees, function(e,v){
if(typeof v.roles != "undefined"){
$.each(v.roles, function(i,data){
if(data != "" && !rolesList.includes(data)){
rolesList.push(data);
}
});
}
});
}
}
function menuLeftShow(){
......@@ -646,6 +681,10 @@ function displayInTheContainer(data, dataName, dataIcon, contextType, edit){
if(typeof val.rolesLink != "undefined"){
console.log(val.rolesLink);
$.each(val.rolesLink, function(i,v){
//Push new roles in rolesList
if(v != "" && !rolesList.includes(v))
rolesList.push(v);
//Incrément and push roles in filter array
if(typeof listRoles[v] != "undefined")
listRoles[v].count++;
else
......
dynForm = {
jsonSchema : {
title : typeObj.filter.title,
icon : typeObj.filter.title,
debug:true,
save : function () {
//alert("filter save "+dyFObj.activeModal);
if( typeof typeObj.network.filters == "undefined" )
typeObj.network.filters = [];
var formData = $("#openModal #ajaxFormModal").serializeFormJSON();
if(formData.key){
delete formData.key;
delete formData.collection;
delete formData.id;
}
formData.tags = formData.tags.split(",");
typeObj.network.filters.push( formData );
//mylog.log(typeObj.network.filters);
$(".filterList").html("");
$.each(typeObj.network.filters,function(k,v) {
$(".filterList").append(v.name+" <a href='javascript:;' onclick='typeObj.network.dynForm.removeFilter("+k+")'><i class='fa fa-times text-red'></i> </a><br/>");
})
$("#openModal").modal("hide");
dyFObj.activeModal = "#ajax-modal";
dyFObj.activeElem = "elementObj";
},
properties : {
info : {
inputType : "custom",
html:"<p class='text-red'>Les Filtres controle le menu de gauche et les tags que vous voulez présenter aux utilisateurs<hr></p>",
},
name : dyFInputs.name(),
tags : dyFInputs.tags()
}
}
};
\ No newline at end of file
dynForm = {
removeFilter : function (ix) {
//alert(ix);
typeObj.network.filters.splice( ix, 1 );
$(".filterList").html("");
$.each(typeObj.network.filters,function( k,v ) {
$(".filterList").append(v.name+" <a href='javascript:;' onclick='typeObj.network.dynForm.removeFilter("+k+")'><i class='fa fa-times text-red'></i> </a><br/>");
})
},
jsonSchema : {
title : tradDynForm.configNetwork,
icon : "connectdevelop",
......@@ -22,35 +30,33 @@ dynForm = {
return ( $("#ajaxFormModal #type").val() ) ? true : false ;
},
formatData : function(formData){
if( $("#ajaxFormModal request[searchTag]").val() != "" && formData["request[searchTag]"] )
//alert("formatData");
if( $(dyFObj.activeModal+" #ajaxFormModal request[searchTag]").val() != "" && formData["request[searchTag]"] )
formData["request[searchTag]"] = formData["request[searchTag]"].split(",");
if( $("#ajaxFormModal add").val() != "" && formData["add"] )
formData["add"] = formData["add"].split(",");
if( $(dyFObj.activeModal+" #ajaxFormModal add").val() != "" && formData.add )
formData.add = formData.add.split(",");
if( typeObj.network.filters )
formData.filters = typeObj.network.filters;
return formData;
},
properties : {
info : {
breadcrumb : {
inputType : "custom",
html:"<p class='text-"+typeObj.network.color+"'>"+
tradDynForm.infoFormNetwork+
"<hr>"+
"</p>",
},
breadcrumb : {
inputType : "custom",
html:"<h4><a href='javascript:;'' class='btn btn-xs btn-danger' onclick='dyFObj.openForm(\"config\")'><i class='fa fa-times'></i></a> NETWORK </h4>",
html:"<h4><a href='javascript:;'' class='btn btn-xs btn-danger' onclick='dyFObj.openForm(\"filr\")'><i class='fa fa-times'></i></a> NETWORK </h4>",
},
"type" : dyFInputs.inputHidden(),
"name" : dyFInputs.name("network"),
"name" : dyFInputs.name(),
skinInfo : {
inputType : "custom",
html:"<p class='item-comment bg-green-comment'>SKIN Section<hr></p>",
},
"skin[title]" : dyFInputs.name(),
"skin[logo]" : dyFInputs.image(),
"skin[paramsLogo][origin]" : dyFInputs.checkboxSimple("true", "skinparamsLogoorigin",
"skin[logo]" : dyFInputs.image(),
"skin[paramsLogo][origin]" : dyFInputs.radio( "Logo Origin ?", { "true" : { icon:"check-circle-o", lbl:trad.yes },
"false" : { icon:"circle-o", lbl:trad.no} } ),
/*dyFInputs.checkboxSimple("true", "skinparamsLogoorigin",
{ "onText" : "Oui",
"offText": "Non",
"onLabel" : "on",
......@@ -60,18 +66,26 @@ dynForm = {
"labelInInput": "Activer les amendements",
"labelInformation": "<i class='fa fa-info-circle'></i> Les votes sont désactivés pendant la période d'amendement"
}),
}),*/
filterInfo : {
inputType : "custom",
html:"<p class='item-comment bg-green-comment'>FILTER Section</p>",
html:"<p class='item-comment bg-green-comment'>FILTER Section "+
"</p>",
},
"filters[types]" : dyFInputs.radio( "Types ?", { "true" : { icon:"check-circle-o", lbl:trad.yes },
"false" : { icon:"circle-o", lbl:trad.no} } ),
filterTagsInfo : {
inputType : "custom",
html:"<a href='javascript:;' class='btn btn-dark' onclick='dyFObj.openForm(\"filter\",null,null,true)'><i class='fa fa-plus'></i> Ajouter un Filtre</a>"+
"<div class='filterList'></div>",
},
addInfo : {
inputType : "custom",
html:"<p class='item-comment bg-green-comment'>ADD Section</p>",
},
"add" : dyFInputs.tags( ["organization","project","event"] ),
add : dyFInputs.tags( ["organization","project","event"] ),
resultInfo : {
inputType : "custom",
......@@ -84,6 +98,11 @@ dynForm = {
html:"<p class='item-comment bg-green-comment'>REQUEST Section</p>",
},
"request[searchTag]" : dyFInputs.tags(),
},
tooltips : {
filterTagsInfo : "CLALALALAL LFGSGSDF\n GFDSG FDSGSD",
"filters[types]" : "CLALALALAL LFGSGSDF\n GFDSG FDSGSD",
add : "XXXX SXKXKKXXOKOXSPOKXSKXSXSXS \n XS XS \n XS XS XS XS"
}
}
};
\ No newline at end of file
......@@ -360,7 +360,7 @@ function modifyNews(idNews,typeNews){
else if(updateNews[idNews]["media"]["type"]=="gallery_files"){
message += getMediaFiles(updateNews[idNews]["media"],idNews, "update")+
"<input type='hidden' class='type' value='gallery_files'>";
}else if (updateNews[idNews]["media"]["type"]=="gallery_files"){
}else if (updateNews[idNews]["media"]["type"]=="gallery_images"){
message += getMediaImages(updateNews[idNews]["media"], idNews,null,null, "update")+
"<input type='hidden' class='type' value='gallery_images'>";
}else{
......@@ -1360,7 +1360,7 @@ function getMediaImages(o,newsId,authorId,targetName,edit){
if(typeof edit != "undefined" && edit=="update"){
for(var i in o.images){
html+="<div class='updateImageNews'><img src='"+baseUrl+"/"+uploadUrl+"communecter/"+o.images[i].folder+"/"+o.images[i].name+"' style='width:75px; height:75px;'/>"+
"<a href='javascript:;' class='btn-red text-white deleteDoc' onclick='deleteDocFromNews(\'"+o.images[i]._id.$id+"\',\'"+edit+"\')'><i class='fa fa-times text-dark'></i></a>"+
"<a href='javascript:;' class='btn-red text-white deleteDoc'><i class='fa fa-times text-dark'></i></a>"+
"<input type='hidden' class='docsId' value='"+o.images[i]._id.$id+"'></div>";
}
return html;
......@@ -1439,7 +1439,7 @@ function getMediaFiles(o,newsId, edit){
html+="<div class='col-md-12 padding-5 shadow2 margin-top-5'>"+
"<a href='"+path+"' target='_blank'>"+documents.getIcon(o.files[i].contentKey)+" "+o.files[i].name+"</a>";
if(typeof edit != "undefined" && edit=="update"){
html+="<a href='javascript:;' class='btn-red text-white deleteDoc' onclick='deleteDocFromNews(\'"+o.files[i]._id.$id+"\',\'"+edit+"\')'><i class='fa fa-times text-dark'></i></a>"+
html+="<a href='javascript:;' class='btn-red text-white deleteDoc'><i class='fa fa-times text-dark'></i></a>"+
"<input type='hidden' class='docsId' value='"+o.files[i]._id.$id+"'>";
}
html +="</div>";
......
......@@ -265,6 +265,10 @@ Liste des notifications déjà lues => #370 #453
- values
- fixed
- percentage
** Page dédié sondage avec le module de proposition
faire une page genre comme les change.org et autre
on fait un appel , venez nombreux donner votre avis, proposer vos idées, ou jsute etre présent à l'appel
sur la question du : ....blah blah
** Qui est là, Action en cours, Todo, Todo Perso : dans un e communauté
une vision à un temps t, de toutes les ressources d'une CO
- en mode web
......@@ -272,10 +276,14 @@ Liste des notifications déjà lues => #370 #453
** menu configurable comme sur telephone , on click avatar
avec des widget , esay access links ...
possibilité de plusieurs panels
** idea build dynform based on final json analysis (retro build)
- entry param is a structure similare
* ************************************************************
* Version C0.22 : en cours
* ************************************************************
** @Tib
>>>> [ ] when ona page , after login return to same page instead of personnal detail
>>>> [ ] application launcher like linux
>>>> [ ] integration du system de paiement Mango
>>>> [ ] faciliter la création de page static
......@@ -288,9 +296,11 @@ Liste des notifications déjà lues => #370 #453
[X] select type of config ex : "network"
- onclick : openForm of the given type
- this way editing will also work
[ ] subDynform input type
[ ] subDynform : open a subDF from any DF
- similar to location process
- on click opens a bootbox.dialog with a dynform inside
- on click opens a new modal with a dynform inside
[ ] bugs
[ ] btn annulé on subDF
>>>>[ ] removing dynform classes from co.js and lazy load them
>>>>[ ] check webpacking
>>>>[ ] suppression d'un element user type COEDitor
......@@ -313,11 +323,12 @@ Liste des notifications déjà lues => #370 #453
- on Update l'image dans le form edit > pas possible de supprimer l'image qu'on a précédement ajouté
* Finir module Tiers Lieux
[ ] on events TL connecté url to visio
[ ] partage de calendrier entre plusieurs TL connecté
[ ] show icons for quick access to ressources of a TL event
[ ] avoir des roles concirerge ...etc == RH
[ ] Compétence
* features
[ ] Ressource
[ ] Ressource [[[https://docs.google.com/drawings/d/17L1sZ0so3BHoV8fNclsCio9HflaAVkKP_Q1XhuUBhn4/edit]]]
[ ] temps de consommation d'une ressource
[ ] taux d'utilisation
[ ] Besoin
......@@ -330,10 +341,26 @@ Liste des notifications déjà lues => #370 #453
[ ] réintégré la GEd de granddir
[ ] losing session : rememberme
[ ] enable edit POI when open Edition
* ************************************************************
* Version CO.22.terlà : en cours
* ************************************************************
* ************************************************************
* Version C0.21.8 : MEP
8 correpsond le nb de nouvelle fonctionalité
......
......@@ -218,7 +218,7 @@
<div class="col-sm-2 col-md-2 col-xs-12 text-right margin-top-5 no-padding" id="col-btn-type-directory">
<button class="btn text-white bg-dark btn-open-filliaire">
<i class="fa fa-th"></i>
<span class="hidden-xs"><?php echo Yii::t("common","Thématiques") ?></span>
<span class="hidden-xs"><?php echo Yii::t("common","Themes") ?></span>
</button><hr class="hidden-xs">
<button class="btn text-black bg-white btn-directory-type btn-all" data-type="all">
<i class="fa fa-search"></i>
......
......@@ -289,7 +289,7 @@ var newMemberInCommunity = false;
var isElementAdmin= "<?php echo Authorisation::isElementAdmin($parentId, $type, @Yii::app()->session["userId"]) ?>";
var contactTypes = [{ name : "people", color: "yellow", icon:"user", label:"Citoyens" }];
var listMails = {};
var rolesList=[tradCategory.financier,tradCategory.partner,tradCategory.sponsor,tradCategory.organizor,tradCategory.president, tradCategory.director,tradCategory.speaker,tradCategory.intervener];
var rolesList=[ tradCategory.financier, tradCategory.partner, tradCategory.sponsor, tradCategory.organizor, tradCategory.president, tradCategory.director, tradCategory.speaker, tradCategory.intervener];
if(elementType != "<?php echo Event::COLLECTION ?>" || isElementAdmin)
contactTypes.push({ name : "organizations", color: "green", icon:"group", label:"Organisations" });
......
......@@ -720,6 +720,8 @@
KScrollTo("#topPosKScroll");
initDateHeaderPage(<