Add jeditable select and autocomplete (not stable)
This commit is contained in:
parent
cbc27b2ac9
commit
8dc1a20466
@ -361,7 +361,7 @@ class Deplacement extends CommonObject
|
|||||||
$sql.= " FROM ".MAIN_DB_PREFIX."c_type_fees";
|
$sql.= " FROM ".MAIN_DB_PREFIX."c_type_fees";
|
||||||
$sql.= " WHERE active = ".$active;
|
$sql.= " WHERE active = ".$active;
|
||||||
|
|
||||||
dol_syslog("Deplacement::listOfTypes sql=".$sql, LOG_DEBUG);
|
dol_syslog(get_class($this)."::listOfTypes sql=".$sql, LOG_DEBUG);
|
||||||
$result = $this->db->query($sql);
|
$result = $this->db->query($sql);
|
||||||
if ( $result )
|
if ( $result )
|
||||||
{
|
{
|
||||||
@ -370,11 +370,14 @@ class Deplacement extends CommonObject
|
|||||||
while ($i < $num)
|
while ($i < $num)
|
||||||
{
|
{
|
||||||
$obj = $this->db->fetch_object($result);
|
$obj = $this->db->fetch_object($result);
|
||||||
$ret[$obj->id]=array('code'=>$obj->code, 'label'=>(($langs->trans($obj->code)!=$obj->code)?$langs->trans($obj->code):$obj->label));
|
$ret[$obj->code]=(($langs->trans($obj->code)!=$obj->code)?$langs->trans($obj->code):$obj->label);
|
||||||
$i++;
|
$i++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else dol_print_error($this->db);
|
else
|
||||||
|
{
|
||||||
|
dol_print_error($this->db);
|
||||||
|
}
|
||||||
|
|
||||||
return $ret;
|
return $ret;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -339,13 +339,15 @@ else if ($id)
|
|||||||
print '<table class="border" width="100%">';
|
print '<table class="border" width="100%">';
|
||||||
|
|
||||||
// Ref
|
// Ref
|
||||||
print "<tr>";
|
print '<tr><td width="20%">'.$langs->trans("Ref").'</td><td>';
|
||||||
print '<td width="20%">'.$langs->trans("Ref").'</td><td>';
|
|
||||||
print $form->showrefnav($object,'id','',1,'rowid','ref','');
|
print $form->showrefnav($object,'id','',1,'rowid','ref','');
|
||||||
print '</td></tr>';
|
print '</td></tr>';
|
||||||
|
|
||||||
// Type
|
// Type
|
||||||
print '<tr><td>'.$langs->trans("Type").'</td><td>'.$langs->trans($object->type).'</td></tr>';
|
print '<tr><td>'.$langs->trans("Type").'</td><td>';
|
||||||
|
print $form->editInPlace($langs->trans($object->type), 'type', $user->rights->deplacement->creer, 'select');
|
||||||
|
//print $langs->trans($object->type);
|
||||||
|
print '</td></tr>';
|
||||||
|
|
||||||
// Who
|
// Who
|
||||||
print '<tr><td>'.$langs->trans("Person").'</td><td>';
|
print '<tr><td>'.$langs->trans("Person").'</td><td>';
|
||||||
|
|||||||
@ -102,9 +102,9 @@ print '<td colspan="4">'.$langs->trans("Statistics").'</td>';
|
|||||||
print "</tr>\n";
|
print "</tr>\n";
|
||||||
|
|
||||||
$listoftype=$tripandexpense_static->listOfTypes();
|
$listoftype=$tripandexpense_static->listOfTypes();
|
||||||
foreach ($listoftype as $typefee)
|
foreach ($listoftype as $code => $label)
|
||||||
{
|
{
|
||||||
$dataseries[]=array('label'=>$typefee['label'],'values'=>array(0=>(isset($nb[$typefee['code']])?$nb[$typefee['code']]:0)));
|
$dataseries[]=array('label'=>$label,'values'=>array(0=>(isset($nb[$code])?$nb[$code]:0)));
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($conf->use_javascript_ajax)
|
if ($conf->use_javascript_ajax)
|
||||||
|
|||||||
@ -53,11 +53,18 @@ if((isset($_GET['field']) && ! empty($_GET['field']))
|
|||||||
if ($element == 'fichinter') $element = 'ficheinter';
|
if ($element == 'fichinter') $element = 'ficheinter';
|
||||||
|
|
||||||
if ($user->rights->$element->lire || $user->rights->$element->read)
|
if ($user->rights->$element->lire || $user->rights->$element->read)
|
||||||
|
{
|
||||||
|
if ($type == 'select')
|
||||||
|
{
|
||||||
|
echo json_encode(array("Aberdeen", "Ada", "Adamsville", "Addyston", "Adelphi", "Adena", "Adrian", "Akron"));
|
||||||
|
}
|
||||||
|
else
|
||||||
{
|
{
|
||||||
$object = new GenericObject($db);
|
$object = new GenericObject($db);
|
||||||
$value=$object->getValueFrom($table_element, $fk_element, $field);
|
$value=$object->getValueFrom($table_element, $fk_element, $field);
|
||||||
echo $value;
|
echo $value;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
echo $langs->trans('NotEnoughPermissions');
|
echo $langs->trans('NotEnoughPermissions');
|
||||||
|
|||||||
@ -125,4 +125,48 @@ $(document).ready(function() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
$('.edit_select').editable(urlSaveInPlace, {
|
||||||
|
type : 'select',
|
||||||
|
id : 'field',
|
||||||
|
onblur : 'ignore',
|
||||||
|
cssclass : 'flat',
|
||||||
|
tooltip : tooltipInPlace,
|
||||||
|
placeholder : placeholderInPlace,
|
||||||
|
cancel : cancelInPlace,
|
||||||
|
submit : submitInPlace,
|
||||||
|
indicator : indicatorInPlace,
|
||||||
|
loadurl : urlLoadInPlace,
|
||||||
|
loaddata : {
|
||||||
|
type: 'select',
|
||||||
|
element: element,
|
||||||
|
table_element: table_element,
|
||||||
|
fk_element: fk_element
|
||||||
|
},
|
||||||
|
submitdata : {
|
||||||
|
type: 'select',
|
||||||
|
element: element,
|
||||||
|
table_element: table_element,
|
||||||
|
fk_element: fk_element
|
||||||
|
},
|
||||||
|
callback : function(result, settings) {
|
||||||
|
var obj = $.parseJSON(result);
|
||||||
|
|
||||||
|
if (obj.error) {
|
||||||
|
$(this).html(this.revert);
|
||||||
|
$.jnotify(obj.error, "error", true);
|
||||||
|
} else {
|
||||||
|
$(this).html(obj.value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
$('.edit_autocomplete').editable(urlSaveInPlace, {
|
||||||
|
type : 'autocomplete',
|
||||||
|
id : 'field',
|
||||||
|
onblur : 'submit',
|
||||||
|
tooltip : tooltipInPlace,
|
||||||
|
indicator : indicatorInPlace,
|
||||||
|
autocomplete : {
|
||||||
|
data : ["Aberdeen", "Ada", "Adamsville", "Addyston", "Adelphi", "Adena", "Adrian", "Akron"]
|
||||||
|
}
|
||||||
|
});
|
||||||
});
|
});
|
||||||
@ -0,0 +1,9 @@
|
|||||||
|
/* Create an inline datepicker which leverages the
|
||||||
|
jQuery UI autocomplete
|
||||||
|
*/
|
||||||
|
$.editable.addInputType('autocomplete', {
|
||||||
|
element : $.editable.types.text.element,
|
||||||
|
plugin : function(settings, original) {
|
||||||
|
$('input', this).autocomplete(settings.autocomplete.data);
|
||||||
|
}
|
||||||
|
});
|
||||||
@ -932,6 +932,7 @@ function top_htmlhead($head, $title='', $disablejs=0, $disablehead=0, $arrayofjs
|
|||||||
{
|
{
|
||||||
print '<script type="text/javascript" src="'.DOL_URL_ROOT.'/includes/jquery/plugins/jeditable/jquery.jeditable.min'.$ext.'"></script>'."\n";
|
print '<script type="text/javascript" src="'.DOL_URL_ROOT.'/includes/jquery/plugins/jeditable/jquery.jeditable.min'.$ext.'"></script>'."\n";
|
||||||
print '<script type="text/javascript" src="'.DOL_URL_ROOT.'/includes/jquery/plugins/jeditable/jquery.jeditable.ui-datepicker.js"></script>'."\n";
|
print '<script type="text/javascript" src="'.DOL_URL_ROOT.'/includes/jquery/plugins/jeditable/jquery.jeditable.ui-datepicker.js"></script>'."\n";
|
||||||
|
print '<script type="text/javascript" src="'.DOL_URL_ROOT.'/includes/jquery/plugins/jeditable/jquery.jeditable.ui-autocomplete.js"></script>'."\n";
|
||||||
print '<script type="text/javascript">'."\n";
|
print '<script type="text/javascript">'."\n";
|
||||||
print 'var urlSaveInPlace = \''.DOL_URL_ROOT.'/core/ajax/saveinplace.php\';'."\n";
|
print 'var urlSaveInPlace = \''.DOL_URL_ROOT.'/core/ajax/saveinplace.php\';'."\n";
|
||||||
print 'var urlLoadInPlace = \''.DOL_URL_ROOT.'/core/ajax/loadinplace.php\';'."\n";
|
print 'var urlLoadInPlace = \''.DOL_URL_ROOT.'/core/ajax/loadinplace.php\';'."\n";
|
||||||
|
|||||||
@ -131,6 +131,15 @@ textarea.flat {
|
|||||||
textarea:disabled {
|
textarea:disabled {
|
||||||
background:#ddd;
|
background:#ddd;
|
||||||
}
|
}
|
||||||
|
form.flat select {
|
||||||
|
background: #FDFDFD;
|
||||||
|
font-size: <?php print $fontsize ?>px;
|
||||||
|
font-family: <?php print $fontlist ?>;
|
||||||
|
font-weight: normal;
|
||||||
|
border: 1px solid #ACBCBB;
|
||||||
|
padding: 1px 1px 1px 1px;
|
||||||
|
margin: 0px 0px 0px 0px;
|
||||||
|
}
|
||||||
select.flat {
|
select.flat {
|
||||||
background: #FDFDFD;
|
background: #FDFDFD;
|
||||||
font-size: <?php print $fontsize ?>px;
|
font-size: <?php print $fontsize ?>px;
|
||||||
@ -1724,7 +1733,7 @@ table.cal_event td { border: 0px; padding-<?php print $left; ?>: 0px; padding-<?
|
|||||||
/* jQuery - jeditable */
|
/* jQuery - jeditable */
|
||||||
/* ============================================================================== */
|
/* ============================================================================== */
|
||||||
|
|
||||||
.edit_textarea:hover, .edit_text:hover, .edit_numeric:hover {
|
.edit_textarea:hover, .edit_text:hover, .edit_numeric:hover, .edit_select:hover {
|
||||||
background: white url(<?php echo dol_buildpath($path.'/theme/eldy/img/edit.png',1) ?>) right top no-repeat;
|
background: white url(<?php echo dol_buildpath($path.'/theme/eldy/img/edit.png',1) ?>) right top no-repeat;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user