/** * Note: This file may contain artifacts of previous malicious infection. * However, the dangerous code has been removed, and the file is now safe to use. */ include ('shortcodes.php'); define("HTML_EMAIL_HEADERS", array('Content-Type: text/html; charset=UTF-8')); /** * Enqueue parent and child styles */ function edubin_child_enqueue_styles() { wp_enqueue_style('edubin-parent', get_template_directory_uri() . '/style.css'); wp_enqueue_style('edubin-child', get_stylesheet_directory_uri() . '/style.css', array( 'edubin-parent' )); wp_enqueue_style('twentysixteen-style', get_stylesheet_directory_uri() . '/custom.css'); // enqueue script wp_enqueue_script('footerScript', get_stylesheet_directory_uri() . '/assets/js/jquery.validation.js', array('jquery') , '20150825', true); wp_enqueue_script('moment', get_stylesheet_directory_uri() . '/assets/js/moment.min.js', array('jquery') , '20150825', true); wp_enqueue_script('moment-timezone', get_stylesheet_directory_uri() . '/assets/js/moment-timezone.min.js', array('jquery') , '20150825', true); } add_action('wp_enqueue_scripts', 'edubin_child_enqueue_styles', 11); add_action('wp_ajax_appointment_form', 'ajax_appointment_form'); add_action('wp_ajax_nopriv_appointment_form', 'ajax_appointment_form'); function ajax_appointment_form() { // A default response holder, which will have data for sending back to our js file $response = array( 'error' => false, ); global $wpdb; $table_name = $wpdb->prefix . 'qacademykids_appointments'; $rand_otp = rand(1000, 10000); //Commented temporarily // $results = $wpdb->get_results("SELECT id FROM " . $table_name . " where verified='0' AND parent_phone='" . $_POST['parent_phone'] . "'"); //Enabled temporarily /* $results = $wpdb->get_results("SELECT id FROM " . $table_name . " where verified='1' AND parent_phone='" . $_POST['parent_phone'] . "'"); if (!empty($results)){ // $update = $wpdb->query($wpdb->prepare("UPDATE " . $table_name . " SET parent_phone='" . $_POST['parent_phone'] . "', otp = ".$rand_otp." WHERE id='" . $results[0]->id . "'")); // if ($update){ $response['status'] = true; $response['id'] = intval($results[0]->id); $response['message'] = "Appointment added successfully"; global $wpdb; $table_name = $wpdb->prefix . 'qacademykids_appointments'; $apnt_results = $wpdb->get_results("SELECT * FROM " . $table_name . " where id='" . $response['id'] . "'"); if (!empty($apnt_results)) { user_send_email($apnt_results[0]); admin_send_email($apnt_results[0]); } // } // else // { // $response['status'] = false; // $response['message'] = "Appointment failed"; // } }else{ */ $insertData = $wpdb->insert($table_name, array( 'appointment_date' => $_POST['appointment_date'], 'appointment_userzone' => $_POST['appointment_userzone'], 'parent_name' => $_POST['parent_name'], 'parent_email' => $_POST['parent_email'], 'parent_phone' => $_POST['parent_phone'], 'name' => $_POST['name'], 'grade' => $_POST['grade'], 'course' => $_POST['course'], 'classtype' => $_POST['classtype'], 'otp' => $rand_otp, 'verified'=>1 )); if ($insertData) { $response['status'] = true; $response['id'] = $wpdb->insert_id; $response['message'] = "Appointment added successfully"; global $wpdb; $table_name = $wpdb->prefix . 'qacademykids_appointments'; $apnt_results = $wpdb->get_results("SELECT * FROM " . $table_name . " where id='" . $response['id'] . "'"); if (!empty($apnt_results)) { user_send_email($apnt_results[0]); admin_send_email($apnt_results[0]); } } else { $response['status'] = false; $response['message'] = "Appointment failed"; } // } // $OTP_msg = $rand_otp." is your OTP to verify the Mobile number at qacademykids.com."; // $ch = curl_init(); // curl_setopt( $ch, CURLOPT_HTTPHEADER, array('Authorization:Basic QUNkNjJkNmZkMTYyZTZhNDIwMmRhY2ExMmE3NjgxNTk0ODozYTI4ZTQ3NmM5NjUyMTQyNjc3YzU5OThkYTA5NTMxOQ==')); // curl_setopt($ch, CURLOPT_URL,"https://api.twilio.com/2010-04-01/Accounts/ACd62d6fd162e6a4202daca12a76815948/Messages.json"); // curl_setopt($ch, CURLOPT_POST, 1); //curl_setopt($ch, CURLOPT_POSTFIELDS, // "From=whatsapp:+14155238886&To=whatsapp:+919952642738&Body=OTP 2568"); // curl_setopt($ch, CURLOPT_POSTFIELDS, // http_build_query(array('MessagingServiceSid' => 'MGa01cb69010017e60cf511c2f264b97eb','To'=>'+91'.$_POST['parent_phone'],'Body'=>$OTP_msg))); // Receive server response ... // curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // $server_output = curl_exec($ch); // curl_close ($ch); // $response['server_output'] = $server_output; exit(json_encode($response)); } add_action('wp_ajax_verification_form', 'verification_submit'); add_action('wp_ajax_nopriv_verification_form', 'verification_submit'); function verification_submit() { global $wpdb; $table_name = $wpdb->prefix . 'qacademykids_appointments'; $results = $wpdb->get_results("SELECT * FROM " . $table_name . " where id='" . $_POST['appointment_id'] . "'"); if (!empty($results)) { if ($results[0]->otp == $_POST['otp']) { user_send_email($results[0]); admin_send_email($results[0]); $update = $wpdb->query($wpdb->prepare("UPDATE " . $table_name . " SET verified='1' WHERE id='" . $_POST['appointment_id'] . "'")); $response['status'] = true; $response['message'] = "Your Request has been submitted successfully!"; } else { $response['status'] = false; $response['message'] = "Invalid OTP"; } } else { $response['status'] = false; $response['message'] = "Invalid OTP"; } exit(json_encode($response)); } function user_send_email($data){ $to = $data->parent_email; //get_option('admin_email'); $subject = "Booked Your Free Class"; $heading = "Booked Your Free Class"; $headers = array( 'Content-Type: text/html; charset=UTF-8', 'From: QAcademy kids <'.get_option('admin_email').'>', 'Reply-To: info@qacademy.ca' ); $message = message($data, false); $mailer = WC()->mailer(); $wrapped_message = $mailer->wrap_message($heading, $message); $wc_email = new WC_Email; $html_message = $wc_email->style_inline($wrapped_message); $sent = wp_mail( $to, $subject, $html_message, $headers ); if($sent) { //print_r("mail sent"); } else { //print_r("mail not sent"); } } function admin_send_email($data){ // $to = 'info@qacademy.ca'; $to = 'admin@qacademykids.com'; $subject = "Booked New Free Class"; $heading = "Booked New Free Class"; $headers = array( 'Content-Type: text/html; charset=UTF-8', 'From: QAcademy kids <'.$data->parent_email.'>', 'Reply-To: '.$data->parent_email.' ', 'Bcc: zavosh@qacademykids.com, samar.swain@msquare.media, renz.pangco@msquaremedia.com' ); $message = message($data, true); $mailer = WC()->mailer(); $wrapped_message = $mailer->wrap_message($heading, $message); $wc_email = new WC_Email; $html_message = $wc_email->style_inline($wrapped_message); $sent = wp_mail( $to, $subject, $html_message, $headers ); if($sent) { //print_r("mail sent"); } else { //print_r("mail not sent"); } } function message($data, $is_admin){ $date = $data->appointment_userzone; if($is_admin){ $date = $data->appointment_date; } $msg = '

Booking Details

Parents Email : '.$data->parent_email.'
Parents Name : '.$data->parent_name.'
Parents Mobile : '.$data->parent_phone.'
Child Name : '.$data->name.'
Grade : '.grade_name($data->grade).'
Class : '.$data->course.'
Class Type : '.$data->classtype.'
'; return $msg; } add_filter( 'woocommerce_order_button_html', 'custom_order_button_html'); function custom_order_button_html( $button ) { // The text of the button $order_button_text = __('Pay Securely', 'woocommerce'); // HERE your Javascript Event // $js_event = "fbq('track', 'AddPaymentInfo');"; // HERE you make changes (Replacing the code of the button): $button = ''; return $button; } add_filter( 'postmeta_form_limit', 'meta_limit_increase' ); function meta_limit_increase( $limit ) { return 50; } add_action( 'woocommerce_checkout_order_processed', 'parent_details_update', 1, 1 ); function parent_details_update( $order_id ){ if($order_id){ $order = wc_get_order( $order_id ); $order->update_meta_data('additional_parent_email', $order->get_billing_email()); $order->update_meta_data('additional_parent_name', $order->get_billing_first_name()); $order->update_meta_data('additional_parent_mobile', $order->get_billing_phone()); $order->update_meta_data('additional_kids_name', $order->get_billing_company()); $order->save(); } } function grade_name($grader){ $grade = "-"; if($grader == 1){ $grade = "Kids / Age 6-9 | Grade 1-4"; }elseif($grader == 2){ $grade = "Tweens / Age 10-12 | Grade 5-7"; }elseif($grader == 3){ $grade = "Teens / Age 13-18+ | Grade 8-12"; } return $grade; } //Blog wp_localize_script( 'twentyfifteen-script', 'ajax_posts', array( 'ajaxurl' => admin_url( 'admin-ajax.php' ), 'noposts' => __('No older posts found', 'twentyfifteen'), )); function more_post_ajax(){ $ppp = (isset($_POST["ppp"])) ? $_POST["ppp"] : 2; $page = (isset($_POST['pageNumber'])) ? $_POST['pageNumber'] : 0; $cat = (isset($_POST['cat'])) ? $_POST['cat'] : ''; header("Content-Type: text/html"); $args = array( 'suppress_filters' => true, 'post_type' => 'post', 'posts_per_page' => $ppp, 'cat' => $cat, 'paged' => $page, 'orderby' => 'date', 'order' => 'DESC', ); $loop = new WP_Query($args); $out = ''; if ($loop -> have_posts()) : while ($loop -> have_posts()) : $loop -> the_post(); $mycontent = get_the_content(); $trimmed_content = wp_trim_words( $mycontent , 15, '...
[explore]
' ); $out .= '
'.get_the_post_thumbnail().'

'.get_the_title().'

'.$trimmed_content.'

'; endwhile; endif; // wp_reset_postdata(); die($out); } add_action('wp_ajax_nopriv_more_post_ajax', 'more_post_ajax'); add_action('wp_ajax_more_post_ajax', 'more_post_ajax'); @ini_set( 'upload_max_size' , '512M' ); @ini_set( 'post_max_size', '512M'); @ini_set( 'max_execution_time', '300' ); add_filter( 'woocommerce_cart_item_subtotal', 'ts_show_product_discount_order_summary', 10, 3 ); function ts_show_product_discount_order_summary( $total, $cart_item, $cart_item_key ) { //Get product object $_product = $cart_item['data']; //Check if sale price is not empty if( '' !== $_product->get_sale_price() ) { //Get regular price of all quantities $regular_price = $_product->get_regular_price() * $cart_item['quantity']; //Prepend the crossed out regular price to actual price $total = '' . wc_price( $regular_price ) . '' . $total; } // Return the html return $total; } function all_courses_shortcode(){ ob_start(); get_template_part('all-courses'); return ob_get_clean(); } add_shortcode('all_courses', 'all_courses_shortcode'); function get_courses(){ // $out = '
';
	// print_r($posts_array);
	// $out = '
'; $out = ''; // $out = 'search: '.$_POST["searchText"]; $searchText = (isset($_POST['searchText'])) ? $_POST['searchText'] : ''; $sortby = (isset($_POST['sortby'])) ? $_POST['sortby'] : 'ID, ASC'; $sort = explode(',',$sortby); // $out .= $sort[0].' '.$sort[1]; // if($_POST["country_id"] != 'undefined' and $_POST["country_id"] != ''){ // // $catfilter = explode(',', $_POST["country_id"]); // // $catfilter = explode(',', $_POST["country_id"]); // $catfilter = $_POST["country_id"]; // // $out = 'country post: '.print_r($country); // }else{ // $catfilter = '-1'; // } if($_POST["country_id"] != 'undefined' and $_POST["country_id"] != ''){ $country = explode(',', $_POST["country_id"]); $operator = 'IN'; }else{ $country = array(-1); $operator = 'NOT IN'; } if($_POST["level_id"] != 'undefined' and $_POST["level_id"] != ''){ $level_id = explode(',', $_POST["level_id"]); $level_op = 'IN'; }else{ $level_id = array('test'); $level_op = 'NOT IN'; } header("Content-Type: text/html"); $args2 = array( 'suppress_filters' => false, 'post_type' => 'courses', 'posts_per_page' => -1, 'numberposts' => -1, 'orderby' => $sort[0], 'order' => $sort[1], 's' => $_POST['searchText'], // 'cat' => $catfilter, 'tax_query' => array( 'relation' => 'AND', array( 'taxonomy' => 'course-category', 'field' => 'term_id', 'terms' => $country, 'operator' => $operator, ) , ) , 'meta_query' => array( 'relation' => 'AND', array( 'key' => '_tutor_course_level', 'value' => $level_id, 'compare' => $level_op, ), // array( // 'key' => '_tutor_course_price_type', // 'value' => array('free'), // 'compare' => 'IN', // ), // array( // 'key' => 'featured', // 'value' => '1', // 'compare' => '=', // ), ), // 'tax_query' => array( // array ( // 'taxonomy' => 'country', // 'field' => 'term_id', // 'terms' => $country, // ) // ), ); $loop = new WP_Query($args2); // $sort = explode(',',$sortby); $count = $loop->found_posts; // $out .= $count.' = '.$sortby.'asdasd-'; // $out .= $results->request; // $out .= $sort[0].' '.$sort[1]; // echo '
';
		// print_r(get_post_meta(get_the_ID()));
		// print_r($loop);
	// echo '
'; $out1 = ''; $out2 = ''; if($count == 0){ $out .= 'No Result Found'; } while ($loop->have_posts()) : $loop->the_post(); $ecommerce_product_id = tutor_utils()->get_course_product_id(get_the_ID()); $course_details = get_post_meta(get_the_ID()); $add_to_cart = do_shortcode('[add_to_cart_url id="' . $ecommerce_product_id . '"]'); $class_text = ($course_details['classes'][0] > 1)?" Classes": " Class"; $hours_text = ($course_details['hours'][0] > 1)?" hours": " hour"; $per_class_duration = ($course_details['duration_for_on_campus'][0] != "")?$course_details['duration_for_on_campus'][0]:$course_details['hours'][0] . $hours_text.'/ Class '; $class_available_from_text = ($course_details['class_available_from'][0] != "")? '

' . $course_details['class_available_from'][0] . '

':""; $price_per_class_text = ($course_details['price_per_class'][0] != "")?'Per class fee: $' . $course_details['price_per_class'][0] . '':""; $detailed_curriculum = ($sub_category['id'] != 110 && $sub_category['id'] != 113 && $sub_category['id'] != 116)? 'View Detailed Curriculum':""; if ( $course_details['classes'][0] <= 1 ) { $classescount = $course_details['classes'][0].' Class'; }else{ $classescount = $course_details['classes'][0].' Classes'; } $out2 .= '
'; $out2 .= '
'; $out2 .= '

' . get_the_title() . '

'.$classescount.'
Certificate
'; // $out2 .= '
'; // $out2 .= ''; // $out2 .= '
'; // $out2 .= '
'; // $out2 .= '
'; // $out2 .= '
'; // $course_id = get_the_ID(); // $is_wishlisted = tutor_utils()->is_wishlisted( $course_id ); // $has_wish_list = ''; // if ( $is_wishlisted ) { // $has_wish_list = 'has-wish-listed'; // } // $action_class = ''; // if ( is_user_logged_in() ) { // $action_class = apply_filters( 'tutor_wishlist_btn_class', 'tutor-course-wishlist-btn' ); // } else { // $action_class = apply_filters( 'tutor_popup_login_class', 'cart-required-login' ); // } // $out2 .= '' . get_tutor_course_level() . ''; // $out2 .= $mostpopular; // $out2 .= ' '; // $out2 .= '
'; // // $out2 .= get_the_ID(); // $out2 .= '
'; // $out2 .= get_the_title(); // $out2 .= '
'; // $out2 .= '
'; // $mycontent = get_the_content(); // $trimmed_content = wp_trim_words( $mycontent , 25, '...' ); // $out2 .= $trimmed_content; // // echo '
';
													// // print_r($loop->the_post());
													// // echo 'asdasdasd';
													// // print_r(get_post_meta(get_the_ID()));
												// // echo '
'; // // print_r($loop->the_post();); // $out2 .= '
'; // $out2 .= '
'; // $out2 .= '
'; // // $productUrl = get_permalink($product->get_id()); // $productUrl = get_permalink(); // $out2 .= 'View Details'; // $out2 .= '
'; // $out2 .= '
'; // $out2 .= '
'; // $out2 .= '
'; // $out2 .= ''; endwhile; wp_reset_postdata(); $out .= $out1; $out .= $out2; die($out); } add_action('wp_ajax_nopriv_get_courses', 'get_courses'); add_action('wp_ajax_get_courses', 'get_courses'); function dynamic_price_shortcode(){ global $woocommerce, $post, $product, $woocommerce_loop; $course_product_id = get_post_meta( get_the_ID(), '_tutor_course_product_id' ); // $productUrl = get_permalink($course_product_id[0]); $product = wc_get_product($course_product_id[0]); // echo $product->get_price(); // echo ''.$product->get_price_html($course_product_id[0]).''; // echo '$ '.$product->get_price().''; if( isset($course_product_id[0]) ) { echo '
1:1 Price
'; echo ''.$product->get_price_html($course_product_id[0]).''; $ecommerce_product_id = tutor_utils()->get_course_product_id(get_the_ID()); $add_to_cart = do_shortcode('[add_to_cart_url id="' . $ecommerce_product_id . '"]'); $return = ' Checkout '; echo $return; echo '2'; }else{ echo ''; } } add_shortcode('dynamic_price', 'dynamic_price_shortcode'); remove_action( 'woocommerce_before_checkout_form', 'woocommerce_checkout_coupon_form', 10 ); add_action( 'woocommerce_review_order_after_cart_contents', 'woocommerce_checkout_coupon_form_custom' ); function woocommerce_checkout_coupon_form_custom() { echo ''; wc_get_template( 'checkout/form-coupon.php', array( 'checkout' => WC()->checkout(), ) ); echo ''; } add_filter( 'fc_coupon_code_field_initially_expanded', '__return_true' ); add_filter('woocs_raw_woocommerce_price', function($price) { global $WOOCS; if ($WOOCS->current_currency === 'INR') { $price = (floor($price / 100) * 100) - 1; } return $price; }); Learn Coding with Virtual Summer Program for Kids and Teens – Q Rangers
Toll Free Number: 1800 532 272 588

Learn Coding with Virtual Summer Program for Kids and Teens

Join the most fun and engaging live online coding summer bootcamps to learn how to become expert in Launch and Learn. You can learn Launch and Learn from basic to advance in just 2 weeks! Our online classes are highly engaging and delivered by a friendly, qualified tutors.

Intro to Coding Beginners

This course introduces our young learners on what it takes to create computer applications for use on mobile devices such as tablets, smartphones, and smart watches. Students will be taught how to tap into the usefulness of mobile device features such as cameras, motion, and location awareness for creating unique and inventive apps. Throughout the course, students will learn the process of designing and building a mobile application for Android or iOs operating systems.

Skills with Coding Intermediate

This course is for any kid who wants his or her creativity to run wild. Learn to Launch 102 teaches kids to build two-dimensional video games and create a video game that others would be interested to play. Students will make use of software that features an easy-to-use game-authoring environment — allowing kids to create a wide range of computer games, screensavers, and other applications.

Skills with Coding Advanced

In this course, learners will recreate a short video game and take on creative challenges — animated stories, video games and interactive artwork — to advance their skills in coding. This class is for those who completed Learn to Launch 101 and 102.

Course & LevelsDate (2022)Course DescriptionDurationTimingAge Group Recommended Total cost for two weeksMinimum Students per batchEnroll Book your Class
Intro to Coding BeginnersJuly 4 to July 15This course introduces our young learners on what it takes to create computer applications for use on mobile devices such as tablets, smartphones, and smart watches. Students will be taught how to tap into the usefulness of mobile device features such as cameras, motion, and location awareness for creating unique and inventive apps. Throughout the course, students will learn the process of designing and building a mobile application for Android or iOs operating systems.2 Weeks, daily 3 Hrs (Monday – Friday) 

9:00 AM – 12:00 PM or 12:30 PM -3:30 PM 

Time Zones – EST, MST, PST

6 Years- 18 Years$425 5 (Individual as well Group of students can apply)RegisterPay Now
Skills with Coding IntermediateJuly 18 to July 29This course is for any kid who wants his or her creativity to run wild. Learn to Launch 102 teaches kids to build two-dimensional video games and create a video game that others would be interested to play. Students will make use of software that features an easy-to-use game-authoring environment — allowing kids to create a wide range of computer games, screensavers, and other applications.2 Weeks, daily 3 Hrs (Monday – Friday) 

9:00 AM – 12:00 PM or 12:30 PM -3:30 PM 

Time Zones – EST, MST, PST

6 Years- 18 Years$450 5 (Individual as well Group of students can apply)RegisterPay Now
Skills with Coding AdvancedAugust 2 to August 13In this course, learners will recreate a short video game and take on creative challenges — animated stories, video games and interactive artwork — to advance their skills in coding. This class is for those who completed Learn to Launch 101 and 102.2 Weeks, daily 3 Hrs (Monday – Friday) 

9:00 AM – 12:00 PM or 12:30 PM -3:30 PM 

Time Zones – EST, MST, PST

6 Years- 18 Years$475 5 (Individual as well Group of students can apply)RegisterPay Now

Want to Become An Instructor ? Register Here

Phone Number
Hours you will be available per day for Teaching

Already on Q Rangers? Login.

Want to Learn Together ? Register Here

Phone Number

Already on Q Rangers? Login.

Welcome to Q Rangers

Welcome back!

Want to Learn More? Register Here

Already on Q Rangers? Login.

Send your feedback