Title: Internal Error
Last modified: February 20, 2023

---

# Internal Error

 *  Resolved [khristyl](https://wordpress.org/support/users/khristyl/)
 * (@khristyl)
 * [3 years, 3 months ago](https://wordpress.org/support/topic/internal-error-31/)
 * Im checking the list of doctors, receptionist, and services, but it gives me 
   internal links. Hopefully you will fix the issue. I love your plugin in, im looking
   forward to puchase pro, if it work well all the functions
 * The page I need help with: _[[log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fwordpress.org%2Fsupport%2Ftopic%2Finternal-error-31%2F%3Foutput_format%3Dmd&locale=en_US)
   to see the link]_

Viewing 8 replies - 1 through 8 (of 8 total)

 *  Plugin Author [Iqonic Design](https://wordpress.org/support/users/iqonicdesign/)
 * (@iqonicdesign)
 * [3 years, 3 months ago](https://wordpress.org/support/topic/internal-error-31/#post-16508544)
 * Hello,
 * Please check the php version. The stable php version for kivicare is php 8.0.
 * Regards.
 *  [Mohamed Saad](https://wordpress.org/support/users/arabianmido/)
 * (@arabianmido)
 * [3 years, 3 months ago](https://wordpress.org/support/topic/internal-error-31/#post-16521356)
 * Same Issue with me
   php Version is 8.0
 * **Fatal error**: Uncaught Error: Call to undefined function App\baseClasses\kcGetUserDefaultPermission()
    -  This reply was modified 3 years, 3 months ago by [Mohamed Saad](https://wordpress.org/support/users/arabianmido/).
 *  [Mohamed Saad](https://wordpress.org/support/users/arabianmido/)
 * (@arabianmido)
 * [3 years, 3 months ago](https://wordpress.org/support/topic/internal-error-31/#post-16521376)
 * I erased all this code and its working now
 *     ```wp-block-code
                   if (!get_option(KIVI_CARE_PREFIX . 'new-permissions-migrate-8')) {
   
                       $editable_roles = get_editable_roles();
   
                       if(!empty($editable_roles) && is_array($editable_roles)){
   
                           $editable_roles = array_keys($editable_roles);
                           $containsSearch = count(array_intersect($allRole, $editable_roles)) === count($allRole);
   
                           if($containsSearch){
                               foreach ($allRole as $role) {
                                   $subscriber = get_role($role);
   
                                   $subscriber->add_cap('upload_files',kcGetUserDefaultPermission($subscriber,'upload_files',true));
                                   $subscriber->add_cap('edit_published_pages',kcGetUserDefaultPermission($subscriber,'edit_published_pages',true));
                                   $subscriber->add_cap(KIVI_CARE_PREFIX . 'home_page', kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'home_page',$role === $this->getPatientRole()));
                                   $subscriber->add_cap(KIVI_CARE_PREFIX . 'patient_report',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'patient_report',true));
                                   $subscriber->add_cap(KIVI_CARE_PREFIX . 'patient_report_add',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'patient_report_add',$role !== $this->getPatientRole()));
                                   $subscriber->add_cap(KIVI_CARE_PREFIX . 'patient_report_view',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'patient_report_view',true));
                                   $subscriber->add_cap(KIVI_CARE_PREFIX . 'patient_report_delete' ,kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'patient_report_delete', $role !== $this->getPatientRole()));
                                   $subscriber->add_cap(KIVI_CARE_PREFIX . 'patient_clinic', kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'patient_clinic', $role === $this->getPatientRole()));
                                   $subscriber->add_cap(KIVI_CARE_PREFIX . 'appointment_export',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'appointment_export',true));
                                   $subscriber->add_cap(KIVI_CARE_PREFIX . 'patient_encounter_export',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'patient_encounter_export',true));
                                   $subscriber->add_cap(KIVI_CARE_PREFIX . 'prescription_export',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'prescription_export',true));
                                   $subscriber->add_cap(KIVI_CARE_PREFIX . 'patient_bill_export',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'patient_bill_export',true));
   
   
                                   if(in_array($role,['administrator', $this->getClinicAdminRole()])){
                                       if($role === 'administrator'){
                                           $subscriber->add_cap(KIVI_CARE_PREFIX . 'clinic_export',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'clinic_export',true));
                                       }
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'receptionist_export',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'receptionist_export',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'custom_field_export',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'custom_field_export',true));
                                   }
   
                                   if(in_array($role,['administrator', $this->getClinicAdminRole(),$this->getReceptionistRole()])){
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'doctor_export',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'doctor_export',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'dashboard_total_patient',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'dashboard_total_patient',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'dashboard_total_doctor',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'dashboard_total_doctor',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'dashboard_total_appointment',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'dashboard_total_appointment',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'dashboard_total_revenue',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'dashboard_total_revenue',true));
                                   }
   
                                   if($role === $this->getDoctorRole()){
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'dashboard_total_patient',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'dashboard_total_patient',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'dashboard_total_appointment',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'dashboard_total_appointment',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'dashboard_total_today_appointment',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'dashboard_total_today_appointment',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'dashboard_total_service',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'dashboard_total_service',true));
                                   }
   
                                   if($role !== $this->getPatientRole()){
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'doctor_session_add',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'doctor_session_add',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'doctor_session_edit',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'doctor_session_edit',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'doctor_session_delete',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'doctor_session_delete',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'doctor_session_list',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'doctor_session_list',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'doctor_session_export',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'doctor_session_export',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'clinic_schedule_add',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'clinic_schedule_add',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'clinic_schedule_edit',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'clinic_schedule_edit',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'clinic_schedule_delete',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'clinic_schedule_delete',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'patient_export',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'patient_export',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'service_export',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'service_export',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'clinic_schedule_export',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'clinic_schedule_export',true));
                                       $subscriber->add_cap(KIVI_CARE_PREFIX . 'static_data_export',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'static_data_export',true));
                                   }
   
                                   $subscriber->add_cap(KIVI_CARE_PREFIX . 'static_data_add',kcGetUserDefaultPermission($subscriber,KIVI_CARE_PREFIX .'static_data_add',$role !== $this->getPatientRole()));
   
                               }
                               update_option(KIVI_CARE_PREFIX . 'new-permissions-migrate-8', 'yes');
                           }
                       }
                   }
       ```
   
 *  [Dr md shahriar kabir](https://wordpress.org/support/users/shahriar83/)
 * (@shahriar83)
 * [3 years, 3 months ago](https://wordpress.org/support/topic/internal-error-31/#post-16522130)
 * I rollback to previous version due to fatal error with admin login. Say, “there
   has been a critical error on this website. please check your site admin email
   inbox for instructions.”
 *  Thread Starter [khristyl](https://wordpress.org/support/users/khristyl/)
 * (@khristyl)
 * [3 years, 3 months ago](https://wordpress.org/support/topic/internal-error-31/#post-16522676)
 * update .htaccess file with the default code and replaced core WordPress files.
   
   Or ask help for your hosting server
 *  Thread Starter [khristyl](https://wordpress.org/support/users/khristyl/)
 * (@khristyl)
 * [3 years, 3 months ago](https://wordpress.org/support/topic/internal-error-31/#post-16522680)
 * resolved
    -  This reply was modified 3 years, 3 months ago by [khristyl](https://wordpress.org/support/users/khristyl/).
 *  Plugin Author [Iqonic Design](https://wordpress.org/support/users/iqonicdesign/)
 * (@iqonicdesign)
 * [3 years, 3 months ago](https://wordpress.org/support/topic/internal-error-31/#post-16523744)
 * Hello,
 * Please update the plugin to the latest version 3.1.0. If you still face any issues
   after that please let us know.
 * Thanks & Regards
 *  [Mohamed Saad](https://wordpress.org/support/users/arabianmido/)
 * (@arabianmido)
 * [3 years, 3 months ago](https://wordpress.org/support/topic/internal-error-31/#post-16524161)
 * What update you are talking about?
 * Off Course its the latest version its just installed

Viewing 8 replies - 1 through 8 (of 8 total)

The topic ‘Internal Error’ is closed to new replies.

 * ![](https://ps.w.org/kivicare-clinic-management-system/assets/icon-256×256.png?
   rev=2404604)
 * [KiviCare - Clinic & Patient Management System (EHR)](https://wordpress.org/plugins/kivicare-clinic-management-system/)
 * [Frequently Asked Questions](https://wordpress.org/plugins/kivicare-clinic-management-system/#faq)
 * [Support Threads](https://wordpress.org/support/plugin/kivicare-clinic-management-system/)
 * [Active Topics](https://wordpress.org/support/plugin/kivicare-clinic-management-system/active/)
 * [Unresolved Topics](https://wordpress.org/support/plugin/kivicare-clinic-management-system/unresolved/)
 * [Reviews](https://wordpress.org/support/plugin/kivicare-clinic-management-system/reviews/)

## Tags

 * [resolve](https://wordpress.org/support/topic-tag/resolve/)

 * 8 replies
 * 4 participants
 * Last reply from: [Mohamed Saad](https://wordpress.org/support/users/arabianmido/)
 * Last activity: [3 years, 3 months ago](https://wordpress.org/support/topic/internal-error-31/#post-16524161)
 * Status: resolved