mirror of
https://gitlab.easter-eggs.com/ee/ldapsaisie.git
synced 2024-11-18 00:09:06 +01:00
LSrelation :
-> Revue de la mise en forme -> Revue de la structure de <li> (supression des <span>) -> Mise en place d'un texte quand plus aucun objet est en relation
This commit is contained in:
parent
9ad151312e
commit
95b3854e46
5 changed files with 52 additions and 18 deletions
|
@ -19,24 +19,23 @@ var LSrelation = new Class({
|
|||
el.destroy();
|
||||
}, this);
|
||||
this.deleteBtnId = 0;
|
||||
$$('li.LSrelation').each(function(li) {
|
||||
$$('a.LSrelation').each(function(a) {
|
||||
this.deleteBtn[this.deleteBtnId] = new Element('img');
|
||||
this.deleteBtn[this.deleteBtnId].src = 'templates/images/delete.png';
|
||||
this.deleteBtn[this.deleteBtnId].setStyle('cursor','pointer');
|
||||
this.deleteBtn[this.deleteBtnId].addClass('LSrelation-btn');
|
||||
this.deleteBtn[this.deleteBtnId].addEvent('click',this.onDeleteBtnClick.bind(this,this.deleteBtn[this.deleteBtnId]));
|
||||
this.deleteBtn[this.deleteBtnId].injectInside(li);
|
||||
li.id=this.deleteBtnId;
|
||||
this.deleteBtn[this.deleteBtnId].injectAfter(a);
|
||||
a.getParent().id=this.deleteBtnId;
|
||||
this.deleteBtnId++;
|
||||
}, this);
|
||||
},
|
||||
|
||||
onDeleteBtnClick: function(img) {
|
||||
if (this._confirmDelete) {
|
||||
var li = img.getParent();
|
||||
var span = li.getFirst().getFirst('span');
|
||||
var a = img.getPrevious('a');
|
||||
this.confirmBox = new LSconfirmBox({
|
||||
text: 'Etês-vous sur de vouloir supprimer "'+span.innerHTML+'" ?',
|
||||
text: 'Etês-vous sur de vouloir supprimer "'+a.innerHTML+'" ?',
|
||||
startElement: img,
|
||||
onConfirm: this.deleteFromImg.bind(this,img)
|
||||
});
|
||||
|
@ -48,7 +47,7 @@ var LSrelation = new Class({
|
|||
|
||||
deleteFromImg: function(img) {
|
||||
var li = img.getParent();
|
||||
var span = li.getFirst().getFirst('span');
|
||||
var a = img.getPrevious('a');
|
||||
var ul = li.getParent();
|
||||
img.destroy();
|
||||
LSdebug(ul.id);
|
||||
|
@ -59,9 +58,9 @@ var LSrelation = new Class({
|
|||
template: 'LSrelation',
|
||||
action: 'deleteByDn',
|
||||
id: id,
|
||||
dn: span.id
|
||||
dn: a.id
|
||||
};
|
||||
data.imgload=varLSdefault.loadingImgDisplay(li.id,'inside');
|
||||
data.imgload=varLSdefault.loadingImgDisplay(li,'inside');
|
||||
new Request({url: 'index_ajax.php', data: data, onSuccess: this.deleteFromImgComplete.bind(this)}).send();
|
||||
},
|
||||
|
||||
|
@ -69,7 +68,18 @@ var LSrelation = new Class({
|
|||
var data = JSON.decode(responseText);
|
||||
if ( varLSdefault.checkAjaxReturn(data) ) {
|
||||
try {
|
||||
$(data.dn).getParent().getParent().destroy();
|
||||
var li = $(data.dn).getParent();
|
||||
var ul=$(data.dn).getParent().getParent();
|
||||
li.destroy();
|
||||
if (!$type(ul.getFirst())) {
|
||||
var getId = /LSrelation_ul_([0-9]*)/
|
||||
var id = getId.exec(ul.id)[1];
|
||||
|
||||
var newli = new Element('li');
|
||||
newli.addClass('LSrelation');
|
||||
newli.set('html',varLSdefault.LSjsConfig['LSrelations'][id]['emptyText']);
|
||||
newli.injectInside(ul);
|
||||
}
|
||||
}
|
||||
catch(e) {
|
||||
LSdebug('Erreur durant la suppression du li du DN : '+data.dn);
|
||||
|
|
|
@ -180,13 +180,18 @@ if (!isset($_ERRORS)) {
|
|||
if($objRel -> $relationConf['update_function']($object,$_SESSION['LSselect'][$relationConf['LSobject']])) {
|
||||
if (method_exists($relationConf['LSobject'],$relationConf['list_function'])) {
|
||||
$list = $objRel -> $relationConf['list_function']($object);
|
||||
if (is_array($list)) {
|
||||
if (is_array($list)&&(!empty($list))) {
|
||||
foreach($list as $o) {
|
||||
$data['html'].= "<li class='LSrelation'><a href='view.php?LSobject=".$relationConf['LSobject']."&dn=".$o -> getDn()."' class='LSrelation'><span id='".$o -> getDn()."'>".$o -> getDisplayValue(NULL,true)."</span></li>\n";
|
||||
$data['html'].= "<li class='LSrelation'><a href='view.php?LSobject=".$relationConf['LSobject']."&dn=".$o -> getDn()."' class='LSrelation' id='".$o -> getDn()."'>".$o -> getDisplayValue(NULL,true)."</a></li>\n";
|
||||
}
|
||||
}
|
||||
else {
|
||||
$data['html'] = "<li>"._('Liste vide.')."</li>\n";
|
||||
if (isset($relationConf['emptyText'])) {
|
||||
$data['html'] = "<li>".$relationConf['emptyText']."</li>\n";
|
||||
}
|
||||
else {
|
||||
$data['html'] = "<li>"._('Aucun objet en relation.')."</li>\n";
|
||||
}
|
||||
}
|
||||
$data['id'] = $_REQUEST['id'];
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<h1 id='LSrelation_title_{$item.id}'>{$item.label}</h1>
|
||||
<h1 id='LSrelation_title_{$item.id}' class='LSrelation'>{$item.label}</h1>
|
||||
{if $item.actions!=''}
|
||||
<ul class='LSview-actions'>
|
||||
{foreach from=$item.actions item=action}
|
||||
|
@ -8,6 +8,8 @@
|
|||
{/if}
|
||||
<ul id='LSrelation_ul_{$item.id}' class='LSrelation'>
|
||||
{foreach from=$item.objectList item=object}
|
||||
<li class='LSrelation'><a href='view.php?LSobject={$item.LSobject}&dn={$object.dn}' class='LSrelation'><span id='{$object.dn}'>{$object.text}</span></a></li>
|
||||
<li class='LSrelation'><a href='view.php?LSobject={$item.LSobject}&dn={$object.dn}' class='LSrelation' id='{$object.dn}'>{$object.text}</a></li>
|
||||
{foreachelse}
|
||||
<li class='LSrelation'>{$item.emptyText}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
|
|
|
@ -3,6 +3,10 @@
|
|||
* LSrelation
|
||||
***********************
|
||||
*/
|
||||
h1.LSrelation {
|
||||
font-size: 1.4em;
|
||||
}
|
||||
|
||||
img.LSrelation-btn {
|
||||
margin-left: 0.5em;
|
||||
}
|
||||
|
|
|
@ -81,6 +81,7 @@ if($LSsession -> startLSsession()) {
|
|||
// Relations
|
||||
if (is_array($object -> config['relations'])) {
|
||||
$LSrelations=array();
|
||||
$LSrelations_JSparams=array();
|
||||
foreach($object -> config['relations'] as $relationName => $relationConf) {
|
||||
if ($GLOBALS['LSsession'] -> relationCanAccess($object -> getValue('dn'),$LSobject,$relationName)) {
|
||||
$return=array(
|
||||
|
@ -88,8 +89,18 @@ if($LSsession -> startLSsession()) {
|
|||
'LSobject' => $relationConf['LSobject']
|
||||
);
|
||||
|
||||
if (isset($relationConf['emptyText'])) {
|
||||
$return['emptyText'] = $relationConf['emptyText'];
|
||||
}
|
||||
else {
|
||||
$return['emptyText'] = _('Aucun objet en relation.');
|
||||
}
|
||||
|
||||
$id=rand();
|
||||
$return['id']=$id;
|
||||
$LSrelations_JSparams[$id]=array(
|
||||
'emptyText' => $return['emptyText']
|
||||
);
|
||||
$_SESSION['LSrelation'][$id] = array(
|
||||
'relationName' => $relationName,
|
||||
'objectType' => $object -> getType(),
|
||||
|
@ -137,9 +148,11 @@ if($LSsession -> startLSsession()) {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
$GLOBALS['LSsession'] -> addJSscript('LSconfirmBox.js');
|
||||
$GLOBALS['LSsession'] -> addCssFile('LSconfirmBox.css');
|
||||
$GLOBALS['Smarty'] -> assign('LSrelations',$LSrelations);
|
||||
$GLOBALS['LSsession'] -> addJSconfigParam('LSrelations',$LSrelations_JSparams);
|
||||
}
|
||||
|
||||
$GLOBALS['Smarty'] -> assign('LSview_actions',$LSview_actions);
|
||||
|
|
Loading…
Reference in a new issue