*/ if ( !defined( 'WPINC' ) ) { die; } /** * Builds page for editing a activity * * @param string $title Page title * @param string $action Display and name text for primary button * @param array $map Information about the activity * @param string $archive Set to 'archive' to disable all fields, default '' * @return string Page */ function acts_activity_management( $title, $action, $map = null, $archive = '' ) { global $wpdb; $current_url = ( isset($_SERVER['HTTPS']) ? 'https' : 'http' ) . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"; $current_url = remove_query_arg( 'action', $current_url ); $current_url = remove_query_arg( 'item_id', $current_url ); if ( $map === null ) { $map = array( 'name' => '', 'short_desc' => '', 'long_desc' => '', 'start' => date('Y-m-d'), 'end' => date('Y-m-d'), 'location_id' => '', 'responsible_id' => '', 'members' => array(), 'categories' => array(), 'plan_id' => '' ); } $parent_select = acts_build_select( Activities_Category::get_categories( 'id=>name' ), array( 'name' => 'category_parent', 'blank' => __( 'No Category Parent', 'activities' ) ) ); $disabled = ''; if ( $archive == 'archive' || ( !current_user_can( ACTIVITIES_ADMINISTER_ACTIVITIES ) && !Activities_Responsible::current_user_restricted_edit() ) ) { $disabled = 'disabled'; } $output = '

' . $title . '

'; $output .= Activities_Admin::get_messages(); add_thickbox(); $output .= ''; $output .= '
'; $output .= '
'; $output .= '

' . esc_html__( 'Activity Info', 'activities' ) . '

'; $output .= '
'; $output .= '
    '; $output .= '
  • ' . esc_html__( 'Name', 'activities' ) . ' *
  • '; $output .= '
  • '; $output .= '
  • ' . esc_html__( 'Short Description', 'activities' ) . '
  • '; $output .= '
  • '; $output .= '
  • ' . esc_html__( 'Long Description', 'activities' ) . '
  • '; $output .= '
  • '; $output .= '
'; $output .= '
    '; $output .= '
  • ' . esc_html__( 'Start date', 'activities' ) . '
  • '; $output .= '
  • '; $output .= '
  • ' . esc_html__( 'End date', 'activities' ) . '
  • '; $output .= '
  • '; $output .= '
  • ' . esc_html__( 'Responsible', 'activities' ) . '
  • '; $output .= '
  • '; $output .= acts_build_select_items( 'responsible', array( 'name' => 'responsible', 'id' => 'acts-activity-responsible', 'selected' => $map['responsible_id'], 'disabled' => Activities_Responsible::current_user_restricted_edit() || ( $disabled !== '' ), 'blank' => __( 'No Responsible', 'activities' ), ) ); if ( Activities_Responsible::current_user_restricted_edit() ) { $output .= ''; } $output .= '
  • '; $output .= '
  • ' . esc_html__( 'Location', 'activities' ) . '
  • '; $output .= '
  • '; $output .= acts_build_select_items( 'location', array( 'name' => 'location', 'id' => 'acts-activity-location', 'selected' => $map['location_id'], 'disabled' => $disabled !== '', 'blank' => __( 'No Location', 'activities' ) ) ); $output .= '
  • '; $output .= '
  • ' . esc_html__( 'Plan', 'activities' ) . '
  • '; $output .= '
  • '; $output .= acts_build_select_items( 'plan', array( 'name' => 'plan', 'id' => 'acts-activity-plan', 'selected' => $map['plan_id'], 'disabled' => $disabled !== '', 'blank' => __( 'No Plan', 'activities' ) ) ); $output .= '
  • '; $output .= '
'; //acts-activity-form-columns $output .= '
'; $output .= '

' . esc_html__( 'Activity Participants', 'activities' ) . ' ()' . '

'; $output .= acts_build_select_items( 'members', array( 'name' => 'member_list[]', 'id' => 'acts-activity-member-list', 'selected' => is_string( $map['members'] ) ? explode( ',', $map['members'] ) : $map['members'], 'multiple' => true, 'disabled' => $disabled !== '', 'blank' => false ) ); $button = ''; switch ($action) { case 'create': $button = esc_html__( 'Create', 'activities' ); break; case 'edit': $button = esc_html__( 'Save', 'activities' ); break; } $output .= '

'; if ( $archive != 'archive' && ( current_user_can( ACTIVITIES_ADMINISTER_ACTIVITIES ) || Activities_Responsible::current_user_restricted_edit() ) ) { $output .= get_submit_button( $button, 'button-primary', ($action . '_act'), false ); } else if ( $archive == 'archive' ){ $output .= '' . esc_html__( 'Activate', 'activities' ) . ''; } $output .= ' ' . esc_html__( 'Cancel', 'activities' ) . ''; if ( isset( $_GET['item_id'] ) || isset( $map['activity_id'] ) ) { $activity_id = acts_validate_id( (isset( $_GET['item_id'] ) ? $_GET['item_id'] : $map['activity_id']) ); $output .= ''; } $output .= '

'; $output .= '
'; $output .= wp_nonce_field( 'activities_activity', ACTIVITIES_ACTIVITY_NONCE, true, false ); $output .= '
'; //acts-create-wrap $output .= '
'; $output .= '
'; $output .= '

' . esc_html__( 'Categories', 'activities') . ' ' . get_submit_button( '+', 'button', 'show_category_form', false ) . '

'; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; $term_data = array(); foreach (Activities_Category::get_categories() as $term) { $tid = $term->term_id; $name = $term->name; $slug = $term->slug; $desc = $term->description; $parent = $term->parent; $term_data[] = $tid . ': {name: "' . wp_filter_nohtml_kses( $name ) . '", slug: "' . wp_filter_nohtml_kses( $slug ) . '", desc: "' . wp_filter_nohtml_kses( $desc ) . '", parent: "' . $parent . '"}'; $p_checked = ''; $a_checked = ''; if ( isset( $map['categories'][0] ) && $map['categories'][0] === $tid ) { $p_checked = 'checked="checked"'; } else if ( in_array( $tid, $map['categories'] ) ) { $a_checked = 'checked="checked"'; } $output .= ''; $output .= ''; $output .= ''; $output .= ''; $output .= ''; } $output .= ''; $output .= ''; $output .= '
' . esc_html__( 'Primary', 'activities' ) . '' . esc_html__( 'Additional', 'activities' ) . '
' . esc_html( $name ) . '
'; $output .= '
'; $output .= '
'; $output .= '
'; $output .= ''; return $output; }