$item->setAttribute("responses", (int) $_POST["responses"]); // If new item set current user as media owner if ($item->getAttribute('ownerID') <= 0) { $item->setAttribute('ownerID', $cms_user->getUserID()); } // Validate XHTML source $domdocument = new CMS_DOMDocument(); try { $domdocument->loadXML("<dummy>" . $_POST["source_" . $item->getID()] . "</dummy>"); } catch (DOMException $e) { $cms_message .= $cms_language->getMessage(MESSAGE_ACTION_ERROR_INVALID_XHTML, false, MOD_CMS_FORMS_CODENAME) . " : " . $e->getMessage(); } if (!$cms_message) { //check inputs tags (sometimes, IE remove type="text" ...) //then save source $item->setAttribute('source', $item->checkInputs($_POST["source_" . $item->getID()])); } // Categories // Write item relations with categories $ids = $_POST["ids"] ? @array_unique(@explode(';', $_POST["ids"])) : array(); if (!$cms_message && $item->writeToPersistence()) { $item_relations = new CMS_forms_formularCategories($item); if (sizeof($ids) <= 0) { $cms_message .= $cms_language->getMessage(MESSAGE_ACTION_ERROR_CATEGORIES_EMPTY, false, MOD_CMS_FORMS_CODENAME) . "\n"; } else { $item_relations->init(); foreach ($ids as $id) { $cat = CMS_moduleCategories_catalog::getByID($id); if ($cat->hasError() || !$item_relations->categoryExists($cat) && !$item_relations->addCategory($cat)) { $cms_message .= $cms_language->getMessage(MESSAGE_ACTION_ERROR_ADD_CATEGORY, array($cat->getLabel($cms_language)), MOD_CMS_FORMS_CODENAME) . "\n"; }