/**
* Set Post Status by Product Field Value
* http://gravitywiz.com/2012/05/04/set-post-status-by-field-value-advanced/
*/
// update "3" to the ID of your form
add_filter('gform_post_data_3', 'gform_dynamic_post_status', 10, 3);
function gform_dynamic_post_status($post_data, $form, $entry) {
// update "6" to the ID of your custom post status field
if($entry[6]) {
$values = explode('|', $entry[6]);
switch($values[0]) {
case 'Basic Package':
$post_data['post_status'] = 'draft';
break;
case 'Premium Package':
$post_data['post_status'] = 'publish';
break;
}
}
return $post_data;
}