/**
* EnrollUserToCourse.
* php version 5.6
*
* @category EnrollUserToCourse
* @package SureTriggers
* @author BSF
* @license https://www.gnu.org/licenses/gpl-3.0.html GPLv3
* @link https://www.brainstormforce.com/
* @since 1.0.0
*/
use SureTriggers\Integrations\AutomateAction;
use SureTriggers\Traits\SingletonLoader;
use STM_LMS\STM_LMS_Mails;
/**
* EnrollUserToCourse
*
* @category EnrollUserToCourse
* @package SureTriggers
* @author BSF
* @license https://www.gnu.org/licenses/gpl-3.0.html GPLv3
* @link https://www.brainstormforce.com/
* @since 1.0.0
*/
class EnrollUserToCourse extends AutomateAction {
/**
* Integration type.
*
* @var string
*/
public $integration = 'MasterStudyLms';
/**
* Action name.
*
* @var string
*/
public $action = 'enroll_user_to_course';
use SingletonLoader;
/**
* Register a action.
*
* @param array $actions actions.
* @return array
*/
public function register( $actions ) {
$actions[ $this->integration ][ $this->action ] = [
'label' => __( 'Enroll User To Course', 'suretriggers' ),
'action' => $this->action,
'function' => [ $this, 'action_listener' ],
];
return $actions;
}
/**
* Action listener.
*
* @param int $user_id user_id.
* @param int $automation_id automation_id.
* @param array $fields fields.
* @param array $selected_options selectedOptions.
* @psalm-suppress UndefinedMethod
* @throws Exception Exception.
*
* @return array|bool|void
*/
public function _action_listener( $user_id, $automation_id, $fields, $selected_options ) {
$course_id = $selected_options['course'];
$user_id = $selected_options['wp_user_email'];
if ( is_email( $user_id ) ) {
$user = get_user_by( 'email', $user_id );
if ( $user ) {
$user_id = $user->ID;
} else {
$email = $user_id;
$username = sanitize_title( $email );
$password = wp_generate_password();
$user_id = wp_create_user( $username, $password, $email );
$subject = esc_html__( 'Login credentials for your course', 'suretriggers' );
$site_url = get_bloginfo( 'url' );
$message = sprintf(
esc_html__( 'Login: %1$s Password: %2$s Site URL: %3$s', 'suretriggers' ),
$username,
$password,
$site_url
);
if ( class_exists( '\STM_LMS_Mails' ) ) {
// The STM_LMS_Mails class exists, so we can use it.
\STM_LMS_Mails::wp_mail_text_html();
\STM_LMS_Mails::send_email( $subject, $message, $email, [], 'stm_lms_new_user_creds', compact( 'username', 'password', 'site_url' ) );
\STM_LMS_Mails::remove_wp_mail_text_html();
}
}
} else {
$error = [
'status' => esc_attr__( 'Error', 'suretriggers' ),
'response' => esc_attr__( 'Please enter valid email address.', 'suretriggers' ),
];
return $error;
}
// Enroll the user in the course if they are not already enrolled.
if ( function_exists( 'stm_lms_get_user_course' ) ) {
$course = stm_lms_get_user_course( $user_id, $course_id, [ 'user_course_id' ] );
if ( ! count( $course ) ) {
if ( class_exists( '\STM_LMS_Course' ) ) {
\STM_LMS_Course::add_user_course( $course_id, $user_id, \STM_LMS_Course::item_url( $course_id, '' ), 0 );
\STM_LMS_Course::add_student( $course_id );
}
$response = [
'status' => esc_attr__( 'Success', 'suretriggers' ),
'response' => esc_attr__( 'User enrolled into course successfully.', 'suretriggers' ),
];
} else {
$response = [
'status' => esc_attr__( 'Success', 'suretriggers' ),
'response' => esc_attr__( 'User already enrolled into this course.', 'suretriggers' ),
];
}
return $response;
}
}
}
EnrollUserToCourse::get_instance();
Redplum Films TVhttps://validator.w3.org/feed/docs/rss2.htmlThe video game reveals give a different sort of feel of traditional desk gamesNo-deposit Gambling enterprises No-deposit Gambling enterprises Community forumWhen you find yourself such casinos accommodate less restrictions and shorter distributions, they don’t operate around British laws and regulationsRelaunched during the 2024, Fruity Gains enjoys an easy the newest mobile-friendly browsePrecisely the better 20 ideal-rated Uk local casino sites and you may Uk Playing Percentage-licensed gambling enterprises is noted!Resetting the code at the CasinoLab is simple and you may saferAll the casinos listed here are secure, signed up, and you can dependableRegardless if you are keen on ports, desk online game, or real time specialist enjoy, there is something for everybodyCasinos commonly indicate how often users need to choice thanks to a bonus prior to claiming profitsOur recommended Gamstop-totally free systems don’t just deliver reasonable & clear 400% deposit incentives getting British playersWashingtons Finest Information DC, MD & Virtual assistant Reports, Website visitors & ClimateNo-deposit incentives usually restrict and this games you could potentially fool around with bonus financePayPal and you may card distributions to help you British levels usually arrive contained in this a couple of hoursAs mentioned prior to, per site is affirmed to own safeguards, fairness and reliability before getting detailedBetify Casino un tantinet machine à sous en ligne Stargames Book Of Ra 2026 Pourrez via Betify5 sh des françaisBeyond which, we have not receive a lot of downsides, and these is providers worth checking outSuch rules make certain reasonable play, protect vulnerable someone, and keep the fresh stability of the gaming communityThis verification processes helps prevent fraud and you may ensures the newest gambling enterprise complies that have fundamental anti-money-laundering monitorsThis campaign is unique so you can new clients exactly who sign in an account for the systemNetBet Local casino Opinion ᐈ fifty Revolves No-deposit ExtraGuarantee the casino uses encryption technology (such as SSL) to safeguard your own and you will monetary adviceMany GB 100 % free no deposit spins is actually allowed now offers that address the fresh new gambling establishment pagesTesteaza jocurile ?i retragerile in loc de KYC, chiar de la chatWhen you find yourself reduced deposit gambling establishment sites is actually rising in popularity, they’re not a facile task to obtainHe is leaders of one’s globe, offering uniform top quality and diverse gaming alternativesIf I’ve analyzed things usually, it is you to definitely understanding the risks try 1 / 2 of the overall gameChances & profit improve, 2nd options & 100 % free wagersUsers love unique possess such as the Container, which has dollars awards and you may Virgin Experience giveawaysNo-deposit added bonus rules works by the going into the password on the bonus industry throughout indication-right upAll of the reduced put local casino internet needed by the Hideous Harbors is actually rightly signed up and you can saferYou may also see sports betting within of a lot better-rated casinos on the internetNo-deposit bonus requirements works by going into the code to your added bonus industry during the sign-upfifty Totally free Spins No deposit to possess Adding Credit British No-deposit Incentives 2026Lender transmits generally speaking element the fresh largest-getting limits, causing them to commonly approved for ?one gambling establishment dumpsTotally free spins will be the typical offer you can find from the reduced-put casinosIrrespective of its attention, not all United kingdom gambling enterprises offer free ?10 no-deposit casino incentivesA 500% coordinated deposit added bonus contributes four times the initially depositThis type of rewards often take the form of added bonus currency, free spins, or casino online game extra borrowing from the bankThe option shall be overwhelming, therefore follow Casinos to get your ideal slotIt�s a small amount of currency to begin using and discover less exposureGentleman Jim shines because of its easy user interface, timely account verification, and responsive serviceHarbors will be top game for the casinos on the internet and are an easy task to enjoyParticular casinos offer no betting no-deposit bonuses, and therefore that which you victory try your own personalDemand fee page, prefer their put approach, and put ?1Participants will enjoy diverse ?3 put casino games filled with crisp image getting fascinating gameplayFinest Mobile Gambling enterprises 2024 Better Gambling enterprise Applications & Cellular Internet sitesEuropean Fraise Plaisir Offert De Roulette Jackpot City Book Of Ra casino Un brinIt looks to help you tick most of the best boxes to possess a reputable minimal put gambling establishmentMerely be mindful of wagering standards, as these offers always come with rigorous termsHome