예제 #1
0
	function save($option, $pkg, $caller, $nonclassic, $quickmode)
	{
		global $database;
		$database = JFactory::getDBO();
		$row = new facileFormsForms($database);

		// bind it to the table
		if (!$row->bind($_POST)) {
			echo "<script> alert('".$row->getError()."'); window.history.go(-1); </script>\n";
			exit();
		} // if

		// store it in the db
		if (!$row->store()) {
			echo "<script> alert('".$row->getError()."'); window.history.go(-1); </script>\n";
			exit();
		} // if
		$row->reorder( "" );
		if (trim($caller) == '') $caller = "index.php?option=$option&act=manageforms&pkg=$pkg";
		
		if(!$nonclassic){
			JFactory::getApplication()->redirect($caller, BFText::_('COM_BREEZINGFORMS_FORMS_SAVED'));
		} else {
			
			ob_start();
			ob_end_clean();
			if(!$quickmode){
				echo '<html><head><script>parent.SqueezeBox.close();</script></head><body></body></html>';
			} else {
				echo '<html><head><script>parent.location.href="index.php?option=com_breezingforms&act=quickmode&formName='.$row->name.'&form='.$row->id.'"</script></head><body></body></html>';
			}
			exit;
		}
	} // save
예제 #2
0
 static function save($option, $pkg, $caller, $nonclassic, $quickmode)
 {
     global $database;
     $database = JFactory::getDBO();
     $row = new facileFormsForms($database);
     // TAGGING
     if (isset($_POST['tags_content_default_publishup'])) {
         if ($_POST['tags_content_default_publishup'] == '') {
             $_POST['tags_content_default_publishup'] = '0000-00-00 00:00:00';
         } else {
             $_POST['tags_content_default_publishup'] = date('Y-m-d H:i:s', strtotime($_POST['tags_content_default_publishup']));
         }
     }
     if (isset($_POST['tags_content_default_publishdown'])) {
         if ($_POST['tags_content_default_publishdown'] == '') {
             $_POST['tags_content_default_publishdown'] = '0000-00-00 00:00:00';
         } else {
             $_POST['tags_content_default_publishdown'] = date('Y-m-d H:i:s', strtotime($_POST['tags_content_default_publishdown']));
         }
     }
     $tags_form_array = array();
     if (isset($_POST['tags_form']) && is_array($_POST['tags_form'])) {
         $tags_form_array = $_POST['tags_form'];
         JArrayHelper::toInteger($tags_form_array);
         $tags_form = '';
         foreach ($_POST['tags_form'] as $tag_form) {
             $tags_form .= intval($tag_form) . ',';
         }
         $tags_form = rtrim($tags_form, ',');
         $_POST['tags_form'] = $tags_form;
     } else {
         $_POST['tags_form'] = '';
     }
     if (isset($_POST['tags_content']) && is_array($_POST['tags_content'])) {
         $tags_form = '';
         foreach ($_POST['tags_content'] as $tag_form) {
             $tags_form .= intval($tag_form) . ',';
         }
         $tags_form = rtrim($tags_form, ',');
         $_POST['tags_content'] = $tags_form;
     } else {
         $_POST['tags_content'] = '';
     }
     // TAGGING END
     if (isset($_POST['salesforce_fields']) && is_array($_POST['salesforce_fields'])) {
         $i = 0;
         foreach ($_POST['salesforce_fields'] as $sfield) {
             if ($sfield == '') {
                 unset($_POST['salesforce_fields'][$i]);
             }
             $i++;
         }
         $_POST['salesforce_fields'] = implode(',', $_POST['salesforce_fields']);
     }
     if (!isset($_POST['salesforce_enabled'])) {
         $_POST['salesforce_enabled'] = 0;
     }
     if (isset($_POST['dropbox_submission_types']) && is_array($_POST['dropbox_submission_types'])) {
         $_POST['dropbox_submission_types'] = implode(',', $_POST['dropbox_submission_types']);
     } else {
         $_POST['dropbox_submission_types'] = '';
     }
     // bind it to the table
     if (!$row->bind($_POST)) {
         echo "<script> alert('" . $row->getError() . "'); window.history.go(-1); </script>\n";
         exit;
     }
     // if
     // store it in the db
     if (!$row->store()) {
         echo "<script> alert('" . $row->getError() . "'); window.history.go(-1); </script>\n";
         exit;
     }
     // if
     // TAGGING
     jimport('joomla.version');
     $version = new JVersion();
     if (version_compare($version->getShortVersion(), '3.1', '>=')) {
         $insert = $database->insertid();
         $tag_date = JFactory::getDate();
         $plugin_call = '<div style="display:none;">BFTAGGED</div>{BreezingForms: ' . $_POST['tags_form_oldname'] . ',,0}';
         $plugin_call_new = '<div style="display:none;">BFTAGGED</div>{BreezingForms: ' . $_POST['name'] . ',,0}';
         if ($_POST['tags_form'] != '') {
             $ucm_created = '0000-00-00 00:00:00';
             $database->setQuery("Select core_content_id From  #__ucm_content Where core_body = " . $database->quote($plugin_call));
             $ucm_id = $database->loadResult();
             if ($ucm_id) {
                 $database->setQuery("Select core_created_time From  #__ucm_content Where core_body = " . $database->quote($plugin_call));
                 $ucm_created = $database->loadResult();
                 $database->setQuery("Delete From #__ucm_base Where ucm_id = " . $database->quote($ucm_id));
                 $database->query();
                 $database->setQuery("Delete From #__contentitem_tag_map Where core_content_id = " . $database->quote($ucm_id));
                 $database->query();
             }
             $database->setQuery("Delete From #__ucm_content Where core_body = " . $database->quote($plugin_call));
             $database->query();
             $database->setQuery("Insert Into #__ucm_content (\n                            core_type_alias, \n                            core_title, \n                            core_alias, \n                            core_body, \n                            core_created_time,\n                            core_modified_time,\n                            core_publish_up,\n                            core_state\n                         ) Values (\n                            'com_breezingforms.form',\n                            " . $database->quote($_POST['title']) . ",\n                            " . $database->quote(bf_stringURLUnicodeSlug($_POST['title'])) . ",\n                            " . $database->quote($plugin_call_new) . ",\n                            " . (!$ucm_id ? "'" . $tag_date->toSql() . "'," : "'" . $ucm_created . "',") . "\n                            '" . $tag_date->toSql() . "',\n                            " . (!$ucm_id ? "'" . $tag_date->toSql() . "'," : "'" . $ucm_created . "',") . "\n                            1\n                         )");
             $database->query();
             $ucm_id = JFactory::getDbo()->insertid();
             JFactory::getDbo()->setQuery("Select type_id From #__content_types Where type_alias = 'com_breezingforms.form'");
             $tag_typeid = JFactory::getDbo()->loadResult();
             JFactory::getDbo()->setQuery("Insert Into #__ucm_base (\n                            ucm_id, \n                            ucm_item_id, \n                            ucm_type_id, \n                            ucm_language_id\n                         ) Values (\n                            " . $ucm_id . ",\n                            " . (JRequest::getInt('id', 0) == 0 ? $insert : JRequest::getInt('id', 0)) . ",\n                            " . $tag_typeid . ",\n                            0\n                         )");
             JFactory::getDbo()->query();
             foreach ($tags_form_array as $tags_form_array_entry) {
                 JFactory::getDbo()->setQuery("Insert Into #__contentitem_tag_map (\n                                type_alias, \n                                core_content_id, \n                                content_item_id, \n                                tag_id, \n                                tag_date, \n                                type_id\n                             ) Values (\n                                'com_breezingforms.form',\n                                " . $ucm_id . ",\n                                " . (JRequest::getInt('id', 0) == 0 ? $insert : JRequest::getInt('id', 0)) . ",\n                                " . $tags_form_array_entry . ",\n                                '" . $tag_date->toSql() . "',\n                                " . $tag_typeid . "\n                             )");
                 try {
                     JFactory::getDbo()->query();
                 } catch (Exception $e) {
                 }
             }
         } else {
             if ($_POST['tags_form'] == '') {
                 $database->setQuery("Select core_content_id From  #__ucm_content Where core_body = " . $database->quote($plugin_call));
                 $ucm_id = $database->loadResult();
                 $database->setQuery("Delete From #__ucm_base Where ucm_id = " . $database->quote($ucm_id));
                 $database->query();
                 $database->setQuery("Delete From #__contentitem_tag_map Where core_content_id = " . $database->quote($ucm_id));
                 $database->query();
                 $database->setQuery("Delete From #__ucm_content Where core_body = " . $database->quote($plugin_call));
                 $database->query();
             }
         }
     }
     // TAGGING END
     $row->reorder("");
     JPluginHelper::importPlugin('breezingforms_addons');
     $dispatcher = JDispatcher::getInstance();
     $dispatcher->trigger('onPropertiesSave', array(JRequest::getInt('id', 0)));
     if (trim($caller) == '') {
         $caller = "index.php?option={$option}&act=manageforms&pkg={$pkg}";
         JFactory::getApplication()->redirect($caller);
     }
     JFactory::getApplication()->redirect('index.php?option=com_breezingforms&task=editform&act=editpage&form=' . intval($_POST['id']) . ($quickmode ? '&pkg=QuickModeForms' : ''));
 }