function tutorial() { //load the file require_once EAB_PLUGIN_DIR . 'lib/pointers-tutorial/pointer-tutorials.php'; //create our tutorial, with default redirect prefs $tutorial = new Pointer_Tutorial('eab_tutorial', true, false); //add our textdomain that matches the current plugin $tutorial->set_textdomain = Eab_EventsHub::TEXT_DOMAIN; //add the capability a user must have to view the tutorial $tutorial->set_capability = 'manage_options'; $tutorial->hide_step = true; /* $tutorial->add_step(admin_url('edit.php?post_type=incsub_event&page=eab_settings'), 'incsub_event_page_eab_settings', '#incsub_event-slug', __('Event Slug', Eab_EventsHub::TEXT_DOMAIN), array( 'content' => '<p>' . esc_js( __('Change the root slug for events', Eab_EventsHub::TEXT_DOMAIN) ) . '</p>', 'position' => array( 'edge' => 'left', 'align' => 'center' ), )); $tutorial->add_step(admin_url('edit.php?post_type=incsub_event&page=eab_settings'), 'incsub_event_page_eab_settings', '#incsub_event-accept_payments', __('Accept Payments?', Eab_EventsHub::TEXT_DOMAIN), array( 'content' => '<p>' . esc_js( __('Check this to accept payments for your events', Eab_EventsHub::TEXT_DOMAIN) ) . '</p>', 'position' => array( 'edge' => 'left', 'align' => 'center' ), )); $tutorial->add_step(admin_url('edit.php?post_type=incsub_event&page=eab_settings'), 'incsub_event_page_eab_settings', '#incsub_event-display_attendees', __('Display RSVP\'s?', Eab_EventsHub::TEXT_DOMAIN), array( 'content' => '<p>' . esc_js( __('Check this to display RSVP\'s in the event details', Eab_EventsHub::TEXT_DOMAIN) ) . '</p>', 'position' => array( 'edge' => 'left', 'align' => 'center' ), )); $tutorial->add_step(admin_url('edit.php?post_type=incsub_event&page=eab_settings'), 'incsub_event_page_eab_settings', '#incsub_event-currency', __('Currency', Eab_EventsHub::TEXT_DOMAIN), array( 'content' => '<p>' . esc_js(__('Which currency will you be accepting payment in? See ', Eab_EventsHub::TEXT_DOMAIN)) . '<a href="https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_nvp_currency_codes" target="_blank">Accepted PayPal Currency Codes</a></p>', 'position' => array( 'edge' => 'left', 'align' => 'center' ), )); $tutorial->add_step(admin_url('edit.php?post_type=incsub_event&page=eab_settings'), 'incsub_event_page_eab_settings', '#incsub_event-paypal_email', __('PayPal E-Mail', Eab_EventsHub::TEXT_DOMAIN), array( 'content' => '<p>' . esc_js(__('PayPal e-mail address payments should be made to', Eab_EventsHub::TEXT_DOMAIN)) . '</p>', 'position' => array( 'edge' => 'left', 'align' => 'center' ), )); */ $tutorial->add_step(admin_url('post-new.php?post_type=incsub_event'), 'post-new.php', '#title', __('Event title', Eab_EventsHub::TEXT_DOMAIN), array('content' => '<p>' . __("What's happening?", Eab_EventsHub::TEXT_DOMAIN) . '</p>', 'position' => array('edge' => 'top', 'align' => 'center'), 'post_type' => 'incsub_event')); if (defined('AGM_PLUGIN_URL')) { $tutorial->add_step(admin_url('post-new.php?post_type=incsub_event'), 'post-new.php', '#incsub_event_venue_label', __('Event location', Eab_EventsHub::TEXT_DOMAIN), array('content' => '<p>' . __("Where? Enter the address or insert a map by clicking the globe icon", Eab_EventsHub::TEXT_DOMAIN) . '</p>', 'position' => array('edge' => 'right', 'align' => 'left'), 'post_type' => 'incsub_event')); } else { $tutorial->add_step(admin_url('post-new.php?post_type=incsub_event'), 'post-new.php', '#incsub_event_venue_label', __('Event location', Eab_EventsHub::TEXT_DOMAIN), array('content' => '<p>' . __("Where? Enter the address", Eab_EventsHub::TEXT_DOMAIN) . '</p>', 'position' => array('edge' => 'right', 'align' => 'left'), 'post_type' => 'incsub_event')); } $tutorial->add_step(admin_url('post-new.php?post_type=incsub_event'), 'post-new.php', '#incsub_event_times_label', __('Event time and dates', Eab_EventsHub::TEXT_DOMAIN), array('content' => '<p>' . __("When? YYYY-mm-dd HH:mm", Eab_EventsHub::TEXT_DOMAIN) . '</p>', 'position' => array('edge' => 'right', 'align' => 'left'), 'post_type' => 'incsub_event')); $tutorial->add_step(admin_url('post-new.php?post_type=incsub_event'), 'post-new.php', '#incsub_event_status_label', __('Event status', Eab_EventsHub::TEXT_DOMAIN), array('content' => '<p>' . __("Is this event still open to RSVP?", Eab_EventsHub::TEXT_DOMAIN) . '</p>', 'position' => array('edge' => 'right', 'align' => 'left'), 'post_type' => 'incsub_event')); $tutorial->add_step(admin_url('post-new.php?post_type=incsub_event'), 'post-new.php', '#incsub_event_paid_label', __('Event type', Eab_EventsHub::TEXT_DOMAIN), array('content' => '<p>' . __("Is this a paid event? Select 'Yes' and enter how much do you plan to charge in the text box that will appear", Eab_EventsHub::TEXT_DOMAIN) . '</p>', 'position' => array('edge' => 'right', 'align' => 'left'), 'post_type' => 'incsub_event')); $tutorial->add_step(admin_url('post-new.php?post_type=incsub_event'), 'post-new.php', '#wp-content-editor-container', __('Event Details', Eab_EventsHub::TEXT_DOMAIN), array('content' => '<p>' . __("More about the event", Eab_EventsHub::TEXT_DOMAIN) . '</p>', 'position' => array('edge' => 'bottom', 'align' => 'center'), 'post_type' => 'incsub_event')); $tutorial->add_step(admin_url('post-new.php?post_type=incsub_event'), 'post-new.php', '#incsub-event-bookings', __("Event RSVPs", Eab_EventsHub::TEXT_DOMAIN), array('content' => '<p>' . __("See who is attending, who may be attend and who is not after you publish the event", Eab_EventsHub::TEXT_DOMAIN) . '</p>', 'position' => array('edge' => 'bottom', 'align' => 'center'), 'post_type' => 'incsub_event')); $tutorial->add_step(admin_url('post-new.php?post_type=incsub_event'), 'post-new.php', '#publish', __('Publish', Eab_EventsHub::TEXT_DOMAIN), array('content' => '<p>' . __("Now it's time to publish the event", Eab_EventsHub::TEXT_DOMAIN) . '</p>', 'position' => array('edge' => 'right', 'align' => 'center'), 'post_type' => 'incsub_event')); //start the tutorial $tutorial->initialize(); // $tutorial->restart(6); return $tutorial; }
function tutorial2() { global $appointments; //load the file if (!class_exists('Pointer_Tutorial')) { require_once $appointments->plugin_dir . '/includes/external/pointer-tutorials.php'; } //create our tutorial, with default redirect prefs $tutorial = new Pointer_Tutorial('app_tutorial2', true, false); //add our textdomain that matches the current plugin $tutorial->set_textdomain = 'appointments'; //add the capability a user must have to view the tutorial $tutorial->set_capability = App_Roles::get_capability('manage_options', App_Roles::CTX_TUTORIAL); $tutorial->add_icon($appointments->plugin_url . '/images/large-greyscale.png'); $appointments_page = admin_url('admin.php?page=appointments'); $tutorial->add_step($appointments_page, 'toplevel_page_appointments', '.info-button', __('Appointment List', 'appointments'), array('content' => '<p>' . esc_js(__('Appointment records are grouped by their statuses. You can see these groupings by clicking the Info icon.', 'appointments')) . '</p>', 'position' => array('edge' => 'right', 'align' => 'center'))); $tutorial->add_step($appointments_page, 'toplevel_page_appointments', '.add-new-h2', __('Entering a Manual Appointment', 'appointments'), array('content' => '<p>' . esc_js(__('When you received appointments from your clients, they will be added to this page automatically. But you can always add a new appointment manually. Please click ADD NEW link and then click Next.', 'appointments')) . '</p>', 'position' => array('edge' => 'left', 'align' => 'top'))); $tutorial->add_step($appointments_page, 'toplevel_page_appointments', 'select[name="status"]', __('Entering Data for the New Appointment', 'appointments'), array('content' => '<p>' . esc_js(__('As you can see, you can enter all parameters here. Enter some random values and select status as PENDING, for this example. Then click Next', 'appointments')) . '</p>', 'position' => array('edge' => 'right', 'align' => 'center'))); $tutorial->add_step($appointments_page, 'toplevel_page_appointments', 'input[name="resend"]', __('Sending Confirmation emails Manually', 'appointments'), array('content' => '<p>' . esc_js(__('If you require payment, confirmation email is automatically sent after a Paypal payment. However if you are confirming appointments manually, you should check this checkbox for a confirmation email to be sent. You can also use this option for resending the confirmation email, e.g. after rescheduling an appointment.', 'appointments')) . '</p>', 'position' => array('edge' => 'right', 'align' => 'center'))); $tutorial->add_step($appointments_page, 'toplevel_page_appointments', '.save', __('Entering Data for the New Appointment', 'appointments'), array('content' => '<p>' . esc_js(__('Save and then click Next.', 'appointments')) . '</p>', 'position' => array('edge' => 'right', 'align' => 'center'))); $tutorial->add_step($appointments_page, 'toplevel_page_appointments', '.error', __('Entering Data for the New Appointment', 'appointments'), array('content' => '<p>' . esc_js(__('The result is shown here. Normally you should get a success message. Otherwise it means that you have a javascript problem on admin side.', 'appointments')) . '</p>', 'position' => array('edge' => 'left', 'align' => 'center'))); $tutorial->add_step($appointments_page, 'toplevel_page_appointments', '.info-button', __('Save New Appointment', 'appointments'), array('content' => '<p>' . esc_js(__('As we added this appointment as "Pending" we will see it under Pending appointments. Click Pending appointments and then click Next.', 'appointments')) . '</p>', 'position' => array('edge' => 'left', 'align' => 'center'))); $tutorial->add_step($appointments_page . '&type=pending', 'toplevel_page_appointments', '.info-button', __('Editing an Appointment', 'appointments'), array('content' => '<p>' . esc_js(__('You can edit any appointment record. Just hover on the record and then click See Details and Edit', 'appointments')) . '</p>', 'position' => array('edge' => 'left', 'align' => 'center'))); $tutorial->add_step($appointments_page . '&type=pending', 'toplevel_page_appointments', '.cancel', _x('Cancel', 'Drop current action', 'appointments'), array('content' => '<p>' . esc_js(__('It is always possible to Cancel. Please note that these records are NOT saved until you click the Save button. Thanks for using Appointments+', 'appointments')) . '</p>', 'position' => array('edge' => 'left', 'align' => 'center'))); if (isset($_GET["tutorial"]) && 'restart2' == $_GET["tutorial"]) { $tutorial->restart(); } //start the tutorial $tutorial->initialize(); return $tutorial; }