@@ -115,10 +115,11 @@ private function getHeaderForm($action = false, $prefix)
115115 $ form ->addElement (new Tdmcreate \Html \FormLabel (str_replace ('%s ' , $ prefix , _AM_TDMCREATE_FIELD_RECOMMENDED )));
116116 $ form ->addElement (new Tdmcreate \Html \FormLabel ('<table cellspacing="1" class="outer width100"> ' ));
117117 $ form ->addElement (new Tdmcreate \Html \FormLabel ('<thead class="center"> ' ));
118- $ form ->addElement (new Tdmcreate \Html \FormLabel ('<tr class="head"><th colspan="9 "> ' . $ title . '</th></tr> ' ));
118+ $ form ->addElement (new Tdmcreate \Html \FormLabel ('<tr class="head"><th colspan="10 "> ' . $ title . '</th></tr> ' ));
119119 $ form ->addElement (new Tdmcreate \Html \FormLabel ('<tr class="head width5"> ' ));
120120 $ form ->addElement (new Tdmcreate \Html \FormLabel ('<td> ' . _AM_TDMCREATE_FIELD_ID . '</td> ' ));
121121 $ form ->addElement (new Tdmcreate \Html \FormLabel ('<td> ' . _AM_TDMCREATE_FIELD_NAME . '</td> ' ));
122+ $ form ->addElement (new Tdmcreate \Html \FormLabel ('<td> ' . _AM_TDMCREATE_FIELD_ELEMENT . '</td> ' ));
122123 $ form ->addElement (new Tdmcreate \Html \FormLabel ('<td> ' . _AM_TDMCREATE_FIELD_TYPE . '</td> ' ));
123124 $ form ->addElement (new Tdmcreate \Html \FormLabel ('<td> ' . _AM_TDMCREATE_FIELD_VALUE . '</th> ' ));
124125 $ form ->addElement (new Tdmcreate \Html \FormLabel ('<td> ' . _AM_TDMCREATE_FIELD_ATTRIBUTE . '</th> ' ));
@@ -178,6 +179,11 @@ public function getFormNew($fieldMid = null, $fieldTid = null, $fieldNumb = null
178179 private function getFormNewLine ($ form , $ class , $ i , $ fieldMid , $ fieldTid , $ fName , $ tableAutoincrement )
179180 {
180181 $ helper = Tdmcreate \Helper::getInstance ();
182+ $ fieldElements = $ helper ->getHandler ('Fieldelements ' )->getAll ();
183+ foreach ($ fieldElements as $ fe ) {
184+ $ form ->addElement (new \XoopsFormHidden ('fe_defaulttype[ ' . $ fe ->getVar ('fieldelement_id ' ) . '] ' , $ fe ->getVar ('fieldelement_deftype ' )));
185+ $ form ->addElement (new \XoopsFormHidden ('fe_defaultvalue[ ' . $ fe ->getVar ('fieldelement_id ' ) . '] ' , $ fe ->getVar ('fieldelement_defvalue ' )));
186+ }
181187 $ form ->addElement (new \XoopsFormHidden ('field_id[ ' . $ i . '] ' , 0 ));
182188 $ form ->addElement (new \XoopsFormHidden ('field_mid ' , $ fieldMid ));
183189 $ form ->addElement (new \XoopsFormHidden ('field_tid ' , $ fieldTid ));
@@ -189,6 +195,23 @@ private function getFormNewLine($form, $class, $i, $fieldMid, $fieldTid, $fName,
189195 $ thisFieldName = (!empty ($ fName ) ? ((1 == $ i ) ? $ fName . '_id ' : $ fName . '_ ' ) : '' );
190196 $ fieldName = new \XoopsFormText (_AM_TDMCREATE_FIELD_NAME , 'field_name[ ' . $ i . '] ' , 15 , 255 , $ thisFieldName );
191197 $ form ->addElement (new Tdmcreate \Html \FormLabel ('<td class="center"> ' . $ fieldName ->render () . '</td> ' ));
198+ // Field Element
199+ if ((1 == $ i ) && (1 == $ tableAutoincrement )) {
200+ $ form ->addElement (new Tdmcreate \Html \FormLabel ('<td> </td> ' ));
201+ } else {
202+ // Field Elements
203+ $ crElement = new \CriteriaCompo ();
204+ $ crElement ->add (new \Criteria ('fieldelement_tid ' , 0 ));
205+ $ crTable = new \CriteriaCompo ();
206+ $ crTable ->add (new \Criteria ('fieldelement_mid ' , $ fieldMid ));
207+ $ fieldElementsSelect = new \XoopsFormSelect (_AM_TDMCREATE_FIELD_ELEMENT_NAME , 'field_element[ ' . $ i . '] ' );
208+ $ fieldElementsSelect ->addOptionArray ($ helper ->getHandler ('Fieldelements ' )->getFieldElementsList ($ crElement ));
209+ $ fieldElementsSelect ->addOptionArray ($ helper ->getHandler ('Fieldelements ' )->getList ($ crTable ));
210+ $ fieldElementsSelect ->setExtra (" onchange='presetField( " . $ i . ")' " );
211+ unset($ crElement , $ crTable );
212+ $ form ->addElement (new Tdmcreate \Html \FormLabel ('<td class="center"> ' . $ fieldElementsSelect ->render () . '</td> ' ));
213+ unset($ fieldElementsSelect );
214+ }
192215 // Field Type
193216 $ value = (1 == $ i ) && (1 == $ tableAutoincrement ) ? '2 ' : '' ;
194217 $ fieldTypeSelect = new \XoopsFormSelect (_AM_TDMCREATE_FIELD_TYPE , 'field_type[ ' . $ i . '] ' , $ value );
@@ -222,16 +245,6 @@ private function getFormNewLine($form, $class, $i, $fieldMid, $fieldTid, $fName,
222245 } else {
223246 // Box header row
224247 $ parametersTray = new \XoopsFormElementTray ('' , '<br> ' );
225- // Field Elements
226- $ crElement = new \CriteriaCompo ();
227- $ crElement ->add (new \Criteria ('fieldelement_tid ' , 0 ));
228- $ crTable = new \CriteriaCompo ();
229- $ crTable ->add (new \Criteria ('fieldelement_mid ' , $ fieldMid ));
230- $ fieldElementsSelect = new \XoopsFormSelect (_AM_TDMCREATE_FIELD_ELEMENT_NAME , 'field_element[ ' . $ i . '] ' );
231- $ fieldElementsSelect ->addOptionArray ($ helper ->getHandler ('Fieldelements ' )->getFieldElementsList ($ crElement ));
232- $ fieldElementsSelect ->addOptionArray ($ helper ->getHandler ('Fieldelements ' )->getList ($ crTable ));
233- unset($ crElement , $ crTable );
234- $ parametersTray ->addElement ($ fieldElementsSelect );
235248
236249 $ field_parent = 0 ;
237250 $ checkFieldParent = new \XoopsFormCheckBox (' ' , 'field_parent[ ' . $ i . '] ' , $ field_parent );
@@ -327,6 +340,11 @@ public function getFormEdit($fieldMid = null, $fieldTid = null, $action = false)
327340 $ cr ->setSort ('field_order ' );
328341 $ fields = $ helper ->getHandler ('Fields ' )->getObjects ($ cr );
329342 unset($ cr );
343+ $ fieldElements = $ helper ->getHandler ('Fieldelements ' )->getAll ();
344+ foreach ($ fieldElements as $ fe ) {
345+ $ form ->addElement (new \XoopsFormHidden ('fe_defaulttype[ ' . $ fe ->getVar ('fieldelement_id ' ) . '] ' , $ fe ->getVar ('fieldelement_deftype ' )));
346+ $ form ->addElement (new \XoopsFormHidden ('fe_defaultvalue[ ' . $ fe ->getVar ('fieldelement_id ' ) . '] ' , $ fe ->getVar ('fieldelement_defvalue ' )));
347+ }
330348 $ id = 1 ;
331349 foreach ($ fields as $ field ) {
332350 $ class = ('even ' === $ class ) ? 'odd ' : 'even ' ;
@@ -344,6 +362,23 @@ public function getFormEdit($fieldMid = null, $fieldTid = null, $action = false)
344362 // Field Name
345363 $ fieldName = new \XoopsFormText (_AM_TDMCREATE_FIELD_NAME , 'field_name[ ' . $ id . '] ' , 15 , 255 , $ field ->getVar ('field_name ' ));
346364 $ form ->addElement (new Tdmcreate \Html \FormLabel ('<td class="center"> ' . $ fieldName ->render () . '</td> ' ));
365+ // Field Element
366+ if ((1 == $ id ) && (1 == $ tableAutoincrement )) {
367+ $ form ->addElement (new Tdmcreate \Html \FormLabel ('<td> </td> ' ));
368+ } else {
369+ // Field Elements
370+ $ crElement = new \CriteriaCompo ();
371+ $ crElement ->add (new \Criteria ('fieldelement_tid ' , 0 ));
372+ $ crTable = new \CriteriaCompo ();
373+ $ crTable ->add (new \Criteria ('fieldelement_mid ' , $ fieldMid ));
374+ $ fieldElementsSelect = new \XoopsFormSelect (_AM_TDMCREATE_FIELD_ELEMENT_NAME , 'field_element[ ' . $ id . '] ' , $ field ->getVar ('field_element ' ));
375+ $ fieldElementsSelect ->addOptionArray ($ helper ->getHandler ('Fieldelements ' )->getFieldElementsList ($ crElement ));
376+ $ fieldElementsSelect ->addOptionArray ($ helper ->getHandler ('Fieldelements ' )->getList ($ crTable ));
377+ $ fieldElementsSelect ->setExtra (" onchange='presetField( " . $ id . ")' " );
378+ unset($ crElement , $ crTable );
379+ $ form ->addElement (new Tdmcreate \Html \FormLabel ('<td class="center"> ' . $ fieldElementsSelect ->render () . '</td> ' ));
380+ unset($ fieldElementsSelect );
381+ }
347382 // Field Type
348383 $ fieldTypeSelect = new \XoopsFormSelect (_AM_TDMCREATE_FIELD_TYPE , 'field_type[ ' . $ id . '] ' , $ field ->getVar ('field_type ' ));
349384 $ fieldTypeSelect ->addOptionArray ($ helper ->getHandler ('Fieldtype ' )->getList ());
@@ -372,17 +407,6 @@ public function getFormEdit($fieldMid = null, $fieldTid = null, $action = false)
372407 } else {
373408 // Box header row
374409 $ parametersTray = new \XoopsFormElementTray ('' , '<br> ' );
375- // Field Elements
376- $ crElement = new \CriteriaCompo ();
377- $ crElement ->add (new \Criteria ('fieldelement_tid ' , 0 ));
378- $ crTable = new \CriteriaCompo ();
379- $ crTable ->add (new \Criteria ('fieldelement_mid ' , $ fieldMid ));
380- $ fieldElementsSelect = new \XoopsFormSelect (_AM_TDMCREATE_FIELD_ELEMENT_NAME , 'field_element[ ' . $ id . '] ' , $ field ->getVar ('field_element ' ));
381- //$fieldElementsSelect->addOptionArray($helper->getHandler('Fieldelements')->getList($crElement));
382- $ fieldElementsSelect ->addOptionArray ($ helper ->getHandler ('Fieldelements ' )->getFieldElementsList ($ crElement ));
383- $ fieldElementsSelect ->addOptionArray ($ helper ->getHandler ('Fieldelements ' )->getList ($ crTable ));
384- unset($ crElement , $ crTable );
385- $ parametersTray ->addElement ($ fieldElementsSelect );
386410
387411 $ checkFieldParent = new \XoopsFormCheckBox (' ' , 'field_parent[ ' . $ id . '] ' , $ field ->getVar ('field_parent ' ));
388412 $ checkFieldParent ->addOption (1 , _AM_TDMCREATE_FIELD_PARENT );
0 commit comments