BUG 5934 "Save label for radiogroups..." SOLVED
- is saving the radiogroup label - by convention we decided save by default the label for all array field types like dropdown, checkgroup, listboxes and radiogroup, so the property for dropdown "save label" was removed because always is saving it!
This commit is contained in:
@@ -303,40 +303,62 @@ class Form extends XmlForm
|
|||||||
if (($v->type != 'submit')) {
|
if (($v->type != 'submit')) {
|
||||||
if ($v->type != 'file') {
|
if ($v->type != 'file') {
|
||||||
if ( array_key_exists($k,$newValues) ) {
|
if ( array_key_exists($k,$newValues) ) {
|
||||||
|
echo $v->type."<br>";
|
||||||
switch($v->type){
|
switch($v->type){
|
||||||
|
case 'radiogroup':
|
||||||
|
$values[$k] = $newValues[$k];
|
||||||
|
$values["{$k}_label"] = $newValues["{$k}_label"] = $v->options[$newValues[$k]];
|
||||||
|
break;
|
||||||
|
|
||||||
case 'checkgroup':
|
case 'checkgroup':
|
||||||
case 'listbox':
|
case 'listbox':
|
||||||
if (count($newValues[$k]) > 1) {
|
$values[$k] = '';
|
||||||
$values[$k] = implode('|', $newValues[$k]);
|
foreach ($newValues[$k] as $i => $value) {
|
||||||
$newValues[$k] = $values[$k];
|
$values[$k] .= ($i != 0 ? '|': '') . $value;
|
||||||
} else {
|
|
||||||
$values[$k] = $newValues[$k][0];
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 'dropdown':
|
|
||||||
$values[$k] = $newValues[$k];
|
|
||||||
|
|
||||||
if ($v->saveLabel == 1) {
|
if (isset($v->options[$value])){
|
||||||
if(isset($v->options[$newValues[$k]])){
|
$values["{$k}_label"] .= ($i != 0 ? '|': '') . $v->options[$value];
|
||||||
$values[$k . '_label'] = $v->options[$newValues[$k]];
|
} else {
|
||||||
}else{
|
|
||||||
$query = G::replaceDataField($this->fields[$k]->sql,$newValues);
|
$query = G::replaceDataField($this->fields[$k]->sql,$newValues);
|
||||||
//we do the query to the external connection and we've got the label
|
//we do the query to the external connection and we've got the label
|
||||||
$con = Propel::getConnection($this->fields[$k]->sqlConnection);
|
$con = Propel::getConnection($this->fields[$k]->sqlConnection);
|
||||||
$stmt = $con->prepareStatement($query);
|
$stmt = $con->prepareStatement($query);
|
||||||
$rs = $stmt->executeQuery(ResultSet::FETCHMODE_NUM);
|
$rs = $stmt->executeQuery(ResultSet::FETCHMODE_NUM);
|
||||||
while ($rs->next()){
|
|
||||||
$row = $rs->getRow();
|
while ($rs->next()) {
|
||||||
$rowId = $row['0'];
|
list($rowId, $rowContent) = $rs->getRow();
|
||||||
$rowContent = $row['1'];
|
|
||||||
if ($newValues[$k]==$rowId){
|
if ($value == $rowId){
|
||||||
$values[$k . '_label'] = $rowContent;
|
$values["{$k}_label"] .= ($i != 0 ? '|': '') . $rowContent;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
$newValues[$k] = $values["{$k}_label"];
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case 'dropdown':
|
||||||
|
$values[$k] = $newValues[$k];
|
||||||
|
|
||||||
|
if (isset($v->options[$newValues[$k]])){
|
||||||
|
$values["{$k}_label"] = $newValues["{$k}_label"] = $v->options[$newValues[$k]];
|
||||||
|
} else {
|
||||||
|
$query = G::replaceDataField($this->fields[$k]->sql,$newValues);
|
||||||
|
//we do the query to the external connection and we've got the label
|
||||||
|
$con = Propel::getConnection($this->fields[$k]->sqlConnection);
|
||||||
|
$stmt = $con->prepareStatement($query);
|
||||||
|
$rs = $stmt->executeQuery(ResultSet::FETCHMODE_NUM);
|
||||||
|
while ($rs->next()) {
|
||||||
|
list($rowId, $rowContent) = $rs->getRow();
|
||||||
|
if ($newValues[$k]==$rowId){
|
||||||
|
$values["{$k}_label"] = $rowContent;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case 'grid':
|
case 'grid':
|
||||||
foreach( $newValues[$k] as $j => $item ) {
|
foreach( $newValues[$k] as $j => $item ) {
|
||||||
if(is_array($item)){
|
if(is_array($item)){
|
||||||
@@ -348,25 +370,21 @@ class Form extends XmlForm
|
|||||||
if($this->fields[$k]->fields[$kk]->type == 'dropdown') {
|
if($this->fields[$k]->fields[$kk]->type == 'dropdown') {
|
||||||
$values[$k][$j] = $newValues[$k][$j];
|
$values[$k][$j] = $newValues[$k][$j];
|
||||||
|
|
||||||
if(($this->fields[$k]->fields[$kk]->saveLabel) == 1) {
|
if ($this->fields[$k]->validateValue($newValues[$k][$j], $this )){
|
||||||
if ($this->fields[$k]->validateValue($newValues[$k][$j], $this )){
|
if (isset($this->fields[$k]->fields[$kk]->options[$vv])){
|
||||||
if (isset($this->fields[$k]->fields[$kk]->options[$vv])){
|
$values[$k][$j]["{$kk}_label"] = $newValues[$k][$j][$kk . '_label'] = $this->fields[$k]->fields[$kk]->options[$vv];
|
||||||
$values[$k][$j][$kk . '_label'] = $this->fields[$k]->fields[$kk]->options[$vv];
|
} else {
|
||||||
$newValues[$k][$j][$kk . '_label'] = $values[$k][$j][$kk . '_label'];
|
$query = G::replaceDataField($this->fields[$k]->fields[$kk]->sql,$values[$k][$j]);
|
||||||
} else {
|
$con = Propel::getConnection('workflow');
|
||||||
$query = G::replaceDataField($this->fields[$k]->fields[$kk]->sql,$values[$k][$j]);
|
$stmt = $con->prepareStatement($query);
|
||||||
$con = Propel::getConnection('workflow');
|
$rs = $stmt->executeQuery(ResultSet::FETCHMODE_NUM);
|
||||||
$stmt = $con->prepareStatement($query);
|
while ($rs->next()){
|
||||||
$rs = $stmt->executeQuery(ResultSet::FETCHMODE_NUM);
|
// from the query executed we only need certain elements
|
||||||
while ($rs->next()){
|
list($rowId, $rowContent) = $rs->getRow();
|
||||||
// from the query executed we only need certain elements
|
|
||||||
$row = $rs->getRow();
|
if ($vv==$rowId){
|
||||||
$rowId = $row['0'];
|
$values[$k][$j]["{$kk}_label"] = $newValues[$k][$j][$kk. '_label'] = $rowContent;
|
||||||
$rowContent = $row['1'];
|
break;
|
||||||
if ($vv==$rowId){
|
|
||||||
$values[$k][$j][$kk. '_label'] = $rowContent;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -383,6 +401,7 @@ class Form extends XmlForm
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
if ($this->fields[$k]->validateValue($newValues[$k], $this ))
|
if ($this->fields[$k]->validateValue($newValues[$k], $this ))
|
||||||
$values[$k] = $this->fields[$k]->maskValue( $newValues[$k], $this );
|
$values[$k] = $this->fields[$k]->maskValue( $newValues[$k], $this );
|
||||||
@@ -408,7 +427,6 @@ class Form extends XmlForm
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
foreach ($newValues as $k => $v) {
|
foreach ($newValues as $k => $v) {
|
||||||
if (strpos($k, 'SYS_GRID_AGGREGATE_') !== false) {
|
if (strpos($k, 'SYS_GRID_AGGREGATE_') !== false) {
|
||||||
$values[$k] = $v;
|
$values[$k] = $v;
|
||||||
|
|||||||
@@ -60,11 +60,10 @@
|
|||||||
<!-- <td class='FormFieldContent' width="{$form_width}" >{$form.PME_DEFAULTVALUE} </td> //-->
|
<!-- <td class='FormFieldContent' width="{$form_width}" >{$form.PME_DEFAULTVALUE} </td> //-->
|
||||||
<td class="FormFieldContent" width="{$form_fieldContentWidth}">{$form.PME_DEFAULTVALUE}</td>
|
<td class="FormFieldContent" width="{$form_fieldContentWidth}">{$form.PME_DEFAULTVALUE}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<!-- <tr>
|
||||||
<td class="FormLabel" width="{$form_labelWidth}">{$PME_SAVELABEL}</td>
|
<td class="FormLabel" width="{$form_labelWidth}">{$PME_SAVELABEL}</td>
|
||||||
<!-- <td class='FormFieldContent' width="{$form_width}" >{$form.PME_SAVELABEL} </td> //-->
|
|
||||||
<td class="FormFieldContent" width="{$form_fieldContentWidth}">{$form.PME_SAVELABEL}</td>
|
<td class="FormFieldContent" width="{$form_fieldContentWidth}">{$form.PME_SAVELABEL}</td>
|
||||||
</tr>
|
</tr>-->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="FormLabel" width="{$form_labelWidth}">{$PME_HINT}</td>
|
<td class="FormLabel" width="{$form_labelWidth}">{$PME_HINT}</td>
|
||||||
<!-- <td class='FormFieldContent' width="{$form_width}" >{$form.PME_HINT} </td> //-->
|
<!-- <td class='FormFieldContent' width="{$form_width}" >{$form.PME_HINT} </td> //-->
|
||||||
|
|||||||
@@ -35,9 +35,9 @@ select XMLNODE_NAME, XMLNODE_NAME AS NAME FROM dynaForm WHERE XMLNODE_NAME <> @@
|
|||||||
<PME_DEFAULTVALUE type="text" maxlength="50" size="49" defaultvalue="">
|
<PME_DEFAULTVALUE type="text" maxlength="50" size="49" defaultvalue="">
|
||||||
<en>Default Value</en>
|
<en>Default Value</en>
|
||||||
</PME_DEFAULTVALUE>
|
</PME_DEFAULTVALUE>
|
||||||
<PME_SAVELABEL type="checkbox" falseValue="0" value="1" defaultvalue="0" labelOnRight="0">
|
<!--<PME_SAVELABEL type="checkbox" falseValue="0" value="1" defaultvalue="0" labelOnRight="0">
|
||||||
<en>Save label of selected value in variable</en>
|
<en>Save label of selected value in variable</en>
|
||||||
</PME_SAVELABEL>
|
</PME_SAVELABEL>-->
|
||||||
|
|
||||||
<PME_HINT type="textarea" cols="47" rows="3">
|
<PME_HINT type="textarea" cols="47" rows="3">
|
||||||
<en>Hint</en>
|
<en>Hint</en>
|
||||||
|
|||||||
Reference in New Issue
Block a user