diff --git a/presentation/lookAndFeel/knowledgeTree/administration/docfieldmanagement/conditional/ajaxComplexConditionals.php b/presentation/lookAndFeel/knowledgeTree/administration/docfieldmanagement/conditional/ajaxComplexConditionals.php new file mode 100644 index 0000000..4e8dc6d --- /dev/null +++ b/presentation/lookAndFeel/knowledgeTree/administration/docfieldmanagement/conditional/ajaxComplexConditionals.php @@ -0,0 +1,92 @@ +loadTemplate('ktcore/metadata/conditional/ajax_complex_get_item_list'); + return $oTemplate->render(); + } + + function do_getBehaviourList() { + $parent_behaviour = KTUtil::arrayGet($_REQUEST, 'parent_behaviour'); + $fieldset_id = KTUtil::arrayGet($_REQUEST, 'fieldset_id'); + $field_id = KTUtil::arrayGet($_REQUEST, 'field_id'); + + header('Content-type: application/xml'); + $oTemplating =& KTTemplating::getSingleton(); + $oTemplate =& $oTemplating->loadTemplate('ktcore/metadata/conditional/ajax_complex_get_behaviour_list'); + return $oTemplate->render(); + } + + function do_getActiveFields() { + $parent_behaviour = KTUtil::arrayGet($_REQUEST, 'parent_behaviour'); + $fieldset_id = KTUtil::arrayGet($_REQUEST, 'fieldset_id'); // + + header('Content-type: application/xml'); + $oTemplating =& KTTemplating::getSingleton(); + $oTemplate =& $oTemplating->loadTemplate('ktcore/metadata/conditional/ajax_complex_get_active_fields'); + return $oTemplate->render(); + } + + /** storage methods */ + function do_createBehaviourAndAssign() { + $parent_behaviour = KTUtil::arrayGet($_REQUEST, 'parent_behaviour'); + $fieldset_id = KTUtil::arrayGet($_REQUEST, 'fieldset_id'); + $field_id = KTUtil::arrayGet($_REQUEST, 'field_id'); + $behaviour_name = KTUtil::arrayGet($_REQUEST, 'behaviour_name'); + $lookups_to_assign = KTUtil::arrayGet($_REQUEST, 'lookups_to_assign'); // array + + header('Content-type: application/xml'); + $oTemplating =& KTTemplating::getSingleton(); + $oTemplate =& $oTemplating->loadTemplate('ktcore/metadata/conditional/ajax_complex_create_behaviour_and_assign'); + return $oTemplate->render(); + } + + function do_useBehaviourAndAssign() { + $parent_behaviour = KTUtil::arrayGet($_REQUEST, 'parent_behaviour'); + $fieldset_id = KTUtil::arrayGet($_REQUEST, 'fieldset_id'); + $field_id = KTUtil::arrayGet($_REQUEST, 'field_id'); + $behaviour_name = KTUtil::arrayGet($_REQUEST, 'behaviour_id'); + $lookups_to_assign = KTUtil::arrayGet($_REQUEST, 'lookups_to_assign'); // array + + header('Content-type: application/xml'); + $oTemplating =& KTTemplating::getSingleton(); + $oTemplate =& $oTemplating->loadTemplate('ktcore/metadata/conditional/ajax_complex_use_behaviour_and_assign'); + return $oTemplate->render(); + } + + +} + +$oDispatcher = new AjaxConditionalAdminDispatcher(); +$oDispatcher->dispatch(); + +?> diff --git a/presentation/lookAndFeel/knowledgeTree/administration/docfieldmanagement/conditional/manageConditionals.php b/presentation/lookAndFeel/knowledgeTree/administration/docfieldmanagement/conditional/manageConditionals.php index cf10d34..b95c2d4 100644 --- a/presentation/lookAndFeel/knowledgeTree/administration/docfieldmanagement/conditional/manageConditionals.php +++ b/presentation/lookAndFeel/knowledgeTree/administration/docfieldmanagement/conditional/manageConditionals.php @@ -48,6 +48,29 @@ class ManageConditionalDispatcher extends KTStandardDispatcher { ); return $oTemplate->render($aTemplateData); } + + // FIXME refactor this into do_editSimple(fieldset_id); + function do_editComplexFieldset() { + $fieldset_id = KTUtil::arrayGet($_REQUEST, "fieldset_id"); + $oTemplating = new KTTemplating; + $oTemplate = $oTemplating->loadTemplate("ktcore/metadata/conditional/editcomplex"); + /* alright: to "do" this we need at least: + * 1. the list of all the columns (id, name) and their available values. + * 2. the fieldset_id. + * we can then render in/out. Everything "intelligent" happens + * in AJAX (doing it with submits sucks arse. + * + * FIXME we fake it here with nested arrays... + */ + $oFieldset =& KTFieldset::get($fieldset_id); + $aFields =& $oFieldset->getFields(); + $aTemplateData = array( + "fieldset_id" => $fieldset_id, + "aFields" => $aFields, + "iMasterFieldId" => $aFields[0]->getId(), + ); + return $oTemplate->render($aTemplateData); + } diff --git a/templates/ktcore/metadata/conditional/ajax_complex_create_behaviour_and_assign.smarty b/templates/ktcore/metadata/conditional/ajax_complex_create_behaviour_and_assign.smarty new file mode 100644 index 0000000..9396129 --- /dev/null +++ b/templates/ktcore/metadata/conditional/ajax_complex_create_behaviour_and_assign.smarty @@ -0,0 +1,3 @@ + + OK! + diff --git a/templates/ktcore/metadata/conditional/ajax_complex_get_active_fields.smarty b/templates/ktcore/metadata/conditional/ajax_complex_get_active_fields.smarty new file mode 100644 index 0000000..c104b6b --- /dev/null +++ b/templates/ktcore/metadata/conditional/ajax_complex_get_active_fields.smarty @@ -0,0 +1,4 @@ + + + + diff --git a/templates/ktcore/metadata/conditional/ajax_complex_get_behaviour_list.smarty b/templates/ktcore/metadata/conditional/ajax_complex_get_behaviour_list.smarty new file mode 100644 index 0000000..669a0d4 --- /dev/null +++ b/templates/ktcore/metadata/conditional/ajax_complex_get_behaviour_list.smarty @@ -0,0 +1,4 @@ + + + + diff --git a/templates/ktcore/metadata/conditional/ajax_complex_get_item_list.smarty b/templates/ktcore/metadata/conditional/ajax_complex_get_item_list.smarty new file mode 100644 index 0000000..9218d14 --- /dev/null +++ b/templates/ktcore/metadata/conditional/ajax_complex_get_item_list.smarty @@ -0,0 +1,4 @@ + + + + diff --git a/templates/ktcore/metadata/conditional/ajax_complex_use_behaviour_and_assign.smarty b/templates/ktcore/metadata/conditional/ajax_complex_use_behaviour_and_assign.smarty new file mode 100644 index 0000000..790640b --- /dev/null +++ b/templates/ktcore/metadata/conditional/ajax_complex_use_behaviour_and_assign.smarty @@ -0,0 +1,4 @@ + + + OK! + diff --git a/templates/ktcore/metadata/conditional/editcomplex.smarty b/templates/ktcore/metadata/conditional/editcomplex.smarty new file mode 100644 index 0000000..9e53ba6 --- /dev/null +++ b/templates/ktcore/metadata/conditional/editcomplex.smarty @@ -0,0 +1,118 @@ +{literal} + + + + + + + + + + + + + + +{/literal} + +

Edit Complex Conditional Metadata

+
+ + + + + + +{foreach from=$aFields item=oField} + +{/foreach} + + +
+

{$oField->getName()}

+

This column is not active.

+

Editing behaviour Jack

+
+

Unassigned/Unavailable

+ +

Assign to behaviour

+
+ or to a new behaviour called
+ + +
+
+

Edit Behaviour

+

+ Select a behaviour from this list to change the + items which are available. +

+ +
+ Change Assignments for this field. +
+
+ + + \ No newline at end of file