| @@ -16,9 +16,9 @@ | ||
| 16 | 16 | if (!($current_user->ID && $current_user->has_cap('wppm_admin') || $current_user->has_cap('manage_options') || $current_user->ID && $current_user->has_cap('wppm_manager'))) { |
| 17 | 17 | exit; |
| 18 | 18 | } |
| 19 | 19 | ?> |
| 20 | -<form class='wppm_add_new_project wppm_bootstrap' onsubmit="return wppm_create_project();" id="wppm_add_new_project" method="post"> | |
| 20 | +<form class='wppm_add_new_project wppm_bootstrap' id="wppm_add_new_project" method="post"> | |
| 21 | 21 | <div class="wppm_headers row"> |
| 22 | 22 | <div class="col-sm-12"> |
| 23 | 23 | <span class="wppm-heading-inline" style="margin-left:15px;"> |
| 24 | 24 | <?php echo esc_html_e('Create Project','taskbuilder');?> |
| @@ -100,8 +100,9 @@ | ||
| 100 | 100 | <div class="col-sm-12"> |
| 101 | 101 | <ui class="wppm_filter_display_users_container"></ui> |
| 102 | 102 | </div> |
| 103 | 103 | </div> |
| 104 | + <?php do_action('wppm_after_project_fields_in_new_project_form');?> | |
| 104 | 105 | <?php if( $wppm_public_projects_permission==1) { ?> |
| 105 | 106 | <div id="wppm_public_projects_permission" class="row"> |
| 106 | 107 | <div class="col-sm-12"> |
| 107 | 108 | <span class="wppm_form_field_label"><b> |
| @@ -113,9 +114,9 @@ | ||
| 113 | 114 | </div> |
| 114 | 115 | <?php } ?> |
| 115 | 116 | <div class="row"> |
| 116 | 117 | <div class="wppm_frm_submit col-sm-12"> |
| 117 | - <button type="submit" class="wppm-submit-btn" id="wppm-submit-proj-btn"><?php echo esc_html_e('Add Project','taskbuilder'); ?></button> | |
| 118 | + <button type="submit" class="wppm-submit-btn" id="wppm-submit-proj-btn" onclick="wppm_create_project(event)"><?php echo esc_html_e('Add Project','taskbuilder'); ?></button> | |
| 118 | 119 | <button type="button" class="wppm_reset_btn" id="wppm_submit_proj_reset_btn" onclick="wppm_add_new_project()"><?php echo esc_html_e('Reset Form','taskbuilder') ?></button> |
| 119 | 120 | <input type="hidden" name="action" value="wppm_create_project" /> |
| 120 | 121 | <input type="hidden" name="_ajax_nonce" value="<?php echo esc_attr( wp_create_nonce( 'wppm_create_project' ) ); ?>"> |
| 121 | 122 | </div> |
| @@ -228,28 +229,40 @@ | ||
| 228 | 229 | function wppm_remove_user(e){ |
| 229 | 230 | jQuery(e).parent().parent().remove(); |
| 230 | 231 | } |
| 231 | 232 | |
| 232 | -function wppm_create_project(){ | |
| 233 | - if(!jQuery('#wppm_project_name').val()){ | |
| 234 | - alert("<?php esc_js(__('Project title is required','taskbuilder'))?>"); | |
| 235 | - return false; | |
| 236 | - } | |
| 237 | - var dataform = new FormData(jQuery('#wppm_add_new_project')[0]); | |
| 238 | - var is_tinymce = (typeof tinyMCE != "undefined") && tinyMCE.activeEditor && !tinyMCE.activeEditor.isHidden(); | |
| 239 | - var description = is_tinymce && tinymce.get('wppm_proj_description') ? tinyMCE.get('wppm_proj_description').getContent() : jQuery('#wppm_proj_description').val().trim(); | |
| 240 | - dataform.append('wppm_proj_description', description); | |
| 241 | - jQuery(document).trigger('wppm_create_project_dataform', [dataform]); | |
| 242 | - jQuery('#wppm_project_container').html(wppm_admin.loading_html); | |
| 243 | - <?php //echo do_action('wppm_create_project_dataform');?> | |
| 244 | - jQuery.ajax({ | |
| 245 | - url: wppm_admin.ajax_url, | |
| 246 | - type: 'POST', | |
| 247 | - data: dataform, | |
| 248 | - processData: false, | |
| 249 | - contentType: false | |
| 250 | - }) | |
| 251 | - .done(function (response_str) { | |
| 252 | - wppm_get_project_list(); | |
| 253 | - }); | |
| 233 | +function wppm_create_project(e){ | |
| 234 | + e.preventDefault(); // Always prevent default | |
| 235 | + | |
| 236 | + if (!jQuery('#wppm_project_name').val()) { | |
| 237 | + alert('Project title is required'); | |
| 238 | + return false; | |
| 239 | + } | |
| 240 | + var dataform = new FormData(jQuery('#wppm_add_new_project')[0]); | |
| 241 | + var is_tinymce = (typeof tinyMCE != "undefined") && tinyMCE.activeEditor && !tinyMCE.activeEditor.isHidden(); | |
| 242 | + var description = is_tinymce && tinymce.get('wppm_proj_description') ? tinyMCE.get('wppm_proj_description').getContent() : jQuery('#wppm_proj_description').val().trim(); | |
| 243 | + dataform.append('wppm_proj_description', description); | |
| 244 | + var validation = { | |
| 245 | + isValid: true | |
| 246 | + }; | |
| 247 | + jQuery(document).trigger('wppm_create_project_js_function', [ | |
| 248 | + dataform, | |
| 249 | + validation | |
| 250 | + ]); | |
| 251 | + if(!validation.isValid){ | |
| 252 | + return false; | |
| 253 | + } | |
| 254 | + jQuery(document).trigger('wppm_create_project_dataform', [dataform]); | |
| 255 | + jQuery('#wppm_project_container').html(wppm_admin.loading_html); | |
| 256 | + <?php //echo do_action('wppm_create_project_dataform');?> | |
| 257 | + jQuery.ajax({ | |
| 258 | + url: wppm_admin.ajax_url, | |
| 259 | + type: 'POST', | |
| 260 | + data: dataform, | |
| 261 | + processData: false, | |
| 262 | + contentType: false | |
| 263 | + }) | |
| 264 | + .done(function (response_str) { | |
| 265 | + wppm_get_project_list(); | |
| 266 | + }); | |
| 254 | 267 | } |
| 255 | 268 | </script> |