Chat with us, powered by LiveChat

Quickrides Knowledge Base Get Support 24/7

Subadmin

You can add new roles such as manager or Subadmin in Quickworks based on your needs. After that, you may add workers and give them roles. All you have to do is give them the roles. The admin can designate a Subadmin to oversee daily activities. The admin can keep an eye on the access he grants to his managers. He would need to create a position for the manager before adding or creating a Subadmin.

To delegate his work, the admin can use the subadmin feature. The admin can add managers who can take charge of one or more modules at once. Quickrides is an effective platform for ride management. Businesses can use it to optimize daily delivery operations. It makes the smooth integration of management and drivers possible.

In this section, we’ll guide you through the steps involved in adding a Subadmin and giving them roles.
Subadmin Quickrides

  • To add a new subadmin, click on the add button. You will see two tabs by the headings personal & module.
  • In the personal tab, the admin can fill in the details of the person such as first name, last name, and others.
  • In the module tab, the admin can select the module that they want the subadmin to handle.
  • The admin can also select and allow access to subadmin to view, edit, or delete a particular module feature.
  • All the listed subadmins can be seen here with their details such as image, admin info, and phone number.
  • From this status tab admin can change the activity status of a particular subadmin, from active to blocked and vice versa.
  • Next to this is the action tab which allows quick access to admin to edit the details of a subadmin or delete a subadmin, if required.

With Quickrides, the admin has total control over monitoring real-time operations and can obtain a thorough picture of the productivity and workload of the field force.

View Demo

Role of Sub-Admin in Taxi Booking App l Admin Panel features l Quickrides- a Ride- Hailing Software

Role of Sub-Admin in Taxi Booking App l Admin Panel features l Quickrides- a Ride- Hailing Software

var requesturl = window.location.href; var urllink = encodeURIComponent(requesturl); function linkWithParamRow() { window.open('https://api.whatsapp.com/send?phone=+918288926964&text=Hello,%20%20Team%20Quick%20Works,%20%20'+urllink, '_blank'); } $(document).ready(function() { $('form').each(function() { // <- selects every
on page var FormID = $(this).attr('id'); var Formrole = $(this).attr('role'); var notgothere = $(this).attr('notgothere'); if(((FormID != 'videos_srch_frm') || Formrole != 'search') && (FormID != 'pass-protct') && (notgothere != 'notgothere')) { if(FormID != 'commentform') { $(this).submit(function(e) { e.preventDefault(); if (! $(this).valid()) { return false; } }).validate({ onkeyup: function(element) { $(element).valid(); }, rules: { fullname : { required: true, minlength: 3, maxlength: 30, alpha: true }, signup_first_name : { required: true, minlength: 3, alpha: true }, signup_last_name : { required: true, alpha: true }, signup_password : { required: true, minlength: 8, }, phonenumber : { required: true, digits: true, minlength: 6, maxlength: 15, mobileValidation: $(this).find(':input[name=phonenumber]').val() }, phone_number : { required: true, digits: true, minlength: 6, maxlength: 15, mobileValidation: $(this).find(':input[name=phone_number]').val() }, SelectBudget : 'required', ProjectRequirements : { required: true, minlength: 15, maxlength: 700 }, email: { required: true, email: true,//add an email rule that will ensure the value entered is valid email id. maxlength: 255, }, emailaddress: { required: true, email: true,//add an email rule that will ensure the value entered is valid email id. maxlength: 255, }, address_data : { required: true, locMethod: true }, sliderAmount: { required: function(element) { let form = $(element).closest('form'); return !form.data('sliderInteracted'); }, }, }, highlight: function(input) { $(input).addClass('empty_value'); }, unhighlight: function (input) { $(input).removeClass('empty_value'); }, invalidHandler: function(form, validator) { var errors = validator.numberOfInvalids(); if (errors) { validator.errorList[0].element.focus(); } }, errorPlacement: function(error, element){ if (element.attr("name") == "sliderAmount") { let $parent = element.closest('.rangesldr'); $parent.find('.errorbudget').show(); } else if (element.attr("name") == "emailaddress") { //error.insertAfter(element) var lastError = $(element).data('lastError'), newError = $(error).text(); $(element).data('lastError', newError); if (newError !== '') { $(element).tooltip('dispose').tooltip({title: newError}).tooltip('show'); } } else { error.insertAfter(element) } }, success: function (label, element) { $(element).tooltip('hide'); }, submitHandler: function(form) { var formID = form.id; var formData = new FormData( this[0] ); var str = $(form).serializeArray(); var formData = new FormData(); $.each(str, function(i, val) { formData.append(val.name, val.value); }); $(form).find(':input[type=submit]').prop('disabled', true); var formID = form.id; if(formID == 'thank_you_subscription_form'){ var actionurl = 'https://quick-works.com/wp-content/themes/quickworks/subscription-ajax-form.php'; } else { if(form.form_name.value == 'Download EBook') { $(form).find(':input[type=submit]').val("downloading"); } else { $(form).find(':input[type=submit]').val("Submitting..."); } var full_number = form.full_number.value; if($(form).find(':input[name=phonenumber]').length>0){ var a = form.phonenumber.value; var code = $(form).find('.iti__selected-dial-code').text(); formData.append("country_code", code); if(full_number == '') { formData.append("full_number", code+a); } } else if($(form).find(':input[name=phone_number]').length>0){ var a = form.phone_number.value; var code = $(form).find('.iti__selected-dial-code').text(); formData.append("country_code", code); if(full_number == '') { formData.append("full_number", code+a); } } formData.append("form_id", formID); if(formID == 'pln_sinp') { var actionurl = 'https://quick-works.com/wp-content/themes/quickworks/custom-signup-submission.php'; } else { var actionurl = 'https://quick-works.com/wp-content/themes/quickworks/custom-form-submission.php'; } } $.ajax({ type: "POST", url: actionurl, data: formData, beforeSend: function(){ if(formID != 'thank_you_subscription_form'){ $('.bdy_wrp').addClass("ajax-loader"); } if(formID == 'thank_you_subscription_form'){ $(".sbct_frm #thank_you_subscription_form").addClass("subsc-loader"); } }, success: function(data) { $(form).find(':input[type=submit]').val("Submit"); $(form).find(':input[type=submit]').prop('disabled', false); if(formID == 'thank_you_subscription_form'){ $(form).find("#emailaddress").val(''); $(".sbct_frm #thank_you_subscription_form").removeClass("subsc-loader"); $(form).siblings('#thank_you_subscription_mesg').html(data); setTimeout(function(){ $(form).siblings('#thank_you_subscription_mesg').hide(); }, 8000); } else if(formID == 'demo_vid') { $('.bdy_wrp').removeClass("ajax-loader"); $("#"+formID).trigger('reset'); $('#youtube_video').attr('src', form.vdo_url.value + '?autoplay=1'); $('#watchvideo').modal('show'); $('#commonpopupvdo').modal('hide'); } else { $('.bdy_wrp').removeClass("ajax-loader"); if(data == "success") { // $(".notify-msg").show().delay(7000).fadeOut(); $("#"+formID).trigger('reset'); window.location.href = 'https://quick-works.com/thankyou'; } else if(data.includes('adminLogin')) { $("#signupModal").modal('show'); $("#"+formID).trigger('reset'); window.location.href = data; } else { if(formID == 'pln_sinp') { $(".notify-msg-error").html(''); $(".notify-msg-error").html(data); $(".notify-msg-error").css("display", "flex").show().delay(7000).fadeOut(); } else { $(".notify-msg-error").show().delay(7000).fadeOut(); $("#"+formID).trigger('reset'); } } } }, error: function(er) { $('.bdy_wrp').removeClass("ajax-loader"); if(formID == 'thank_you_subscription_form'){ $('.sbct_frm #thank_you_subscription_form').removeClass("subsc-loader"); } console.log('System Error'); }, complete: function(data) { if(formID == 'footer_custom_form') { $(form).find(':input').not(':button, :submit, :reset, :hidden').val('').removeAttr('checked').removeAttr('selected'); } }, cache: false, contentType: false, processData: false }); return false; } }); } } }) $.validator.addMethod("alpha", function(value, element) { return this.optional(element) || value == value.match(/^[a-zA-Z\s]+$/); }, 'Please Enter only Alphabets'); jQuery.validator.addMethod("locMethod", function(value, element) { if (googleAdressFill === 0) return this.optional(element); else return true; }, "Please choose from the sugguested location."); jQuery.validator.addMethod("moduleMethod", function(value, element) { if (moduledt === 1) return this.optional(element); else return true; }, "Please select at least one Module."); $.validator.messages.required = function (param, input) { //console.log(input.tagName); if(input.tagName == 'SELECT'){ var str = input.innerHTML; var c = str.substring(0, str.indexOf('')); var mySubString = c.substring( str.indexOf(">") + 1, str.lastIndexOf("") ); return 'Please ' + mySubString; } else if(input.tagName == 'TEXTAREA'){ return 'Please Enter Your Description'; } else if(input.type == 'password'){ return 'Please Enter Your Password'; } else { return 'Please Enter Your ' + input.placeholder; } } $.validator.messages.minlength = function (param, input) { if(input.name == 'signup_password'){ return 'Your password must be have at least 8 characters long'; } else{ return 'Please enter at least ' + param + ' characters for ' + input.placeholder; } } $.validator.messages.maxlength = function (param, input) { return 'Please enter no more than ' + param + ' characters for ' + input.placeholder; } $.validator.messages.digits = function (param, input) { return 'Please enter only digits for ' + input.placeholder; } $.validator.addMethod("mobileValidation", function(value, element) { var filter = /^[1-9][0-9]{6,15}$/; var phn_filter = /^(\d)(?!\1+$)\d{6,15}$/; if (filter.test(value)) { if(phn_filter.test(value)) { return true; } return false; } },"Please enter valid number." ); $('input[name="phonenumber"], input[name="phone_number"]').keypress(function (e) { if ($(this).val().length > 14) { return false; } else { e = (e) ? e : window.event; var charCode = (e.which) ? e.which : e.keyCode; if (charCode > 31 && (charCode < 48 || charCode > 57)) { return false; } return true; // $(this).val($(this).val().replace(/[^0-9\.]/g,'')) //this.value = this.value.replace(/[^0-9\.]/g,''); } }); $("input[name='fullname']").keypress(function (event) { var regex = new RegExp("^[a-zA-Z ]+$"); var key = String.fromCharCode(!event.charCode ? event.which : event.charCode); if (!regex.test(key)) { event.preventDefault(); return false; } }); var Phones = document.querySelectorAll('input[name="phonenumber"]'); Phones.forEach((phone) => { fncountryCode(phone); }); function fncountryCode(data) { window.intlTelInput(data,{ utilsScript: "https://cdnjs.cloudflare.com/ajax/libs/intl-tel-input/17.0.3/js/utils.min.js", defaultCountry: "auto", hiddenInput: "full_number", geoIpLookup: function(callback) { var countryCode = country_code; var country_code1 = "us"; var country_code1; $.get('https://www.cloudflare.com/cdn-cgi/trace', function(data) { data = data.trim().split('\n').reduce(function(obj, pair) { pair = pair.split('='); return obj[pair[0]] = pair[1], obj; }, {}); country_code1 = data.loc; ip = data.ip; $('.countryName').val(country_code1); $('.ipAddress').val(ip); if(country_code1 == 'IR' || country_code1 == 'IL' || country_code1 == 'EG' || country_code1 == 'IQ' || country_code1 == 'LB' || country_code1 == 'TR' || country_code1 == 'PS' || country_code1 == 'DZ' || country_code1 == 'SY' || country_code1 == 'YE' || country_code1 == 'MA' || country_code1 == 'JO' ||country_code1 == 'BH' || country_code1 == 'BHR' || country_code1 == 'JO' ||country_code1 == 'QA' || country_code1 == 'KW' || country_code1 == 'AE' || country_code1 == 'OM' || country_code1 == 'SA' || country_code1 == 'SD' ) { $('.tpbr_inr').addClass('middle_east'); } if (country_code1 == 'ZA' || country_code1 == 'MA' || country_code1 == 'NG' || country_code1 == 'ZM' || country_code1 == 'KE' || country_code1 == 'EG' || country_code1 == 'LB' || country_code1 == 'JO' || country_code1 == 'LS' || country_code1 == 'SZ' || country_code1 == 'BW' || country_code1 == 'NA' || country_code1 == 'AO' || country_code1 == 'CM' || country_code1 == 'GQ' || country_code1 == 'GA' || country_code1 == 'CG' || country_code1 == 'TD' || country_code1 == 'CF' || country_code1 == 'CD' || country_code1 == 'ST' || country_code1 == 'BI' || country_code1 == 'ER' || country_code1 == 'MG' || country_code1 == 'RE' || country_code1 == 'SO' || country_code1 == 'KM' || country_code1 == 'ET' || country_code1 == 'RW' || country_code1 == 'DJ' || country_code1 == 'YT' || country_code1 == 'SC' || country_code1 == 'UG' || country_code1 == 'MZ' || country_code1 == 'MW' || country_code1 == 'TZ' || country_code1 == 'ZW' || country_code1 == 'BJ' || country_code1 == 'LR' || country_code1 == 'SH' || country_code1 == 'BF' || country_code1 == 'GM' || country_code1 == 'ML' || country_code1 == 'GH' || country_code1 == 'MR' || country_code1 == 'SN' || country_code1 == 'CV' || country_code1 == 'CI' || country_code1 == 'GN' || country_code1 == 'NE' || country_code1 == 'SL' || country_code1 == 'GW' || country_code1 == 'TG' || country_code1 == 'DZ' || country_code1 == 'LY' ||country_code1 == 'TN' || country_code1 == 'EH' || country_code1 == 'SD' || country_code1 == 'IN' ) { $('.afrcn_cntry').show(); } callback(country_code1); }) }, initialCountry: "auto", separateDialCode: true, autoHideDialCode: false }); } /** Common Exist Popup Start */ const CookieService = { setCookieData(name, value, days) { let expires = ''; if (days) { const date = new Date(); date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); expires = '; expires=' + date.toUTCString(); } document.cookie = name + '=' + (value || '') + expires + ';'; }, getCookieData(name) { const cookies = document.cookie.split(';'); for (const cookie of cookies) { if (cookie.indexOf(name + '=') > -1) { return cookie.split('=')[1]; } } return null; } }; const mouseEvent = e => { const shouldShowExitIntent = !e.toElement && !e.relatedTarget && e.clientY < 10; if (shouldShowExitIntent) { document.removeEventListener('mouseout', mouseEvent); setTimeout(function() { $('#leav_ppup').modal('show'); }, 1000); //CookieService.setCookieData('exitIntentShown', true); } }; /* if (!CookieService.getCookieData('exitIntentShown')) { } setTimeout(() => { }, 1000);*/ document.addEventListener('mouseout', mouseEvent); /** Common Exit Popup End */ $('#entr_ppup').on('click', function() { $(this).modal('hide'); }); }); /*refferal_url*/ var pageURL = $(location).attr("href"); if (pageURL.indexOf("rf_url") > -1) { var rf_url_data = pageURL.split('?rf_url').pop(); rf_url_data = rf_url_data.replace("=https", "https"); var rf_url_data1 = rf_url_data.replace(/&utm_source/, "?utm_source"); $('.refferal_page_check').val(rf_url_data1); // Delegate click handler for all tags $(document).on("click", "a", function(event) { var class_1 = $(this).hasClass('navigation__link'); var has_toggle_attr = $(this).attr('data-bs-toggle') !== undefined; if (!class_1 && !has_toggle_attr) { event.preventDefault(); // Stop default navigation var is_utm_source = $(this).attr('href') || ""; var new_href = is_utm_source + '?rf_url=' + rf_url_data; // Update href and manually trigger navigation $(this).attr("href", new_href); window.location.href = new_href; } }); } else if (pageURL.indexOf("utm_source") > -1) { $('.refferal_page_check').val(pageURL); $(document).on("click", "a", function(event) { var class_1 = $(this).hasClass('navigation__link'); var has_toggle_attr = $(this).attr('data-bs-toggle') !== undefined; if (!class_1 && !has_toggle_attr) { event.preventDefault(); // Stop default navigation var is_utm_source = $(this).attr('href') || ""; if (is_utm_source.indexOf("utm_source") === -1) { pageURL = pageURL.replace("?", "&"); var new_href1 = is_utm_source + '?rf_url=' + pageURL; // Update href and manually trigger navigation $(this).attr("href", new_href1); window.location.href = new_href1; } } }); } $.fn.hasAttr = function(name) { return this.attr(name) !== undefined; };