";
echo "";
// Use nonce for verification
echo '';
echo '';
echo '
';
echo "";
}
// save metabox
function etimeclockwp_callback_save($post) {
global $meta_box, $post;
$etimeclockwp_status = $post->post_status;
// Use nonce for verification
echo '';
echo '';
echo '';
}
// save
function etimeclockwp_save_meta_box_button($post_id) {
if (isset($_POST['etimeclockwp_submit']) && $_POST['etimeclockwp_submit'] == "1") {
// verify nonce
if (!wp_verify_nonce($_POST['etimeclockwp_MetaNonce'], basename(__FILE__))) {
return $post_id;
}
// check autosave
if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) {
return $post_id;
}
// update values
// name
update_post_meta($post_id,'etimeclockwp_name',sanitize_text_field($_POST['etimeclockwp_name']));
// user id
update_post_meta($post_id,'etimeclockwp_id',sanitize_text_field($_POST['etimeclockwp_id']));
// password
update_post_meta($post_id,'etimeclockwp_pwd',sanitize_text_field($_POST['etimeclockwp_pwd']));
// wordpress account
update_post_meta($post_id,'etimeclockwp_wp_account',sanitize_text_field($_POST['etimeclockwp_wp_account']));
// to avoid infinite loop
remove_action('save_post','etimeclockwp_save_meta_box_button');
$action_array = array(
'ID' => $post_id,
'post_status' => 'publish',
);
$result = wp_update_post($action_array);
// save the meta id key as a user meta value, this makes seeing if the user has a time clock account more more efficient
$user = get_user_by('slug',sanitize_text_field($_POST['etimeclockwp_wp_account']));
update_user_meta($user->ID, 'etimeclockwp_meta_id' , $result);
}
}
add_action( 'save_post', 'etimeclockwp_save_meta_box_button' );
// title
function etimeclockwp_modify_title_question( $data , $postarr ) {
if ($data['post_type'] == 'etimeclockwp_users') {
if (isset($_POST['etimeclockwp_name'])) {
$data['post_title'] = sanitize_text_field($_POST['etimeclockwp_name']);
}
}
return $data;
}
add_filter('wp_insert_post_data','etimeclockwp_modify_title_question','99',2);
// user table - fill table columns with data
function etimeclockwp_manage_button_columns( $column, $post_id ) {
global $post;
switch( $column ) {
case 'user_id' :
$etimeclockwp_id = sanitize_text_field(get_post_meta($post->ID,'etimeclockwp_id', true));
echo $etimeclockwp_id;
break;
default :
break;
}
}
add_action( 'manage_etimeclockwp_users_posts_custom_column', 'etimeclockwp_manage_button_columns', 10, 2 );
// titles for admin button table
function etimeclockwp_users_columns($columns) {
$columns = array(
'cb' => '',
'title' => __( 'User Name','etimeclockwp'),
'user_id' => __( 'User ID','etimeclockwp'),
);
return $columns;
}
add_filter('manage_edit-etimeclockwp_users_columns','etimeclockwp_users_columns');
// users table - remove quick links
function etimeclockwp_quick_links($actions, $post) {
if ($post->post_type =="etimeclockwp_users") {
unset($actions['inline hide-if-no-js']);
unset($actions['edit']);
unset($actions['trash']);
unset($actions['view']);
}
return $actions;
}
add_filter('post_row_actions','etimeclockwp_quick_links', 10, 2);
// users table - update message
add_filter('post_updated_messages', 'codex_etimeclockwp_users_updated_messages');
function codex_etimeclockwp_users_updated_messages( $messages ) {
global $post, $post_ID;
$messages['etimeclockwp_users'] = array(
1 => __('User Information updated.'),
);
return $messages;
}
// users table - remove subsubsub menu links
function etimeclockwp_users_table_sub_menu_links( $views ) {
unset($views['private']);
unset($views['mine']);
unset($views['publish']);
return $views;
}
add_filter('views_edit-etimeclockwp_users','etimeclockwp_users_table_sub_menu_links');